/**
   @license
   ----
   tiff.js: https://github.com/seikichi/tiff.js

   Copyright (C) 2013 seikichi[at]kmc.gr.jp

   This software is provided 'as-is', without any express or implied
   warranty. In no event will the authors be held liable for any damages
   arising from the use of this software.

   Permission is granted to anyone to use this software for any purpose,
   including commercial applications, and to alter it and redistribute it
   freely, subject to the following restrictions:

   1. The origin of this software must not be misrepresented; you must not
   claim that you wrote the original software. If you use this software
   in a product, an acknowledgment in the product documentation would be
   appreciated but is not required.

   2. Altered source versions must be plainly marked as such, and must not be
   misrepresented as being the original software.

   3. This notice may not be removed or altered from any source
   distribution.
   ----
   zlib: http://www.zlib.net/

   Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler

   This software is provided 'as-is', without any express or implied
   warranty.  In no event will the authors be held liable for any damages
   arising from the use of this software.

   Permission is granted to anyone to use this software for any purpose,
   including commercial applications, and to alter it and redistribute it
   freely, subject to the following restrictions:

   1. The origin of this software must not be misrepresented; you must not
   claim that you wrote the original software. If you use this software
   in a product, an acknowledgment in the product documentation would be
   appreciated but is not required.
   2. Altered source versions must be plainly marked as such, and must not be
   misrepresented as being the original software.
   3. This notice may not be removed or altered from any source distribution.

   Jean-loup Gailly        Mark Adler
   jloup@gzip.org          madler@alumni.caltech.edu


   The data format used by the zlib library is described by RFCs (Request for
   Comments) 1950 to 1952 in the files http://tools.ietf.org/html/rfc1950
   (zlib format), rfc1951 (deflate format) and rfc1952 (gzip format).
   ----
   LibTIFF: http://www.remotesensing.org/libtiff/

   Copyright (c) 1988-1997 Sam Leffler
   Copyright (c) 1991-1997 Silicon Graphics, Inc.

   Permission to use, copy, modify, distribute, and sell this software and 
   its documentation for any purpose is hereby granted without fee, provided
   that (i) the above copyright notices and this permission notice appear in
   all copies of the software and related documentation, and (ii) the names of
   Sam Leffler and Silicon Graphics may not be used in any advertising or
   publicity relating to the software without the specific, prior written
   permission of Sam Leffler and Silicon Graphics.

   THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
   EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
   WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  

   IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
   ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
   OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
   WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
   LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
   OF THIS SOFTWARE.
*/
var loadModule=(function(options){var Module={};if("TOTAL_MEMORY"in options){Module["TOTAL_MEMORY"]=options["TOTAL_MEMORY"]}var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=function print(x){process["stdout"].write(x+"\n")};if(!Module["printErr"])Module["printErr"]=function printErr(x){process["stderr"].write(x+"\n")};var nodeFS=require("fs");var nodePath=require("path");Module["read"]=function read(filename,binary){filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var 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}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.log(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(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 Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var __THREW__=0;var ABORT=false;var EXITSTATUS=0;var undef=0;var tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat;var tempI64,tempI64b;var tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var globalScope=this;function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){funcstr+="var stack = "+JSsource["stackSave"].body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if(type==="number")continue;var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"="+convertCode.returnValue+";"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>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)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for setValue: "+type)}return null}Module["getValue"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;Module["ALLOC_STACK"]=ALLOC_STACK;Module["ALLOC_STATIC"]=ALLOC_STATIC;Module["ALLOC_DYNAMIC"]=ALLOC_DYNAMIC;Module["ALLOC_NONE"]=ALLOC_NONE;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=[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[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<size){var curr=slab[i];if(typeof curr==="function"){curr=Runtime.getFunctionIndex(curr)}type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+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 Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){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)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=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}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=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}Module["lengthBytesUTF8"]=lengthBytesUTF8;function UTF16ToString(ptr){var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}Module["UTF16ToString"]=UTF16ToString;function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr>>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}Module["stringToUTF16"]=stringToUTF16;function lengthBytesUTF16(str){return str.length*2}Module["lengthBytesUTF16"]=lengthBytesUTF16;function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}Module["UTF32ToString"]=UTF32ToString;function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}Module["stringToUTF32"]=stringToUTF32;function lengthBytesUTF32(str){var len=0;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343)++i;len+=4}return len}Module["lengthBytesUTF32"]=lengthBytesUTF32;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}var i=3;var basicTypes={"v":"void","b":"bool","c":"char","s":"short","i":"int","l":"long","f":"float","d":"double","w":"wchar_t","a":"signed char","h":"unsigned char","t":"unsigned short","j":"unsigned int","m":"unsigned long","x":"long long","y":"unsigned long long","z":"..."};var subs=[];var first=true;function dump(x){if(x)Module.print(x);Module.print(func);var pre="";for(var a=0;a<i;a++)pre+=" ";Module.print(pre+"^")}function parseNested(){i++;if(func[i]==="K")i++;var parts=[];while(func[i]!=="E"){if(func[i]==="S"){i++;var next=func.indexOf("_",i);var num=func.substring(i,next)||0;parts.push(subs[num]||"?");i=next+1;continue}if(func[i]==="C"){parts.push(parts[parts.length-1]);i+=2;continue}var size=parseInt(func.substr(i));var pre=size.toString().length;if(!size||!pre){i--;break}var curr=func.substr(i+pre,size);parts.push(curr);subs.push(curr);i+=pre+size}i++;return parts}function parse(rawList,limit,allowVoid){limit=limit||Infinity;var ret="",list=[];function flushList(){return"("+list.join(", ")+")"}var name;if(func[i]==="N"){name=parseNested().join("::");limit--;if(limit===0)return rawList?[name]:name}else{if(func[i]==="K"||first&&func[i]==="L")i++;var size=parseInt(func.substr(i));if(size){var pre=size.toString().length;name=func.substr(i+pre,size);i+=pre+size}}first=false;if(func[i]==="I"){i++;var iList=parse(true);var iRet=parse(true,1,true);ret+=iRet[0]+" "+name+"<"+iList.join(", ")+">"}else{ret=name}paramLoop:while(i<func.length&&limit-->0){var c=func[i++];if(c in basicTypes){list.push(basicTypes[c])}else{switch(c){case"P":list.push(parse(true,1,true)[0]+"*");break;case"R":list.push(parse(true,1,true)[0]+"&");break;case"L":{i++;var end=func.indexOf("E",i);var size=end-i;list.push(func.substr(i,size));i+=size+2;break};case"A":{var size=parseInt(func.substr(i));i+=size.toString().length;if(func[i]!=="_")throw"?";i++;list.push(parse(true,1,true)[0]+" ["+size+"]");break};case"E":break paramLoop;default:ret+="?"+c;break paramLoop}}}if(!allowVoid&&list.length===1&&list[0]==="void")list=[];if(rawList){if(ret){list.push(ret+"?")}return list}else{return ret+flushList()}}var parsed=func;try{if(func=="Object._main"||func=="_main"){return"main()"}if(typeof func==="number")func=Pointer_stringify(func);if(func[0]!=="_")return func;if(func[1]!=="_")return func;if(func[2]!=="Z")return func;switch(func[3]){case"n":return"operator new()";case"d":return"operator delete()"}parsed=parse()}catch(e){parsed+="?"}if(parsed.indexOf("?")>=0&&!hasLibcxxabi){Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with  -s DEMANGLE_SUPPORT=1  to link in libcxxabi demangling")}return parsed}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(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(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function enlargeMemory(){var OLD_TOTAL_MEMORY=TOTAL_MEMORY;var LIMIT=Math.pow(2,31);if(DYNAMICTOP>=LIMIT)return false;while(TOTAL_MEMORY<=DYNAMICTOP){if(TOTAL_MEMORY<LIMIT/2){TOTAL_MEMORY=alignMemoryPage(2*TOTAL_MEMORY)}else{var last=TOTAL_MEMORY;TOTAL_MEMORY=alignMemoryPage((3*TOTAL_MEMORY+LIMIT)/4);if(TOTAL_MEMORY<=last)return false}}TOTAL_MEMORY=Math.max(TOTAL_MEMORY,16*1024*1024);if(TOTAL_MEMORY>=LIMIT)return false;try{if(ArrayBuffer.transfer){buffer=ArrayBuffer.transfer(buffer,TOTAL_MEMORY)}else{var oldHEAP8=HEAP8;buffer=new ArrayBuffer(TOTAL_MEMORY)}}catch(e){return false}var success=_emscripten_replace_memory(buffer);if(!success)return false;Module["buffer"]=buffer;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);if(!ArrayBuffer.transfer){HEAP8.set(oldHEAP8)}return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}totalMemory=Math.max(totalMemory,16*1024*1024);if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&!!(new Int32Array(1))["subarray"]&&!!(new Int32Array(1))["set"],"JS engine does not provide full typed array support");var buffer;buffer=new ArrayBuffer(TOTAL_MEMORY);HEAP8=new Int8Array(buffer);HEAP16=new Int16Array(buffer);HEAP32=new Int32Array(buffer);HEAPU8=new Uint8Array(buffer);HEAPU16=new Uint16Array(buffer);HEAPU32=new Uint32Array(buffer);HEAPF32=new Float32Array(buffer);HEAPF64=new Float64Array(buffer);HEAP32[0]=255;assert(HEAPU8[0]===255&&HEAPU8[3]===0,"Typed arrays 2 must be run on a little-endian system");Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.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(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){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)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i<array.length){var chr=array[i];HEAP8[buffer+i>>0]=chr;i=i+1}}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i<array.length;i++){HEAP8[buffer++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<<bits-1)+value:Math.pow(2,bits)+value}function reSign(value,bits,ignore){if(value<=0){return value}var half=bits<=32?Math.abs(1<<bits-1):Math.pow(2,bits-1);if(value>=half&&(bits<=32||value>half)){value=-2*half+value}return value}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+164992;__ATINIT__.push();allocate([0,0,0,0,0,0,240,63,239,97,72,177,80,49,246,63,202,111,77,145,174,231,244,63,170,17,108,239,98,208,242,63,0,0,0,0,0,0,240,63,59,191,167,192,105,36,233,63,187,32,199,123,122,81,225,63,93,171,114,222,85,168,209,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,153,0,0,0,84,8,0,0,1,0,0,0,0,0,0,0,56,0,0,0,116,0,0,0,154,130,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,82,251,1,0,0,0,0,0,157,130,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,95,251,1,0,0,0,0,0,34,136,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,103,251,1,0,0,0,0,0,36,136,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,119,251,1,0,0,0,0,0,39,136,0,0,255,255,255,255,3,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,65,0,1,1,139,251,1,0,0,0,0,0,40,136,0,0,255,255,255,255,7,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,1,1,155,251,1,0,0,0,0,0,0,144,0,0,4,0,4,0,7,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,65,0,1,0,184,251,1,0,0,0,0,0,3,144,0,0,20,0,20,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,196,251,1,0,0,0,0,0,4,144,0,0,20,0,20,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,213,251,1,0,0,0,0,0,1,145,0,0,4,0,4,0,7,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,65,0,1,0,231,251,1,0,0,0,0,0,2,145,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,255,251,1,0,0,0,0,0,1,146,0,0,1,0,1,0,10,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,22,252,1,0,0,0,0,0,2,146,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,40,252,1,0,0,0,0,0,3,146,0,0,1,0,1,0,10,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,54,252,1,0,0,0,0,0,4,146,0,0,1,0,1,0,10,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,70,252,1,0,0,0,0,0,5,146,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,88,252,1,0,0,0,0,0,6,146,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,105,252,1,0,0,0,0,0,7,146,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,121,252,1,0,0,0,0,0,8,146,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,134,252,1,0,0,0,0,0,9,146,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,146,252,1,0,0,0,0,0,10,146,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,152,252,1,0,0,0,0,0,20,146,0,0,255,255,255,255,3,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,65,0,1,1,164,252,1,0,0,0,0,0,124,146,0,0,255,255,255,255,7,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,1,1,176,252,1,0,0,0,0,0,134,146,0,0,255,255,255,255,7,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,1,1,186,252,1,0,0,0,0,0,144,146,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,198,252,1,0,0,0,0,0,145,146,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,209,252,1,0,0,0,0,0,146,146,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,228,252,1,0,0,0,0,0,0,160,0,0,4,0,4,0,7,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,65,0,1,0,248,252,1,0,0,0,0,0,1,160,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,8,253,1,0,0,0,0,0,2,160,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,65,0,1,0,19,253,1,0,0,0,0,0,3,160,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,65,0,1,0,35,253,1,0,0,0,0,0,4,160,0,0,13,0,13,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,51,253,1,0,0,0,0,0,11,162,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,68,253,1,0,0,0,0,0,12,162,0,0,255,255,255,255,7,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,1,1,80,253,1,0,0,0,0,0,14,162,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,105,253,1,0,0,0,0,0,15,162,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,127,253,1,0,0,0,0,0,16,162,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,149,253,1,0,0,0,0,0,20,162,0,0,2,0,2,0,3,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,65,0,1,0,174,253,1,0,0,0,0,0,21,162,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,190,253,1,0,0,0,0,0,23,162,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,204,253,1,0,0,0,0,0,0,163,0,0,1,0,1,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,65,0,1,0,218,253,1,0,0,0,0,0,1,163,0,0,1,0,1,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,65,0,1,0,229,253,1,0,0,0,0,0,2,163,0,0,255,255,255,255,7,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,1,1,239,253,1,0,0,0,0,0,1,164,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,250,253,1,0,0,0,0,0,2,164,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,9,254,1,0,0,0,0,0,3,164,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,22,254,1,0,0,0,0,0,4,164,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,35,254,1,0,0,0,0,0,5,164,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,52,254,1,0,0,0,0,0,6,164,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,74,254,1,0,0,0,0,0,7,164,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,1,0,91,254,1,0,0,0,0,0,8,164,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,103,254,1,0,0,0,0,0,9,164,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,112,254,1,0,0,0,0,0,10,164,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,123,254,1,0,0,0,0,0,11,164,0,0,255,255,255,255,7,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,1,1,133,254,1,0,0,0,0,0,12,164,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,158,254,1,0,0,0,0,0,32,164,0,0,33,0,33,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,179,254,1,0,0,0,0,0,254,0,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,5,0,1,0,193,254,1,0,0,0,0,0,255,0,0,0,1,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,1,0,205,254,1,0,0,0,0,0,0,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,0,0,0,220,254,1,0,0,0,0,0,1,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,1,0,1,0,211,8,2,0,0,0,0,0,2,1,0,0,255,255,255,255,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,6,0,0,0,231,254,1,0,0,0,0,0,3,1,0,0,255,255,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,7,0,0,0,99,20,2,0,0,0,0,0,6,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,8,0,0,0,245,254,1,0,0,0,0,0,7,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,9,0,1,0,15,255,1,0,0,0,0,0,8,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,29,255,1,0,0,0,0,0,9,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,39,255,1,0,0,0,0,0,10,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,50,255,1,0,0,0,0,0,13,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,60,255,1,0,0,0,0,0,14,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,73,255,1,0,0,0,0,0,15,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,90,255,1,0,0,0,0,0,16,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,95,255,1,0,0,0,0,0,17,1,0,0,255,255,255,255,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,24,9,2,0,0,0,0,0,18,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,15,0,0,0,101,255,1,0,0,0,0,0,21,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,16,0,0,0,113,255,1,0,0,0,0,0,22,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,17,0,0,0,129,255,1,0,0,0,0,0,23,1,0,0,255,255,255,255,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,191,10,2,0,0,0,0,0,24,1,0,0,254,255,255,255,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,18,0,1,0,142,255,1,0,0,0,0,0,25,1,0,0,254,255,255,255,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,19,0,1,0,157,255,1,0,0,0,0,0,26,1,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,3,0,1,0,172,255,1,0,0,0,0,0,27,1,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,3,0,1,0,184,255,1,0,0,0,0,0,28,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,20,0,0,0,196,255,1,0,0,0,0,0,29,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,216,255,1,0,0,0,0,0,30,1,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,4,0,1,0,225,255,1,0,0,0,0,0,31,1,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,4,0,1,0,235,255,1,0,0,0,0,0,32,1,0,0,255,255,255,255,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,245,255,1,0,0,0,0,0,33,1,0,0,255,255,255,255,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,0,0,0,0,0,34,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,16,0,2,0,0,0,0,0,35,1,0,0,255,255,255,255,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,33,0,2,0,0,0,0,0,40,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,22,0,1,0,51,0,2,0,0,0,0,0,41,1,0,0,2,0,2,0,3,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,23,0,1,0,66,0,2,0,0,0,0,0,44,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,77,0,2,0,0,0,0,0,45,1,0,0,255,255,255,255,3,0,0,0,0,0,0,0,51,0,0,0,0,0,0,0,44,0,1,0,95,0,2,0,0,0,0,0,49,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,112,0,2,0,0,0,0,0,50,1,0,0,20,0,20,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,121,0,2,0,0,0,0,0,59,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,130,0,2,0,0,0,0,0,60,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,137,0,2,0,0,0,0,0,62,1,0,0,2,0,2,0,5,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,1,0,150,0,2,0,0,0,0,0,63,1,0,0,6,0,6,0,5,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,1,0,161,0,2,0,0,0,0,0,64,1,0,0,255,255,255,255,3,0,0,0,0,0,0,0,51,0,0,0,0,0,0,0,26,0,1,0,183,0,2,0,0,0,0,0,65,1,0,0,2,0,2,0,3,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,37,0,1,0,192,0,2,0,0,0,0,0,66,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,0,0,0,206,0,2,0,0,0,0,0,67,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,2,0,0,0,216,0,2,0,0,0,0,0,68,1,0,0,255,255,1,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,12,9,2,0,0,0,0,0,69,1,0,0,255,255,1,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,227,0,2,0,0,0,0,0,74,1,0,0,255,255,255,255,18,0,0,0,0,0,0,0,38,0,0,0,0,0,0,0,49,0,1,1,242,0,2,0,84,0,0,0,76,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,0,0,59,20,2,0,0,0,0,0,77,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,27,0,0,0,0,0,0,0,46,0,1,1,249,0,2,0,0,0,0,0,78,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,1,0,2,1,2,0,0,0,0,0,80,1,0,0,2,0,2,0,3,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,65,0,0,0,15,1,2,0,0,0,0,0,81,1,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,24,1,2,0,0,0,0,0,82,1,0,0,255,255,255,255,3,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,31,0,0,1,38,1,2,0,0,0,0,0,83,1,0,0,255,255,255,255,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,32,0,0,0,51,1,2,0,0,0,0,0,84,1,0,0,254,255,255,255,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,33,0,1,0,64,1,2,0,0,0,0,0,85,1,0,0,254,255,255,255,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,34,0,1,0,80,1,2,0,0,0,0,0,87,1,0,0,255,255,253,255,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,1,96,1,2,0,0,0,0,0,88,1,0,0,1,0,1,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,105,1,2,0,0,0,0,0,88,1,0,0,1,0,1,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,105,1,2,0,0,0,0,0,89,1,0,0,1,0,1,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,120,1,2,0,0,0,0,0,17,2,0,0,3,0,3,0,5,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,0,0,135,1,2,0,0,0,0,0,18,2,0,0,2,0,2,0,3,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,39,0,0,0,153,1,2,0,0,0,0,0,19,2,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,40,0,0,0,170,1,2,0,0,0,0,0,20,2,0,0,6,0,6,0,5,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,41,0,1,0,187,1,2,0,0,0,0,0,188,2,0,0,253,255,253,255,1,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,65,0,0,1,207,1,2,0,0,0,0,0,227,128,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,31,0,0,0,217,1,2,0,0,0,0,0,228,128,0,0,254,255,255,255,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,32,0,0,0,226,1,2,0,0,0,0,0,229,128,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,35,0,0,0,235,1,2,0,0,0,0,0,230,128,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,36,0,0,0,246,1,2,0,0,0,0,0,20,130,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,65,0,1,0,0,2,2,0,0,0,0,0,21,130,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,65,0,1,0,15,2,2,0,0,0,0,0,22,130,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,31,2,2,0,0,0,0,0,23,130,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,45,2,2,0,0,0,0,0,24,130,0,0,1,0,1,0,11,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,65,0,1,0,62,2,2,0,0,0,0,0,25,130,0,0,16,0,16,0,11,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,1,0,83,2,2,0,0,0,0,0,26,130,0,0,16,0,16,0,11,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,1,0,103,2,2,0,0,0,0,0,141,130,0,0,2,0,2,0,3,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,65,0,0,0,123,2,2,0,0,0,0,0,142,130,0,0,4,0,4,0,1,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,65,0,0,0,239,253,1,0,0,0,0,0,152,130,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,143,2,2,0,0,0,0,0,187,131,0,0,253,255,253,255,4,0,0,0,0,0,0,0,44,0,0,0,0,0,0,0,65,0,0,1,153,2,2,0,0,0,0,0,73,134,0,0,253,255,253,255,1,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,65,0,0,1,166,2,2,0,0,0,0,0,105,135,0,0,1,0,1,0,18,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,65,0,0,0,176,2,2,0,100,0,0,0,115,135,0,0,253,255,253,255,7,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,65,0,0,1,190,2,2,0,0,0,0,0,37,136,0,0,1,0,1,0,18,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,65,0,0,0,202,2,2,0,0,0,0,0,92,136,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,65,0,1,0,215,2,2,0,0,0,0,0,93,136,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,65,0,1,0,229,2,2,0,0,0,0,0,94,136,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,65,0,1,0,243,2,2,0,0,0,0,0,95,136,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,65,0,1,0,255,2,2,0,0,0,0,0,63,146,0,0,1,0,1,0,12,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,0,0,6,3,2,0,0,0,0,0,5,160,0,0,1,0,1,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,14,3,2,0,0,0,0,0,18,198,0,0,4,0,4,0,1,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,65,0,0,0,40,3,2,0,0,0,0,0,19,198,0,0,4,0,4,0,1,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,65,0,0,0,51,3,2,0,0,0,0,0,20,198,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,70,3,2,0,0,0,0,0,21,198,0,0,255,255,255,255,1,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,1,1,88,3,2,0,0,0,0,0,22,198,0,0,255,255,255,255,1,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,0,1,109,3,2,0,0,0,0,0,23,198,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,0,0,123,3,2,0,0,0,0,0,24,198,0,0,255,255,255,255,3,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,65,0,0,1,133,3,2,0,0,0,0,0,25,198,0,0,2,0,2,0,3,0,0,0,0,0,0,0,18,0,0,0,0,0,0,0,65,0,0,0,152,3,2,0,0,0,0,0,26,198,0,0,255,255,255,255,5,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,172,3,2,0,0,0,0,0,27,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,183,3,2,0,0,0,0,0,28,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,200,3,2,0,0,0,0,0,29,198,0,0,255,255,255,255,4,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,65,0,0,1,217,3,2,0,0,0,0,0,30,198,0,0,2,0,2,0,5,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,0,0,228,3,2,0,0,0,0,0,92,198,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,0,0,241,3,2,0,0,0,0,0,31,198,0,0,2,0,2,0,5,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,0,0,2,4,2,0,0,0,0,0,32,198,0,0,2,0,2,0,5,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,0,0,20,4,2,0,0,0,0,0,33,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,36,4,2,0,0,0,0,0,34,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,49,4,2,0,0,0,0,0,35,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,62,4,2,0,0,0,0,0,36,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,81,4,2,0,0,0,0,0,37,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,100,4,2,0,0,0,0,0,38,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,117,4,2,0,0,0,0,0,39,198,0,0,255,255,255,255,5,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,134,4,2,0,0,0,0,0,40,198,0,0,255,255,255,255,5,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,148,4,2,0,0,0,0,0,41,198,0,0,2,0,2,0,5,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,0,0,162,4,2,0,0,0,0,0,42,198,0,0,1,0,1,0,10,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,0,0,176,4,2,0,0,0,0,0,43,198,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,0,0,193,4,2,0,0,0,0,0,44,198,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,0,0,207,4,2,0,0,0,0,0,45,198,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,65,0,0,0,225,4,2,0,0,0,0,0,46,198,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,0,0,241,4,2,0,0,0,0,0,47,198,0,0,255,255,255,255,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,65,0,1,0,5,5,2,0,0,0,0,0,48,198,0,0,4,0,4,0,5,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,65,0,0,0,24,5,2,0,0,0,0,0,49,198,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,0,0,33,5,2,0,0,0,0,0,50,198,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,0,0,50,5,2,0,0,0,0,0,51,198,0,0,1,0,1,0,5,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,65,0,0,0,68,5,2,0,0,0,0,0,52,198,0,0,255,255,255,255,1,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,0,1,80,5,2,0,0,0,0,0,53,198,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,0,0,95,5,2,0,0,0,0,0,90,198,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,0,0,111,5,2,0,0,0,0,0,91,198,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,0,0,134,5,2,0,0,0,0,0,93,198,0,0,16,0,16,0,1,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,65,0,0,0,157,5,2,0,0,0,0,0,139,198,0,0,255,255,255,255,1,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,1,1,173,5,2,0,0,0,0,0,140,198,0,0,255,255,255,255,7,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,0,1,193,5,2,0,0,0,0,0,141,198,0,0,4,0,4,0,4,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,65,0,0,0,213,5,2,0,0,0,0,0,142,198,0,0,255,255,255,255,4,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,65,0,0,1,224,5,2,0,0,0,0,0,143,198,0,0,255,255,255,255,7,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,0,1,236,5,2,0,0,0,0,0,144,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,253,5,2,0,0,0,0,0,145,198,0,0,255,255,255,255,7,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,65,0,0,1,20,6,2,0,0,0,0,0,146,198,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,38,6,2,0,0,0,0,0,27,0,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,62,6,2,0,0,0,0,0,90,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,65,0,0,0,72,6,2,0,0,0,0,0,144,1,0,0,1,0,1,0,18,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,65,0,0,0,80,6,2,0,0,0,0,0,145,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,65,0,0,0,100,6,2,0,0,0,0,0,146,1,0,0,1,0,1,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,65,0,0,0,112,6,2,0,0,0,0,0,147,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,65,0,0,0,123,6,2,0,0,0,0,0,148,1,0,0,4,0,4,0,1,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,65,0,0,0,137,6,2,0,0,0,0,0,149,1,0,0,1,0,1,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,65,0,0,0,149,6,2,0,0,0,0,0,177,1,0,0,255,255,255,255,10,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,65,0,0,1,160,6,2,0,0,0,0,0,178,1,0,0,255,255,255,255,3,0,0,0,0,0,0,0,30,0,0,0,0,0,0,0,65,0,0,1,167,6,2,0,0,0,0,0,179,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,65,0,0,0,182,6,2,0,0,0,0,0,47,2,0,0,255,255,255,255,4,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,65,0,0,1,193,6,2,0,0,0,0,0,172,135,0,0,2,0,2,0,4,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,65,0,0,0,208,6,2,0,0,0,0,0,0,0,0,0,139,108,79,64,134,201,196,191,128,72,255,190,126,29,120,191,197,32,240,63,195,100,42,61,211,188,99,61,96,229,80,190,199,75,135,63,0,0,200,66,0,0,200,66,0,0,200,66,255,0,0,0,255,0,0,0,255,0,0,0,0,0,128,63,0,0,128,63,0,0,128,63,154,153,25,64,154,153,25,64,154,153,25,64,0,0,0,0,1,0,0,0,2,0,0,0,135,22,153,62,162,69,22,63,213,120,233,61,0,0,0,0,0,0,0,0,0,0,0,0,101,44,2,0,1,0,0,0,1,0,0,0,106,44,2,0,5,0,0,0,2,0,0,0,110,44,2,0,5,128,0,0,3,0,0,0,119,44,2,0,41,128,0,0,4,0,0,0,131,44,2,0,254,127,0,0,5,0,0,0,136,44,2,0,7,0,0,0,6,0,0,0,141,44,2,0,6,0,0,0,7,0,0,0,156,44,2,0,2,0,0,0,8,0,0,0,166,44,2,0,3,128,0,0,9,0,0,0,178,44,2,0,3,0,0,0,10,0,0,0,192,44,2,0,4,0,0,0,11,0,0,0,206,44,2,0,101,135,0,0,12,0,0,0,215,44,2,0,178,128,0,0,13,0,0,0,223,44,2,0,8,0,0,0,13,0,0,0,236,44,2,0,141,128,0,0,14,0,0,0,245,44,2,0,116,135,0,0,15,0,0,0,252,44,2,0,117,135,0,0,15,0,0,0,5,45,2,0,109,136,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,73,0,0,0,3,50,2,0,0,0,0,0,37,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,73,0,0,0,245,49,2,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,7,0,0,0,15,0,0,0,31,0,0,0,63,0,0,0,127,0,0,0,255,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,168,52,2,0,0,0,0,0,4,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,51,0,0,0,0,0,0,0,0,0,0,0,176,52,2,0,0,0,0,0,70,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,66,0,1,0,188,52,2,0,0,0,0,0,71,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,67,0,1,0,200,52,2,0,0,0,0,0,72,1,0,0,1,0,1,0,4,0,0,0,0,0,0,0,6,0,0,0,6,0,0,0,68,0,1,0,213,52,2,0,0,0,0,0,12,7,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,1,4,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,5,6,0,0,2,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,1,4,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,5,7,0,0,3,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,1,4,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,4,6,0,0,2,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,1,4,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,6,7,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,1,4,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,5,6,0,0,2,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,1,4,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,4,7,0,0,3,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,1,4,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,4,6,0,0,2,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,1,4,0,0,0,0,0,0,3,1,0,0,0,0,0,0,5,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,2,3,0,0,0,0,0,0,3,1,0,0,0,0,0,0,4,3,0,0,1,0,0,0,3,1,0,0,0,0,0,0,12,11,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,5,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,192,4,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,192,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,192,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,11,0,0,0,7,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,64,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,64,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,0,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,0,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,0,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,0,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,11,0,0,64,7,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,128,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,5,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,192,4,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,192,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,192,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,64,8,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,64,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,64,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,0,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,0,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,0,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,0,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,64,9,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,128,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,5,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,192,4,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,192,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,192,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,192,7,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,64,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,64,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,0,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,0,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,0,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,0,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,11,0,0,128,7,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,128,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,5,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,192,4,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,192,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,192,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,192,8,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,64,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,64,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,0,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,0,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,0,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,0,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,192,9,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,128,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,12,11,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,5,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,192,4,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,192,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,192,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,11,0,0,0,7,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,64,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,64,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,0,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,0,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,0,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,0,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,11,0,0,64,7,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,128,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,5,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,192,4,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,192,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,192,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,128,8,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,64,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,64,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,0,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,0,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,0,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,0,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,128,9,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,128,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,5,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,192,4,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,192,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,192,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,0,8,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,64,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,64,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,0,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,0,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,0,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,0,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,11,0,0,128,7,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,128,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,5,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,192,4,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,192,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,192,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,0,9,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,64,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,64,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,64,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,0,0,0,0,0,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,39,0,0,0,7,6,0,0,16,0,0,0,9,8,0,0,64,2,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,55,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,45,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,53,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,192,1,0,0,7,4,0,0,6,0,0,0,7,8,0,0,35,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,51,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,63,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,0,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,43,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,0,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,29,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,33,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,49,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,61,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,47,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,59,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,41,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,0,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,31,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,57,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,9,0,0,0,3,0,0,7,4,0,0,6,0,0,0,7,8,0,0,37,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,64,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,11,12,0,0,0,10,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,7,0,0,20,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,24,0,0,0,7,6,0,0,14,0,0,0,7,7,0,0,28,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,23,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,27,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,40,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,3,0,0,7,4,0,0,6,0,0,0,7,7,0,0,19,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,56,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,46,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,54,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,0,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,36,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,52,0,0,0,7,6,0,0,15,0,0,0,7,8,0,0,0,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,9,9,0,0,192,6,0,0,7,4,0,0,5,0,0,0,7,8,0,0,44,0,0,0,7,6,0,0,17,0,0,0,9,9,0,0,128,5,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,30,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,6,0,0,12,0,0,0,7,5,0,0,9,0,0,0,9,6,0,0,128,6,0,0,7,4,0,0,6,0,0,0,7,8,0,0,34,0,0,0,9,5,0,0,128,0,0,0,7,8,0,0,50,0,0,0,7,6,0,0,14,0,0,0,7,8,0,0,62,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,8,0,0,48,0,0,0,7,4,0,0,3,0,0,0,7,8,0,0,60,0,0,0,7,4,0,0,5,0,0,0,7,8,0,0,42,0,0,0,7,6,0,0,16,0,0,0,9,9,0,0,128,4,0,0,7,4,0,0,6,0,0,0,7,8,0,0,32,0,0,0,7,5,0,0,8,0,0,0,7,8,0,0,58,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,7,0,0,22,0,0,0,7,4,0,0,3,0,0,0,7,5,0,0,11,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,26,0,0,0,7,5,0,0,9,0,0,0,9,8,0,0,128,2,0,0,7,4,0,0,6,0,0,0,7,8,0,0,38,0,0,0,9,5,0,0,128,0,0,0,7,7,0,0,25,0,0,0,7,6,0,0,15,0,0,0,9,8,0,0,128,1,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,7,6,0,0,13,0,0,0,7,4,0,0,3,0,0,0,7,7,0,0,18,0,0,0,7,4,0,0,5,0,0,0,7,7,0,0,21,0,0,0,7,6,0,0,17,0,0,0,9,7,0,0,0,1,0,0,7,4,0,0,6,0,0,0,7,6,0,0,1,0,0,0,7,5,0,0,8,0,0,0,9,6,0,0,192,0,0,0,9,5,0,0,64,0,0,0,7,5,0,0,10,0,0,0,7,4,0,0,4,0,0,0,7,4,0,0,2,0,0,0,7,4,0,0,7,0,0,0,12,11,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,18,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,17,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,0,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,23,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,20,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,25,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,128,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,56,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,30,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,64,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,57,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,21,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,54,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,52,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,48,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,64,8,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,44,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,36,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,128,1,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,28,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,60,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,40,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,64,9,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,16,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,10,0,0,64,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,18,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,17,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,192,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,50,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,34,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,128,6,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,26,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,128,5,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,32,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,128,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,61,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,42,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,0,4,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,0,3,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,62,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,192,8,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,46,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,38,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,0,2,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,19,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,24,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,22,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,192,9,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,16,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,10,0,0,64,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,12,11,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,18,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,17,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,0,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,23,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,20,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,25,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,192,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,0,5,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,31,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,64,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,58,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,21,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,128,3,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,128,2,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,49,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,128,8,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,45,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,37,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,192,1,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,29,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,0,6,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,41,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,128,9,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,16,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,10,0,0,64,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,18,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,17,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,0,8,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,51,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,35,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,64,1,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,27,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,59,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,33,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,128,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,0,1,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,43,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,128,4,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,55,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,63,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);allocate([8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,0,9,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,47,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,39,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,53,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,19,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,24,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,22,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,0,10,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,16,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,10,0,0,64,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,12,11,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,18,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,17,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,0,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,23,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,20,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,25,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,128,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,56,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,30,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,64,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,57,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,21,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,54,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,52,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,48,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,64,8,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,44,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,36,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,128,1,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,28,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,60,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,40,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+71680);allocate([8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,64,9,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,16,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,10,0,0,64,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,18,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,17,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,192,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,50,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,34,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,192,6,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,26,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,192,5,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,32,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,128,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,61,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,42,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,64,4,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,64,3,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,62,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,192,8,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,46,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,38,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,64,2,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,19,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,24,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,22,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,192,9,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,16,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,10,0,0,64,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,12,11,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,18,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,17,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+81920);allocate([8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,0,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,23,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,20,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,25,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,192,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,64,5,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,31,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,64,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,58,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,21,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,192,3,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,192,2,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,49,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,128,8,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,45,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,37,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,192,1,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,29,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,64,6,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,41,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,128,9,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,16,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,10,0,0,64,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,18,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,17,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,0,8,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,51,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,35,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,64,1,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,27,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,59,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,33,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+92160);allocate([8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,11,0,0,128,7,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,12,0,0,0,1,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,43,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,13,0,0,192,4,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,9,0,0,15,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,55,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,63,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,0,9,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,47,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,39,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,12,0,0,53,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,13,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,19,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,24,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,11,0,0,22,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,11,12,0,0,0,10,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,10,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,16,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,10,0,0,0,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,10,10,0,0,64,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,9,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,11,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,8,0,0,14,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,6,0,0,8,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,7,0,0,12,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,6,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,8,5,0,0,7,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,1,0,0,0,8,2,0,0,2,0,0,0,8,4,0,0,5,0,0,0,8,2,0,0,3,0,0,0,8,3,0,0,4,0,0,0,8,2,0,0,2,0,0,0,91,1,0,0,253,255,253,255,7,0,0,0,0,0,0,0,40,0,0,0,40,0,0,0,66,0,0,1,140,60,2,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,1,0,39,96,2,0,0,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,39,96,2,0,0,0,0,0,3,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,39,96,2,0,0,0,0,0,95,155,125,62,4,0,0,0,52,161,121,62,6,0,4,0,3,124,119,62,7,0,10,0,62,149,115,62,9,0,17,0,88,145,113,62,10,0,26,0,132,185,109,62,12,0,36,0,27,213,105,62,14,0,48,0,112,176,103,62,15,0,62,0,57,181,99,62,17,0,77,0,41,179,97,62,18,0,94,0,240,220,91,62,21,0,112,0,179,209,89,62,22,0,133,0,63,199,87,62,23,0,155,0,59,229,81,62,26,0,178,0,144,219,79,62,27,0,204,0,226,6,76,62,29,0,231,0,181,55,72,62,31,0,4,1,152,52,70,62,32,0,35,1,97,111,66,62,34,0,67,1,104,175,62,62,36,0,101,1,104,175,62,62,36,0,137,1,102,249,58,62,38,0,173,1,144,76,55,62,40,0,211,1,92,173,51,62,42,0,251,1,8,33,48,62,44,0,37,2,8,33,48,62,44,0,81,2,160,168,44,62,46,0,125,2,160,168,44,62,46,0,171,2,52,128,39,62,49,0,217,2,12,115,34,62,52,0,10,3,12,115,34,62,52,0,62,3,12,115,34,62,52,0,114,3,174,129,29,62,55,0,166,3,174,129,29,62,55,0,221,3,226,172,24,62,58,0,20,4,226,172,24,62,58,0,78,4,2,44,18,62,62,0,136,4,2,44,18,62,62,0,198,4,2,44,18,62,62,0,4,5,167,150,13,62,65,0,66,5,167,150,13,62,65,0,131,5,167,150,13,62,65,0,196,5,134,86,7,62,69,0,5,6,134,86,7,62,69,0,74,6,159,59,1,62,73,0,143,6,159,59,1,62,73,0,216,6,159,59,1,62,73,0,33,7,80,138,246,61,77,0,106,7,80,138,246,61,77,0,183,7,80,138,246,61,77,0,4,8,80,138,246,61,77,0,81,8,159,88,231,61,82,0,158,8,159,88,231,61,82,0,240,8,159,88,231,61,82,0,66,9,191,14,220,61,86,0,148,9,191,14,220,61,86,0,234,9,191,14,220,61,86,0,64,10,191,14,220,61,86,0,150,10,161,128,205,61,91,0,236,10,161,128,205,61,91,0,71,11,161,128,205,61,91,0,162,11,108,209,194,61,95,0,253,11,108,209,194,61,95,0,92,12,108,209,194,61,95,0,187,12,108,209,194,61,95,0,26,13,12,202,180,61,100,0,121,13,12,202,180,61,100,0,221,13,12,202,180,61,100,0,65,14,12,202,180,61,100,0,165,14,136,245,166,61,105,0,9,15,136,245,166,61,105,0,114,15,136,245,166,61,105,0,219,15,136,245,166,61,105,0,68,16,185,80,153,61,110,0,173,16,185,80,153,61,110,0,27,17,185,80,153,61,110,0,137,17,185,80,153,61,110,0,247,17,161,219,139,61,115,0,101,18,161,219,139,61,115,0,216,18,161,219,139,61,115,0,75,19,161,219,139,61,115,0,190,19,144,50,130,61,119,0,49,20,144,50,130,61,119,0,168,20,144,50,130,61,119,0,31,21,144,50,130,61,119,0,150,21,120,94,106,61,124,0,13,22,120,94,106,61,124,0,137,22,120,94,106,61,124,0,5,23,120,94,106,61,124,0,129,23,166,213,80,61,129,0,253,23,166,213,80,61,129,0,126,24,166,213,80,61,129,0,255,24,166,213,80,61,129,0,128,25,166,213,80,61,129,0,1,26,18,190,55,61,134,0,130,26,18,190,55,61,134,0,8,27,18,190,55,61,134,0,142,27,18,190,55,61,134,0,20,28,199,45,38,61,138,0,154,28,199,45,38,61,138,0,36,29,199,45,38,61,138,0,174,29,199,45,38,61,138,0,56,30,52,216,20,61,142,0,194,30,52,216,20,61,142,0,80,31,52,216,20,61,142,0,222,31,52,216,20,61,142,0,108,32,47,164,3,61,146,0,250,32,47,164,3,61,146,0,140,33,47,164,3,61,146,0,30,34,47,164,3,61,146,0,176,34,27,241,228,60,150,0,66,35,27,241,228,60,150,0,216,35,27,241,228,60,150,0,110,36,75,120,194,60,154,0,4,37,75,120,194,60,154,0,158,37,75,120,194,60,154,0,56,38,75,120,194,60,154,0,210,38,218,198,159,60,158,0,108,39,218,198,159,60,158,0,10,40,218,198,159,60,158,0,168,40,65,17,139,60,161,0,70,41,65,17,139,60,161,0,231,41,65,17,139,60,161,0,136,42,65,17,139,60,161,0,41,43,207,19,79,60,165,0,202,43,207,19,79,60,165,0,111,44,207,19,79,60,165,0,20,45,75,177,35,60,168,0,185,45,75,177,35,60,168,0,97,46,75,177,35,60,168,0,9,47,216,183,19,60,170,0,177,47,216,183,19,60,170,0,91,48,216,183,19,60,170,0,5,49,250,183,203,59,173,0,175,49,250,183,203,59,173,0,92,50,188,4,167,59,175,0,9,51,188,4,167,59,175,0,184,51,188,4,167,59,175,0,103,52,18,23,128,59,177,0,22,53,18,23,128,59,177,0,199,53,175,90,25,59,177,0,120,54,197,144,28,59,170,0,41,55,34,252,139,58,164,0,211,55,122,169,216,58,157,0,119,56,14,245,59,58,150,0,20,57,218,140,211,58,143,0,170,57,201,142,141,57,136,0,57,58,97,193,253,57,129,0,193,58,138,146,144,58,123,0,66,59,155,202,162,58,115,0,189,59,170,182,155,58,109,0,48,60,136,131,132,58,103,0,157,60,47,220,57,58,97,0,4,61,137,207,157,57,89,0,101,61,193,85,30,59,82,0,190,61,187,14,85,59,76,0,16,62,216,186,84,59,69,0,92,62,58,177,135,59,62,0,161,62,69,101,195,59,55,0,223,62,116,209,16,60,47,0,22,63,64,222,43,60,40,0,69,63,0,55,139,60,31,0,109,63,133,208,193,60,21,0,140,63,24,0,1,0,0,0,0,0,3,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,1,0,173,64,2,0,0,0,0,0,25,0,1,0,0,0,0,0,3,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,1,0,187,64,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,1,0,1,0,16,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,66,0,1,0,190,81,2,0,0,0,0,0,2,2,0,0,1,0,1,0,16,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,67,0,1,0,212,81,2,0,0,0,0,0,7,2,0,0,253,255,253,255,16,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,68,0,0,1,240,81,2,0,0,0,0,0,8,2,0,0,253,255,253,255,16,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,69,0,0,1,252,81,2,0,0,0,0,0,9,2,0,0,253,255,253,255,16,0,0,0,0,0,0,0,46,0,0,0,0,0,0,0,70,0,0,1,9,82,2,0,0,0,0,0,0,2,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,71,0,0,0,22,82,2,0,0,0,0,0,3,2,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,72,0,0,0,31,82,2,0,0,0,0,0,13,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,39,96,2,0,0,0,0,0,22,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,39,96,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,61,1,0,0,1,0,1,0,3,0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,66,0,0,0,166,88,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,253,255,255,255,254,255,255,255,255,255,255,255,21,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,1,0,39,96,2,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,4,0,4,0,8,0,4,0,17,0,0,0,4,0,5,0,16,0,8,0,17,0,0,0,4,0,6,0,32,0,32,0,17,0,0,0,4,0,4,0,16,0,16,0,18,0,0,0,8,0,16,0,32,0,32,0,18,0,0,0,8,0,16,0,128,0,128,0,18,0,0,0,8,0,32,0,128,0,0,1,18,0,0,0,32,0,128,0,2,1,0,4,18,0,0,0,32,0,2,1,2,1,0,16,18,0,0,0,48,242,1,0,88,174,1,0,1,1,0,0,30,1,0,0,15,0,0,0,176,246,1,0,64,175,1,0,0,0,0,0,30,0,0,0,15,0,0,0,0,0,0,0,48,176,1,0,0,0,0,0,19,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,16,0,0,0,20,0,0,0,24,0,0,0,28,0,0,0,32,0,0,0,40,0,0,0,48,0,0,0,56,0,0,0,64,0,0,0,80,0,0,0,96,0,0,0,112,0,0,0,128,0,0,0,160,0,0,0,192,0,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,12,0,0,0,16,0,0,0,24,0,0,0,32,0,0,0,48,0,0,0,64,0,0,0,96,0,0,0,128,0,0,0,192,0,0,0,0,1,0,0,128,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,12,0,0,0,16,0,0,0,24,0,0,0,32,0,0,0,48,0,0,0,64,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,12,96,2,0,28,96,2,0,39,96,2,0,40,96,2,0,51,96,2,0,64,96,2,0,75,96,2,0,95,96,2,0,108,96,2,0,39,96,2,0,0,0,0,0,150,48,7,119,44,97,14,238,186,81,9,153,25,196,109,7,143,244,106,112,53,165,99,233,163,149,100,158,50,136,219,14,164,184,220,121,30,233,213,224,136,217,210,151,43,76,182,9,189,124,177,126,7,45,184,231,145,29,191,144,100,16,183,29,242,32,176,106,72,113,185,243,222,65,190,132,125,212,218,26,235,228,221,109,81,181,212,244,199,133,211,131,86,152,108,19,192,168,107,100,122,249,98,253,236,201,101,138,79,92,1,20,217,108,6,99,99,61,15,250,245,13,8,141,200,32,110,59,94,16,105,76,228,65,96,213,114,113,103,162,209,228,3,60,71,212,4,75,253,133,13,210,107,181,10,165,250,168,181,53,108,152,178,66,214,201,187,219,64,249,188,172,227,108,216,50,117,92,223,69,207,13,214,220,89,61,209,171,172,48,217,38,58,0,222,81,128,81,215,200,22,97,208,191,181,244,180,33,35,196,179,86,153,149,186,207,15,165,189,184,158,184,2,40,8,136,5,95,178,217,12,198,36,233,11,177,135,124,111,47,17,76,104,88,171,29,97,193,61,45,102,182,144,65,220,118,6,113,219,1,188,32,210,152,42,16,213,239,137,133,177,113,31,181,182,6,165,228,191,159,51,212,184,232,162,201,7,120,52,249,0,15,142,168,9,150,24,152,14,225,187,13,106,127,45,61,109,8,151,108,100,145,1,92,99,230,244,81,107,107,98,97,108,28,216,48,101,133,78,0,98,242,237,149,6,108,123,165,1,27,193,244,8,130,87,196,15,245,198,217,176,101,80,233,183,18,234,184,190,139,124,136,185,252,223,29,221,98,73,45,218,21,243,124,211,140,101,76,212,251,88,97,178,77,206,81,181,58,116,0,188,163,226,48,187,212,65,165,223,74,215,149,216,61,109,196,209,164,251,244,214,211,106,233,105,67,252,217,110,52,70,136,103,173,208,184,96,218,115,45,4,68,229,29,3,51,95,76,10,170,201,124,13,221,60,113,5,80,170,65,2,39,16,16,11,190,134,32,12,201,37,181,104,87,179,133,111,32,9,212,102,185,159,228,97,206,14,249,222,94,152,201,217,41,34,152,208,176,180,168,215,199,23,61,179,89,129,13,180,46,59,92,189,183,173,108,186,192,32,131,184,237,182,179,191,154,12,226,182,3,154,210,177,116,57,71,213,234,175,119,210,157,21,38,219,4,131,22,220,115,18,11,99,227,132,59,100,148,62,106,109,13,168,90,106,122,11,207,14,228,157,255,9,147,39,174,0,10,177,158,7,125,68,147,15,240,210,163,8,135,104,242,1,30,254,194,6,105,93,87,98,247,203,103,101,128,113,54,108,25,231,6,107,110,118,27,212,254,224,43,211,137,90,122,218,16,204,74,221,103,111,223,185,249,249,239,190,142,67,190,183,23,213,142,176,96,232,163,214,214,126,147,209,161,196,194,216,56,82,242,223,79,241,103,187,209,103,87,188,166,221,6,181,63,75,54,178,72,218,43,13,216,76,27,10,175,246,74,3,54,96,122,4,65,195,239,96,223,85,223,103,168,239,142,110,49,121,190,105,70,140,179,97,203,26,131,102,188,160,210,111,37,54,226,104,82,149,119,12,204,3,71,11,187,185,22,2,34,47,38,5,85,190,59,186,197,40,11,189,178,146,90,180,43,4,106,179,92,167,255,215,194,49,207,208,181,139,158,217,44,29,174,222,91,176,194,100,155,38,242,99,236,156,163,106,117,10,147,109,2,169,6,9,156,63,54,14,235,133,103,7,114,19,87,0,5,130,74,191,149,20,122,184,226,174,43,177,123,56,27,182,12,155,142,210,146,13,190,213,229,183,239,220,124,33,223,219,11,212,210,211,134,66,226,212,241,248,179,221,104,110,131,218,31,205,22,190,129,91,38,185,246,225,119,176,111,119,71,183,24,230,90,8,136,112,106,15,255,202,59,6,102,92,11,1,17,255,158,101,143,105,174,98,248,211,255,107,97,69,207,108,22,120,226,10,160,238,210,13,215,84,131,4,78,194,179,3,57,97,38,103,167,247,22,96,208,77,71,105,73,219,119,110,62,74,106,209,174,220,90,214,217,102,11,223,64,240,59,216,55,83,174,188,169,197,158,187,222,127,207,178,71,233,255,181,48,28,242,189,189,138,194,186,202,48,147,179,83,166,163,180,36,5,54,208,186,147,6,215,205,41,87,222,84,191,103,217,35,46,122,102,179,184,74,97,196,2,27,104,93,148,43,111,42,55,190,11,180,161,142,12,195,27,223,5,90,141,239,2,45,0,0,0,0,65,49,27,25,130,98,54,50,195,83,45,43,4,197,108,100,69,244,119,125,134,167,90,86,199,150,65,79,8,138,217,200,73,187,194,209,138,232,239,250,203,217,244,227,12,79,181,172,77,126,174,181,142,45,131,158,207,28,152,135,81,18,194,74,16,35,217,83,211,112,244,120,146,65,239,97,85,215,174,46,20,230,181,55,215,181,152,28,150,132,131,5,89,152,27,130,24,169,0,155,219,250,45,176,154,203,54,169,93,93,119,230,28,108,108,255,223,63,65,212,158,14,90,205,162,36,132,149,227,21,159,140,32,70,178,167,97,119,169,190,166,225,232,241,231,208,243,232,36,131,222,195,101,178,197,218,170,174,93,93,235,159,70,68,40,204,107,111,105,253,112,118,174,107,49,57,239,90,42,32,44,9,7,11,109,56,28,18,243,54,70,223,178,7,93,198,113,84,112,237,48,101,107,244,247,243,42,187,182,194,49,162,117,145,28,137,52,160,7,144,251,188,159,23,186,141,132,14,121,222,169,37,56,239,178,60,255,121,243,115,190,72,232,106,125,27,197,65,60,42,222,88,5,79,121,240,68,126,98,233,135,45,79,194,198,28,84,219,1,138,21,148,64,187,14,141,131,232,35,166,194,217,56,191,13,197,160,56,76,244,187,33,143,167,150,10,206,150,141,19,9,0,204,92,72,49,215,69,139,98,250,110,202,83,225,119,84,93,187,186,21,108,160,163,214,63,141,136,151,14,150,145,80,152,215,222,17,169,204,199,210,250,225,236,147,203,250,245,92,215,98,114,29,230,121,107,222,181,84,64,159,132,79,89,88,18,14,22,25,35,21,15,218,112,56,36,155,65,35,61,167,107,253,101,230,90,230,124,37,9,203,87,100,56,208,78,163,174,145,1,226,159,138,24,33,204,167,51,96,253,188,42,175,225,36,173,238,208,63,180,45,131,18,159,108,178,9,134,171,36,72,201,234,21,83,208,41,70,126,251,104,119,101,226,246,121,63,47,183,72,36,54,116,27,9,29,53,42,18,4,242,188,83,75,179,141,72,82,112,222,101,121,49,239,126,96,254,243,230,231,191,194,253,254,124,145,208,213,61,160,203,204,250,54,138,131,187,7,145,154,120,84,188,177,57,101,167,168,75,152,131,59,10,169,152,34,201,250,181,9,136,203,174,16,79,93,239,95,14,108,244,70,205,63,217,109,140,14,194,116,67,18,90,243,2,35,65,234,193,112,108,193,128,65,119,216,71,215,54,151,6,230,45,142,197,181,0,165,132,132,27,188,26,138,65,113,91,187,90,104,152,232,119,67,217,217,108,90,30,79,45,21,95,126,54,12,156,45,27,39,221,28,0,62,18,0,152,185,83,49,131,160,144,98,174,139,209,83,181,146,22,197,244,221,87,244,239,196,148,167,194,239,213,150,217,246,233,188,7,174,168,141,28,183,107,222,49,156,42,239,42,133,237,121,107,202,172,72,112,211,111,27,93,248,46,42,70,225,225,54,222,102,160,7,197,127,99,84,232,84,34,101,243,77,229,243,178,2,164,194,169,27,103,145,132,48,38,160,159,41,184,174,197,228,249,159,222,253,58,204,243,214,123,253,232,207,188,107,169,128,253,90,178,153,62,9,159,178,127,56,132,171,176,36,28,44,241,21,7,53,50,70,42,30,115,119,49,7,180,225,112,72,245,208,107,81,54,131,70,122,119,178,93,99,78,215,250,203,15,230,225,210,204,181,204,249,141,132,215,224,74,18,150,175,11,35,141,182,200,112,160,157,137,65,187,132,70,93,35,3,7,108,56,26,196,63,21,49,133,14,14,40,66,152,79,103,3,169,84,126,192,250,121,85,129,203,98,76,31,197,56,129,94,244,35,152,157,167,14,179,220,150,21,170,27,0,84,229,90,49,79,252,153,98,98,215,216,83,121,206,23,79,225,73],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+102400);allocate([86,126,250,80,149,45,215,123,212,28,204,98,19,138,141,45,82,187,150,52,145,232,187,31,208,217,160,6,236,243,126,94,173,194,101,71,110,145,72,108,47,160,83,117,232,54,18,58,169,7,9,35,106,84,36,8,43,101,63,17,228,121,167,150,165,72,188,143,102,27,145,164,39,42,138,189,224,188,203,242,161,141,208,235,98,222,253,192,35,239,230,217,189,225,188,20,252,208,167,13,63,131,138,38,126,178,145,63,185,36,208,112,248,21,203,105,59,70,230,66,122,119,253,91,181,107,101,220,244,90,126,197,55,9,83,238,118,56,72,247,177,174,9,184,240,159,18,161,51,204,63,138,114,253,36,147,0,0,0,0,55,106,194,1,110,212,132,3,89,190,70,2,220,168,9,7,235,194,203,6,178,124,141,4,133,22,79,5,184,81,19,14,143,59,209,15,214,133,151,13,225,239,85,12,100,249,26,9,83,147,216,8,10,45,158,10,61,71,92,11,112,163,38,28,71,201,228,29,30,119,162,31,41,29,96,30,172,11,47,27,155,97,237,26,194,223,171,24,245,181,105,25,200,242,53,18,255,152,247,19,166,38,177,17,145,76,115,16,20,90,60,21,35,48,254,20,122,142,184,22,77,228,122,23,224,70,77,56,215,44,143,57,142,146,201,59,185,248,11,58,60,238,68,63,11,132,134,62,82,58,192,60,101,80,2,61,88,23,94,54,111,125,156,55,54,195,218,53,1,169,24,52,132,191,87,49,179,213,149,48,234,107,211,50,221,1,17,51,144,229,107,36,167,143,169,37,254,49,239,39,201,91,45,38,76,77,98,35,123,39,160,34,34,153,230,32,21,243,36,33,40,180,120,42,31,222,186,43,70,96,252,41,113,10,62,40,244,28,113,45,195,118,179,44,154,200,245,46,173,162,55,47,192,141,154,112,247,231,88,113,174,89,30,115,153,51,220,114,28,37,147,119,43,79,81,118,114,241,23,116,69,155,213,117,120,220,137,126,79,182,75,127,22,8,13,125,33,98,207,124,164,116,128,121,147,30,66,120,202,160,4,122,253,202,198,123,176,46,188,108,135,68,126,109,222,250,56,111,233,144,250,110,108,134,181,107,91,236,119,106,2,82,49,104,53,56,243,105,8,127,175,98,63,21,109,99,102,171,43,97,81,193,233,96,212,215,166,101,227,189,100,100,186,3,34,102,141,105,224,103,32,203,215,72,23,161,21,73,78,31,83,75,121,117,145,74,252,99,222,79,203,9,28,78,146,183,90,76,165,221,152,77,152,154,196,70,175,240,6,71,246,78,64,69,193,36,130,68,68,50,205,65,115,88,15,64,42,230,73,66,29,140,139,67,80,104,241,84,103,2,51,85,62,188,117,87,9,214,183,86,140,192,248,83,187,170,58,82,226,20,124,80,213,126,190,81,232,57,226,90,223,83,32,91,134,237,102,89,177,135,164,88,52,145,235,93,3,251,41,92,90,69,111,94,109,47,173,95,128,27,53,225,183,113,247,224,238,207,177,226,217,165,115,227,92,179,60,230,107,217,254,231,50,103,184,229,5,13,122,228,56,74,38,239,15,32,228,238,86,158,162,236,97,244,96,237,228,226,47,232,211,136,237,233,138,54,171,235,189,92,105,234,240,184,19,253,199,210,209,252,158,108,151,254,169,6,85,255,44,16,26,250,27,122,216,251,66,196,158,249,117,174,92,248,72,233,0,243,127,131,194,242,38,61,132,240,17,87,70,241,148,65,9,244,163,43,203,245,250,149,141,247,205,255,79,246,96,93,120,217,87,55,186,216,14,137,252,218,57,227,62,219,188,245,113,222,139,159,179,223,210,33,245,221,229,75,55,220,216,12,107,215,239,102,169,214,182,216,239,212,129,178,45,213,4,164,98,208,51,206,160,209,106,112,230,211,93,26,36,210,16,254,94,197,39,148,156,196,126,42,218,198,73,64,24,199,204,86,87,194,251,60,149,195,162,130,211,193,149,232,17,192,168,175,77,203,159,197,143,202,198,123,201,200,241,17,11,201,116,7,68,204,67,109,134,205,26,211,192,207,45,185,2,206,64,150,175,145,119,252,109,144,46,66,43,146,25,40,233,147,156,62,166,150,171,84,100,151,242,234,34,149,197,128,224,148,248,199,188,159,207,173,126,158,150,19,56,156,161,121,250,157,36,111,181,152,19,5,119,153,74,187,49,155,125,209,243,154,48,53,137,141,7,95,75,140,94,225,13,142,105,139,207,143,236,157,128,138,219,247,66,139,130,73,4,137,181,35,198,136,136,100,154,131,191,14,88,130,230,176,30,128,209,218,220,129,84,204,147,132,99,166,81,133,58,24,23,135,13,114,213,134,160,208,226,169,151,186,32,168,206,4,102,170,249,110,164,171,124,120,235,174,75,18,41,175,18,172,111,173,37,198,173,172,24,129,241,167,47,235,51,166,118,85,117,164,65,63,183,165,196,41,248,160,243,67,58,161,170,253,124,163,157,151,190,162,208,115,196,181,231,25,6,180,190,167,64,182,137,205,130,183,12,219,205,178,59,177,15,179,98,15,73,177,85,101,139,176,104,34,215,187,95,72,21,186,6,246,83,184,49,156,145,185,180,138,222,188,131,224,28,189,218,94,90,191,237,52,152,190,0,0,0,0,101,103,188,184,139,200,9,170,238,175,181,18,87,151,98,143,50,240,222,55,220,95,107,37,185,56,215,157,239,40,180,197,138,79,8,125,100,224,189,111,1,135,1,215,184,191,214,74,221,216,106,242,51,119,223,224,86,16,99,88,159,87,25,80,250,48,165,232,20,159,16,250,113,248,172,66,200,192,123,223,173,167,199,103,67,8,114,117,38,111,206,205,112,127,173,149,21,24,17,45,251,183,164,63,158,208,24,135,39,232,207,26,66,143,115,162,172,32,198,176,201,71,122,8,62,175,50,160,91,200,142,24,181,103,59,10,208,0,135,178,105,56,80,47,12,95,236,151,226,240,89,133,135,151,229,61,209,135,134,101,180,224,58,221,90,79,143,207,63,40,51,119,134,16,228,234,227,119,88,82,13,216,237,64,104,191,81,248,161,248,43,240,196,159,151,72,42,48,34,90,79,87,158,226,246,111,73,127,147,8,245,199,125,167,64,213,24,192,252,109,78,208,159,53,43,183,35,141,197,24,150,159,160,127,42,39,25,71,253,186,124,32,65,2,146,143,244,16,247,232,72,168,61,88,20,155,88,63,168,35,182,144,29,49,211,247,161,137,106,207,118,20,15,168,202,172,225,7,127,190,132,96,195,6,210,112,160,94,183,23,28,230,89,184,169,244,60,223,21,76,133,231,194,209,224,128,126,105,14,47,203,123,107,72,119,195,162,15,13,203,199,104,177,115,41,199,4,97,76,160,184,217,245,152,111,68,144,255,211,252,126,80,102,238,27,55,218,86,77,39,185,14,40,64,5,182,198,239,176,164,163,136,12,28,26,176,219,129,127,215,103,57,145,120,210,43,244,31,110,147,3,247,38,59,102,144,154,131,136,63,47,145,237,88,147,41,84,96,68,180,49,7,248,12,223,168,77,30,186,207,241,166,236,223,146,254,137,184,46,70,103,23,155,84,2,112,39,236,187,72,240,113,222,47,76,201,48,128,249,219,85,231,69,99,156,160,63,107,249,199,131,211,23,104,54,193,114,15,138,121,203,55,93,228,174,80,225,92,64,255,84,78,37,152,232,246,115,136,139,174,22,239,55,22,248,64,130,4,157,39,62,188,36,31,233,33,65,120,85,153,175,215,224,139,202,176,92,51,59,182,89,237,94,209,229,85,176,126,80,71,213,25,236,255,108,33,59,98,9,70,135,218,231,233,50,200,130,142,142,112,212,158,237,40,177,249,81,144,95,86,228,130,58,49,88,58,131,9,143,167,230,110,51,31,8,193,134,13,109,166,58,181,164,225,64,189,193,134,252,5,47,41,73,23,74,78,245,175,243,118,34,50,150,17,158,138,120,190,43,152,29,217,151,32,75,201,244,120,46,174,72,192,192,1,253,210,165,102,65,106,28,94,150,247,121,57,42,79,151,150,159,93,242,241,35,229,5,25,107,77,96,126,215,245,142,209,98,231,235,182,222,95,82,142,9,194,55,233,181,122,217,70,0,104,188,33,188,208,234,49,223,136,143,86,99,48,97,249,214,34,4,158,106,154,189,166,189,7,216,193,1,191,54,110,180,173,83,9,8,21,154,78,114,29,255,41,206,165,17,134,123,183,116,225,199,15,205,217,16,146,168,190,172,42,70,17,25,56,35,118,165,128,117,102,198,216,16,1,122,96,254,174,207,114,155,201,115,202,34,241,164,87,71,150,24,239,169,57,173,253,204,94,17,69,6,238,77,118,99,137,241,206,141,38,68,220,232,65,248,100,81,121,47,249,52,30,147,65,218,177,38,83,191,214,154,235,233,198,249,179,140,161,69,11,98,14,240,25,7,105,76,161,190,81,155,60,219,54,39,132,53,153,146,150,80,254,46,46,153,185,84,38,252,222,232,158,18,113,93,140,119,22,225,52,206,46,54,169,171,73,138,17,69,230,63,3,32,129,131,187,118,145,224,227,19,246,92,91,253,89,233,73,152,62,85,241,33,6,130,108,68,97,62,212,170,206,139,198,207,169,55,126,56,65,127,214,93,38,195,110,179,137,118,124,214,238,202,196,111,214,29,89,10,177,161,225,228,30,20,243,129,121,168,75,215,105,203,19,178,14,119,171,92,161,194,185,57,198,126,1,128,254,169,156,229,153,21,36,11,54,160,54,110,81,28,142,167,22,102,134,194,113,218,62,44,222,111,44,73,185,211,148,240,129,4,9,149,230,184,177,123,73,13,163,30,46,177,27,72,62,210,67,45,89,110,251,195,246,219,233,166,145,103,81,31,169,176,204,122,206,12,116,148,97,185,102,241,6,5,222,0,0,0,0,119,7,48,150,238,14,97,44,153,9,81,186,7,109,196,25,112,106,244,143,233,99,165,53,158,100,149,163,14,219,136,50,121,220,184,164,224,213,233,30,151,210,217,136,9,182,76,43,126,177,124,189,231,184,45,7,144,191,29,145,29,183,16,100,106,176,32,242,243,185,113,72,132,190,65,222,26,218,212,125,109,221,228,235,244,212,181,81,131,211,133,199,19,108,152,86,100,107,168,192,253,98,249,122,138,101,201,236,20,1,92,79,99,6,108,217,250,15,61,99,141,8,13,245,59,110,32,200,76,105,16,94,213,96,65,228,162,103,113,114,60,3,228,209,75,4,212,71,210,13,133,253,165,10,181,107,53,181,168,250,66,178,152,108,219,187,201,214,172,188,249,64,50,216,108,227,69,223,92,117,220,214,13,207,171,209,61,89,38,217,48,172,81,222,0,58,200,215,81,128,191,208,97,22,33,180,244,181,86,179,196,35,207,186,149,153,184,189,165,15,40,2,184,158,95,5,136,8,198,12,217,178,177,11,233,36,47,111,124,135,88,104,76,17,193,97,29,171,182,102,45,61,118,220,65,144,1,219,113,6,152,210,32,188,239,213,16,42,113,177,133,137,6,182,181,31,159,191,228,165,232,184,212,51,120,7,201,162,15,0,249,52,150,9,168,142,225,14,152,24,127,106,13,187,8,109,61,45,145,100,108,151,230,99,92,1,107,107,81,244,28,108,97,98,133,101,48,216,242,98,0,78,108,6,149,237,27,1,165,123,130,8,244,193,245,15,196,87,101,176,217,198,18,183,233,80,139,190,184,234,252,185,136,124,98,221,29,223,21,218,45,73,140,211,124,243,251,212,76,101,77,178,97,88,58,181,81,206,163,188,0,116,212,187,48,226,74,223,165,65,61,216,149,215,164,209,196,109,211,214,244,251,67,105,233,106,52,110,217,252,173,103,136,70,218,96,184,208,68,4,45,115,51,3,29,229,170,10,76,95,221,13,124,201,80,5,113,60,39,2,65,170,190,11,16,16,201,12,32,134,87,104,181,37,32,111,133,179,185,102,212,9,206,97,228,159,94,222,249,14,41,217,201,152,176,208,152,34,199,215,168,180,89,179,61,23,46,180,13,129,183,189,92,59,192,186,108,173,237,184,131,32,154,191,179,182,3,182,226,12,116,177,210,154,234,213,71,57,157,210,119,175,4,219,38,21,115,220,22,131,227,99,11,18,148,100,59,132,13,109,106,62,122,106,90,168,228,14,207,11,147,9,255,157,10,0,174,39,125,7,158,177,240,15,147,68,135,8,163,210,30,1,242,104,105,6,194,254,247,98,87,93,128,101,103,203,25,108,54,113,110,107,6,231,254,212,27,118,137,211,43,224,16,218,122,90,103,221,74,204,249,185,223,111,142,190,239,249,23,183,190,67,96,176,142,213,214,214,163,232,161,209,147,126,56,216,194,196,79,223,242,82,209,187,103,241,166,188,87,103,63,181,6,221,72,178,54,75,216,13,43,218,175,10,27,76,54,3,74,246,65,4,122,96,223,96,239,195,168,103,223,85,49,110,142,239,70,105,190,121,203,97,179,140,188,102,131,26,37,111,210,160,82,104,226,54,204,12,119,149,187,11,71,3,34,2,22,185,85,5,38,47,197,186,59,190,178,189,11,40,43,180,90,146,92,179,106,4,194,215,255,167,181,208,207,49,44,217,158,139,91,222,174,29,155,100,194,176,236,99,242,38,117,106,163,156,2,109,147,10,156,9,6,169,235,14,54,63,114,7,103,133,5,0,87,19,149,191,74,130,226,184,122,20,123,177,43,174,12,182,27,56,146,210,142,155,229,213,190,13,124,220,239,183,11,219,223,33,134,211,210,212,241,212,226,66,104,221,179,248,31,218,131,110,129,190,22,205,246,185,38,91,111,176,119,225,24,183,71,119,136,8,90,230,255,15,106,112,102,6,59,202,17,1,11,92,143,101,158,255,248,98,174,105,97,107,255,211,22,108,207,69,160,10,226,120,215,13,210,238,78,4,131,84,57,3,179,194,167,103,38,97,208,96,22,247,73,105,71,77,62,110,119,219,174,209,106,74,217,214,90,220,64,223,11,102,55,216,59,240,169,188,174,83,222,187,158,197,71,178,207,127,48,181,255,233,189,189,242,28,202,186,194,138,83,179,147,48,36,180,163,166,186,208,54,5,205,215,6,147,84,222,87,41,35,217,103,191,179,102,122,46,196,97,74,184,93,104,27,2,42,111,43,148,180,11,190,55,195,12,142,161,90,5,223,27,45,2,239,141,0,0,0,0,25,27,49,65,50,54,98,130,43,45,83,195,100,108,197,4,125,119,244,69,86,90,167,134,79,65,150,199,200,217,138,8,209,194,187,73,250,239,232,138,227,244,217,203,172,181,79,12,181,174,126,77,158,131,45,142,135,152,28,207,74,194,18,81,83,217,35,16,120,244,112,211,97,239,65,146,46,174,215,85,55,181,230,20,28,152,181,215,5,131,132,150,130,27,152,89,155,0,169,24,176,45,250,219,169,54,203,154,230,119,93,93,255,108,108,28,212,65,63,223,205,90,14,158,149,132,36,162,140,159,21,227,167,178,70,32,190,169,119,97,241,232,225,166,232,243,208,231,195,222,131,36,218,197,178,101,93,93,174,170,68,70,159,235,111,107,204,40,118,112,253,105,57,49,107,174,32,42,90,239,11,7,9,44,18,28,56,109,223,70,54,243,198,93,7,178,237,112,84,113,244,107,101,48,187,42,243,247,162,49,194,182,137,28,145,117,144,7,160,52,23,159,188,251,14,132,141,186,37,169,222,121,60,178,239,56,115,243,121,255,106,232,72,190,65,197,27,125,88,222,42,60,240,121,79,5,233,98,126,68,194,79,45,135,219,84,28,198,148,21,138,1,141,14,187,64,166,35,232,131,191,56,217,194,56,160,197,13,33,187,244,76,10,150,167,143,19,141,150,206,92,204,0,9,69,215,49,72,110,250,98,139,119,225,83,202,186,187,93,84,163,160,108,21,136,141,63,214,145,150,14,151,222,215,152,80,199,204,169,17,236,225,250,210,245,250,203,147,114,98,215,92,107,121,230,29,64,84,181,222,89,79,132,159,22,14,18,88,15,21,35,25,36,56,112,218,61,35,65,155,101,253,107,167,124,230,90,230,87,203,9,37,78,208,56,100,1,145,174,163,24,138,159,226,51,167,204,33,42,188,253,96,173,36,225,175,180,63,208,238,159,18,131,45,134,9,178,108,201,72,36,171,208,83,21,234,251,126,70,41,226,101,119,104,47,63,121,246,54,36,72,183,29,9,27,116,4,18,42,53,75,83,188,242,82,72,141,179,121,101,222,112,96,126,239,49,231,230,243,254,254,253,194,191,213,208,145,124,204,203,160,61,131,138,54,250,154,145,7,187,177,188,84,120,168,167,101,57,59,131,152,75,34,152,169,10,9,181,250,201,16,174,203,136,95,239,93,79,70,244,108,14,109,217,63,205,116,194,14,140,243,90,18,67,234,65,35,2,193,108,112,193,216,119,65,128,151,54,215,71,142,45,230,6,165,0,181,197,188,27,132,132,113,65,138,26,104,90,187,91,67,119,232,152,90,108,217,217,21,45,79,30,12,54,126,95,39,27,45,156,62,0,28,221,185,152,0,18,160,131,49,83,139,174,98,144,146,181,83,209,221,244,197,22,196,239,244,87,239,194,167,148,246,217,150,213,174,7,188,233,183,28,141,168,156,49,222,107,133,42,239,42,202,107,121,237,211,112,72,172,248,93,27,111,225,70,42,46,102,222,54,225,127,197,7,160,84,232,84,99,77,243,101,34,2,178,243,229,27,169,194,164,48,132,145,103,41,159,160,38,228,197,174,184,253,222,159,249,214,243,204,58,207,232,253,123,128,169,107,188,153,178,90,253,178,159,9,62,171,132,56,127,44,28,36,176,53,7,21,241,30,42,70,50,7,49,119,115,72,112,225,180,81,107,208,245,122,70,131,54,99,93,178,119,203,250,215,78,210,225,230,15,249,204,181,204,224,215,132,141,175,150,18,74,182,141,35,11,157,160,112,200,132,187,65,137,3,35,93,70,26,56,108,7,49,21,63,196,40,14,14,133,103,79,152,66,126,84,169,3,85,121,250,192,76,98,203,129,129,56,197,31,152,35,244,94,179,14,167,157,170,21,150,220,229,84,0,27,252,79,49,90,215,98,98,153,206,121,83,216,73,225,79,23,80,250,126,86,123,215,45,149,98,204,28,212,45,141,138,19,52,150,187,82,31,187,232,145,6,160,217,208,94,126,243,236,71,101,194,173,108,72,145,110,117,83,160,47,58,18,54,232,35,9,7,169,8,36,84,106,17,63,101,43,150,167,121,228,143,188,72,165,164,145,27,102,189,138,42,39,242,203,188,224,235,208,141,161,192,253,222,98,217,230,239,35,20,188,225,189,13,167,208,252,38,138,131,63,63,145,178,126,112,208,36,185,105,203,21,248,66,230,70,59,91,253,119,122,220,101,107,181,197,126,90,244,238,83,9,55,247,72,56,118,184,9,174,177,161,18,159,240,138,63,204,51,147,36,253,114,0,0,0,0,1,194,106,55,3,132,212,110,2,70,190,89,7,9,168,220,6,203,194,235,4,141,124,178,5,79,22,133,14,19,81,184,15,209,59,143,13,151,133,214,12,85,239,225,9,26,249,100,8,216,147,83,10,158,45,10,11,92,71,61,28,38,163,112,29,228,201,71,31,162,119,30,30,96,29,41,27,47,11,172,26,237,97,155,24,171,223,194,25,105,181,245,18,53,242,200,19,247,152,255,17,177,38,166,16,115,76,145,21,60,90,20,20,254,48,35,22,184,142,122,23,122,228,77,56,77,70,224,57,143,44,215,59,201,146,142,58,11,248,185,63,68,238,60,62,134,132,11,60,192,58,82,61,2,80,101,54,94,23,88,55,156,125,111,53,218,195,54,52,24,169,1,49,87,191,132,48,149,213,179,50,211,107,234,51,17,1,221,36,107,229,144,37,169,143,167,39,239,49,254,38,45,91,201,35,98,77,76,34,160,39,123,32,230,153,34,33,36,243,21,42,120,180,40,43,186,222,31,41,252,96,70,40,62,10,113,45,113,28,244,44,179,118,195,46,245,200,154,47,55,162,173,112,154,141,192,113,88,231,247,115,30,89,174,114,220,51,153,119,147,37,28,118,81,79,43,116,23,241,114,117,213,155,69,126,137,220,120,127,75,182,79,125,13,8,22,124,207,98,33,121,128,116,164,120,66,30,147,122,4,160,202,123,198,202,253,108,188,46,176,109,126,68,135,111,56,250,222,110,250,144,233,107,181,134,108,106,119,236,91,104,49,82,2,105,243,56,53,98,175,127,8,99,109,21,63,97,43,171,102,96,233,193,81,101,166,215,212,100,100,189,227,102,34,3,186,103,224,105,141,72,215,203,32,73,21,161,23,75,83,31,78,74,145,117,121,79,222,99,252,78,28,9,203,76,90,183,146,77,152,221,165,70,196,154,152,71,6,240,175,69,64,78,246,68,130,36,193,65,205,50,68,64,15,88,115,66,73,230,42,67,139,140,29,84,241,104,80,85,51,2,103,87,117,188,62,86,183,214,9,83,248,192,140,82,58,170,187,80,124,20,226,81,190,126,213,90,226,57,232,91,32,83,223,89,102,237,134,88,164,135,177,93,235,145,52,92,41,251,3,94,111,69,90,95,173,47,109,225,53,27,128,224,247,113,183,226,177,207,238,227,115,165,217,230,60,179,92,231,254,217,107,229,184,103,50,228,122,13,5,239,38,74,56,238,228,32,15,236,162,158,86,237,96,244,97,232,47,226,228,233,237,136,211,235,171,54,138,234,105,92,189,253,19,184,240,252,209,210,199,254,151,108,158,255,85,6,169,250,26,16,44,251,216,122,27,249,158,196,66,248,92,174,117,243,0,233,72,242,194,131,127,240,132,61,38,241,70,87,17,244,9,65,148,245,203,43,163,247,141,149,250,246,79,255,205,217,120,93,96,216,186,55,87,218,252,137,14,219,62,227,57,222,113,245,188,223,179,159,139,221,245,33,210,220,55,75,229,215,107,12,216,214,169,102,239,212,239,216,182,213,45,178,129,208,98,164,4,209,160,206,51,211,230,112,106,210,36,26,93,197,94,254,16,196,156,148,39,198,218,42,126,199,24,64,73,194,87,86,204,195,149,60,251,193,211,130,162,192,17,232,149,203,77,175,168,202,143,197,159,200,201,123,198,201,11,17,241,204,68,7,116,205,134,109,67,207,192,211,26,206,2,185,45,145,175,150,64,144,109,252,119,146,43,66,46,147,233,40,25,150,166,62,156,151,100,84,171,149,34,234,242,148,224,128,197,159,188,199,248,158,126,173,207,156,56,19,150,157,250,121,161,152,181,111,36,153,119,5,19,155,49,187,74,154,243,209,125,141,137,53,48,140,75,95,7,142,13,225,94,143,207,139,105,138,128,157,236,139,66,247,219,137,4,73,130,136,198,35,181,131,154,100,136,130,88,14,191,128,30,176,230,129,220,218,209,132,147,204,84,133,81,166,99,135,23,24,58,134,213,114,13,169,226,208,160,168,32,186,151,170,102,4,206,171,164,110,249,174,235,120,124,175,41,18,75,173,111,172,18,172,173,198,37,167,241,129,24,166,51,235,47,164,117,85,118,165,183,63,65,160,248,41,196,161,58,67,243,163,124,253,170,162,190,151,157,181,196,115,208,180,6,25,231,182,64,167,190,183,130,205,137,178,205,219,12,179,15,177,59,177,73,15,98,176,139,101,85,187,215,34,104,186,21,72,95,184,83,246,6,185,145,156,49,188,222,138,180,189,28,224,131,191,90,94,218,190,152,52,237,0,0,0,0,184,188,103,101,170,9,200,139,18,181,175,238,143,98,151,87,55,222,240,50,37,107,95,220,157,215,56,185,197,180,40,239,125,8,79,138,111,189,224,100,215,1,135,1,74,214,191,184,242,106,216,221,224,223,119,51,88,99,16,86,80,25,87,159,232,165,48,250,250,16,159,20,66,172,248,113,223,123,192,200,103,199,167,173,117,114,8,67,205,206,111,38,149,173,127,112,45,17,24,21,63,164,183,251,135,24,208,158,26,207,232,39,162,115,143,66,176,198,32,172,8,122,71,201,160,50,175,62,24,142,200,91,10,59,103,181,178,135,0,208,47,80,56,105,151,236,95,12,133,89,240,226,61,229,151,135,101,134,135,209,221,58,224,180,207,143,79,90,119,51,40,63,234,228,16,134,82,88,119,227,64,237,216,13,248,81,191,104,240,43,248,161,72,151,159,196,90,34,48,42,226,158,87,79,127,73,111,246,199,245,8,147,213,64,167,125,109,252,192,24,53,159,208,78,141,35,183,43,159,150,24,197,39,42,127,160,186,253,71,25,2,65,32,124,16,244,143,146,168,72,232,247,155,20,88,61,35,168,63,88,49,29,144,182,137,161,247,211,20,118,207,106,172,202,168,15,190,127,7,225,6,195,96,132,94,160,112,210,230,28,23,183,244,169,184,89,76,21,223,60,209,194,231,133,105,126,128,224,123,203,47,14,195,119,72,107,203,13,15,162,115,177,104,199,97,4,199,41,217,184,160,76,68,111,152,245,252,211,255,144,238,102,80,126,86,218,55,27,14,185,39,77,182,5,64,40,164,176,239,198,28,12,136,163,129,219,176,26,57,103,215,127,43,210,120,145,147,110,31,244,59,38,247,3,131,154,144,102,145,47,63,136,41,147,88,237,180,68,96,84,12,248,7,49,30,77,168,223,166,241,207,186,254,146,223,236,70,46,184,137,84,155,23,103,236,39,112,2,113,240,72,187,201,76,47,222,219,249,128,48,99,69,231,85,107,63,160,156,211,131,199,249,193,54,104,23,121,138,15,114,228,93,55,203,92,225,80,174,78,84,255,64,246,232,152,37,174,139,136,115,22,55,239,22,4,130,64,248,188,62,39,157,33,233,31,36,153,85,120,65,139,224,215,175,51,92,176,202,237,89,182,59,85,229,209,94,71,80,126,176,255,236,25,213,98,59,33,108,218,135,70,9,200,50,233,231,112,142,142,130,40,237,158,212,144,81,249,177,130,228,86,95,58,88,49,58,167,143,9,131,31,51,110,230,13,134,193,8,181,58,166,109,189,64,225,164,5,252,134,193,23,73,41,47,175,245,78,74,50,34,118,243,138,158,17,150,152,43,190,120,32,151,217,29,120,244,201,75,192,72,174,46,210,253,1,192,106,65,102,165,247,150,94,28,79,42,57,121,93,159,150,151,229,35,241,242,77,107,25,5,245,215,126,96,231,98,209,142,95,222,182,235,194,9,142,82,122,181,233,55,104,0,70,217,208,188,33,188,136,223,49,234,48,99,86,143,34,214,249,97,154,106,158,4,7,189,166,189,191,1,193,216,173,180,110,54,21,8,9,83,29,114,78,154,165,206,41,255,183,123,134,17,15,199,225,116,146,16,217,205,42,172,190,168,56,25,17,70,128,165,118,35,216,198,102,117,96,122,1,16,114,207,174,254,202,115,201,155,87,164,241,34,239,24,150,71,253,173,57,169,69,17,94,204,118,77,238,6,206,241,137,99,220,68,38,141,100,248,65,232,249,47,121,81,65,147,30,52,83,38,177,218,235,154,214,191,179,249,198,233,11,69,161,140,25,240,14,98,161,76,105,7,60,155,81,190,132,39,54,219,150,146,153,53,46,46,254,80,38,84,185,153,158,232,222,252,140,93,113,18,52,225,22,119,169,54,46,206,17,138,73,171,3,63,230,69,187,131,129,32,227,224,145,118,91,92,246,19,73,233,89,253,241,85,62,152,108,130,6,33,212,62,97,68,198,139,206,170,126,55,169,207,214,127,65,56,110,195,38,93,124,118,137,179,196,202,238,214,89,29,214,111,225,161,177,10,243,20,30,228,75,168,121,129,19,203,105,215,171,119,14,178,185,194,161,92,1,126,198,57,156,169,254,128,36,21,153,229,54,160,54,11,142,28,81,110,134,102,22,167,62,218,113,194,44,111,222,44,148,211,185,73,9,4,129,240,177,184,230,149,163,13,73,123,27,177,46,30,67,210,62,72,251,110,89,45,233,219,246,195,81,103,145,166,204,176,169,31,116,12,206,122,102,185,97,148,222,5,6,241,16,0,0,0,11,0,0,0,10,0,0,0,16,0,0,0,24,0,0,0,40,0,0,0,51,0,0,0,61,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,19,0,0,0,26,0,0,0,58,0,0,0,60,0,0,0,55,0,0,0,14,0,0,0,13,0,0,0,16,0,0,0,24,0,0,0,40,0,0,0,57,0,0,0,69,0,0,0,56,0,0,0,14,0,0,0,17,0,0,0,22,0,0,0,29,0,0,0,51,0,0,0,87,0,0,0,80,0,0,0,62,0,0,0,18,0,0,0,22,0,0,0,37,0,0,0,56,0,0,0,68,0,0,0,109,0,0,0,103,0,0,0,77,0,0,0,24,0,0,0,35,0,0,0,55,0,0,0,64,0,0,0,81,0,0,0,104,0,0,0,113,0,0,0,92,0,0,0,49,0,0,0,64,0,0,0,78,0,0,0,87,0,0,0,103,0,0,0,121,0,0,0,120,0,0,0,101,0,0,0,72,0,0,0,92,0,0,0,95,0,0,0,98,0,0,0,112,0,0,0,100,0,0,0,103,0,0,0,99,0,0,0,17,0,0,0,18,0,0,0,24,0,0,0,47,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,18,0,0,0,21,0,0,0,26,0,0,0,66,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,24,0,0,0,26,0,0,0,56,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,47,0,0,0,66,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,121,98,2,0,143,98,2,0,175,98,2,0,212,98,2,0,238,98,2,0,13,99,2,0,34,99,2,0,63,99,2,0,105,99,2,0,169,99,2,0,200,99,2,0,223,99,2,0,245,99,2,0,9,100,2,0,70,100,2,0,118,100,2,0,146,100,2,0,181,100,2,0,236,100,2,0,35,101,2,0,58,101,2,0,90,101,2,0,132,101,2,0,209,101,2,0,236,101,2,0,23,102,2,0,51,102,2,0,88,102,2,0,126,102,2,0,163,102,2,0,182,102,2,0,203,102,2,0,222,102,2,0,241,102,2,0,22,103,2,0,43,103,2,0,63,103,2,0,96,103,2,0,118,103,2,0,165,103,2,0,205,103,2,0,238,103,2,0,15,104,2,0,62,104,2,0,79,104,2,0,107,104,2,0,169,104,2,0,208,104,2,0,247,104,2,0,11,105,2,0,57,105,2,0,97,105,2,0,125,105,2,0,162,105,2,0,196,105,2,0,238,105,2,0,25,106,2,0,55,106,2,0,101,106,2,0,141,106,2,0,180,106,2,0,223,106,2,0,12,107,2,0,60,107,2,0,102,107,2,0,147,107,2,0,182,107,2,0,212,107,2,0,242,107,2,0,40,108,2,0,82,108,2,0,113,108,2,0,148,108,2,0,187,108,2,0,208,108,2,0,228,108,2,0,25,109,2,0,41,109,2,0,103,109,2,0,169,109,2,0,211,109,2,0,255,109,2,0,38,110,2,0,66,110,2,0,109,110,2,0,136,110,2,0,156,110,2,0,179,110,2,0,192,110,2,0,232,110,2,0,29,111,2,0,89,111,2,0,135,111,2,0,168,111,2,0,207,111,2,0,232,111,2,0,16,112,2,0,51,112,2,0,75,112,2,0,111,112,2,0,148,112,2,0,154,112,2,0,211,112,2,0,13,113,2,0,44,113,2,0,59,113,2,0,88,113,2,0,118,113,2,0,147,113,2,0,172,113,2,0,197,113,2,0,7,114,2,0,65,114,2,0,119,114,2,0,171,114,2,0,191,114,2,0,214,114,2,0,252,114,2,0,35,115,2,0,101,115,2,0,161,115,2,0,210,115,2,0,246,115,2,0,36,116,2,0,63,116,2,0,119,116,2,0,162,116,2,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,0,0,0,9,0,0,0,2,0,0,0,3,0,0,0,10,0,0,0,17,0,0,0,24,0,0,0,32,0,0,0,25,0,0,0,18,0,0,0,11,0,0,0,4,0,0,0,5,0,0,0,12,0,0,0,19,0,0,0,26,0,0,0,33,0,0,0,40,0,0,0,48,0,0,0,41,0,0,0,34,0,0,0,27,0,0,0,20,0,0,0,13,0,0,0,6,0,0,0,7,0,0,0,14,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,42,0,0,0,49,0,0,0,56,0,0,0,57,0,0,0,50,0,0,0,43,0,0,0,36,0,0,0,29,0,0,0,22,0,0,0,15,0,0,0,23,0,0,0,30,0,0,0,37,0,0,0,44,0,0,0,51,0,0,0,58,0,0,0,59,0,0,0,52,0,0,0,45,0,0,0,38,0,0,0,31,0,0,0,39,0,0,0,46,0,0,0,53,0,0,0,60,0,0,0,61,0,0,0,54,0,0,0,47,0,0,0,55,0,0,0,62,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,0,0,0,9,0,0,0,2,0,0,0,3,0,0,0,10,0,0,0,17,0,0,0,24,0,0,0,32,0,0,0,25,0,0,0,18,0,0,0,11,0,0,0,4,0,0,0,5,0,0,0,12,0,0,0,19,0,0,0,26,0,0,0,33,0,0,0,40,0,0,0,48,0,0,0,41,0,0,0,34,0,0,0,27,0,0,0,20,0,0,0,13,0,0,0,6,0,0,0,14,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,42,0,0,0,49,0,0,0,50,0,0,0,43,0,0,0,36,0,0,0,29,0,0,0,22,0,0,0,30,0,0,0,37,0,0,0,44,0,0,0,51,0,0,0,52,0,0,0,45,0,0,0,38,0,0,0,46,0,0,0,53,0,0,0,54,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,0,0,0,9,0,0,0,2,0,0,0,3,0,0,0,10,0,0,0,17,0,0,0,24,0,0,0,32,0,0,0,25,0,0,0,18,0,0,0,11,0,0,0,4,0,0,0,5,0,0,0,12,0,0,0,19,0,0,0,26,0,0,0,33,0,0,0,40,0,0,0,41,0,0,0,34,0,0,0,27,0,0,0,20,0,0,0,13,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,42,0,0,0,43,0,0,0,36,0,0,0,29,0,0,0,37,0,0,0,44,0,0,0,45,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,0,0,0,9,0,0,0,2,0,0,0,3,0,0,0,10,0,0,0,17,0,0,0,24,0,0,0,32,0,0,0,25,0,0,0,18,0,0,0,11,0,0,0,4,0,0,0,12,0,0,0,19,0,0,0,26,0,0,0,33,0,0,0,34,0,0,0,27,0,0,0,20,0,0,0,28,0,0,0,35,0,0,0,36,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,0,0,0,9,0,0,0,2,0,0,0,3,0,0,0,10,0,0,0,17,0,0,0,24,0,0,0,25,0,0,0,18,0,0,0,11,0,0,0,19,0,0,0,26,0,0,0,27,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,16,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,17,0,0,0,18,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,0,0,0,0,1,0,0,0,8,0,0,0,9,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,64,6,0,0,128,62,0,0,0,0,0,0,136,19,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,2,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,12,0,0,0,3,0,0,0,8,0,0,0,11,0,0,0,13,0,0,0,9,0,0,0,10,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,14,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,13,0,0,0,15,0,0,0,3,0,0,0,8,0,0,0,12,0,0,0,16,0,0,0,21,0,0,0,9,0,0,0,11,0,0,0,17,0,0,0,20,0,0,0,22,0,0,0,10,0,0,0,18,0,0,0,19,0,0,0,23,0,0,0,24,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,14,0,0,0,15,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,13,0,0,0,16,0,0,0,25,0,0,0,3,0,0,0,8,0,0,0,12,0,0,0,17,0,0,0,24,0,0,0,26,0,0,0,9,0,0,0,11,0,0,0,18,0,0,0,23,0,0,0,27,0,0,0,32,0,0,0,10,0,0,0,19,0,0,0,22,0,0,0,28,0,0,0,31,0,0,0,33,0,0,0,20,0,0,0,21,0,0,0,29,0,0,0,30,0,0,0,34,0,0,0,35,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,14,0,0,0,15,0,0,0,27,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,13,0,0,0,16,0,0,0,26,0,0,0,28,0,0,0,3,0,0,0,8,0,0,0,12,0,0,0,17,0,0,0,25,0,0,0,29,0,0,0,38,0,0,0,9,0,0,0,11,0,0,0,18,0,0,0,24,0,0,0,30,0,0,0,37,0,0,0,39,0,0,0,10,0,0,0,19,0,0,0,23,0,0,0,31,0,0,0,36,0,0,0,40,0,0,0,45,0,0,0,20,0,0,0,22,0,0,0,32,0,0,0,35,0,0,0,41,0,0,0,44,0,0,0,46,0,0,0,21,0,0,0,33,0,0,0,34,0,0,0,42,0,0,0,43,0,0,0,47,0,0,0,48,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,6,0,0,0,14,0,0,0,15,0,0,0,27,0,0,0,28,0,0,0,2,0,0,0,4,0,0,0,7,0,0,0,13,0,0,0,16,0,0,0,26,0,0,0,29,0,0,0,42,0,0,0,3,0,0,0,8,0,0,0,12,0,0,0,17,0,0,0,25,0,0,0,30,0,0,0,41,0,0,0,43,0,0,0,9,0,0,0,11,0,0,0,18,0,0,0,24,0,0,0,31,0,0,0,40,0,0,0,44,0,0,0,53,0,0,0,10,0,0,0,19,0,0,0,23,0,0,0,32,0,0,0,39,0,0,0,45,0,0,0,52,0,0,0,54,0,0,0,20,0,0,0,22,0,0,0,33,0,0,0,38,0,0,0,46,0,0,0,51,0,0,0,55,0,0,0,60,0,0,0,21,0,0,0,34,0,0,0,37,0,0,0,47,0,0,0,50,0,0,0,56,0,0,0,59,0,0,0,61,0,0,0,35,0,0,0,36,0,0,0,48,0,0,0,49,0,0,0,57,0,0,0,58,0,0,0,62,0,0,0,63,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,7,0,0,0,15,0,0,0,31,0,0,0,63,0,0,0,127,0,0,0,255,0,0,0,255,1,0,0,255,3,0,0,255,7,0,0,255,15,0,0,255,31,0,0,255,63,0,0,255,127,0,0,129,1,29,90,14,2,134,37,16,3,20,17,18,4,11,8,20,5,216,3,23,6,218,1,25,7,229,0,28,8,111,0,30,9,54,0,33,10,26,0,35,11,13,0,9,12,6,0,10,13,3,0,12,13,1,0,143,15,127,90,36,16,37,63,38,17,242,44,39,18,124,32,40,19,185,23,42,20,130,17,43,21,239,12,45,22,161,9,46,23,47,7,48,24,92,5,49,25,6,4,51,26,3,3,52,27,64,2,54,28,177,1,56,29,68,1,57,30,245,0,59,31,183,0,60,32,138,0,62,33,104,0,63,34,78,0,32,35,59,0,33,9,44,0,165,37,225,90,64,38,76,72,65,39,13,58,67,40,241,46,68,41,31,38,69,42,51,31,70,43,168,25,72,44,24,21,73,45,119,17,74,46,116,14,75,47,251,11,77,48,248,9,78,49,97,8,79,50,6,7,48,51,205,5,50,52,222,4,50,53,15,4,51,54,99,3,52,55,212,2,53,56,92,2,54,57,248,1,55,58,164,1,56,59,96,1,57,60,37,1,58,61,246,0,59,62,203,0,61,63,171,0,61,32,143,0,193,65,18,91,80,66,4,77,81,67,44,65,82,68,216,55,83,69,232,47,84,70,60,41,86,71,121,35,87,72,223,30,87,73,169,26,72,74,78,23,72,75,36,20,74,76,156,17,74,77,107,15,75,78,81,13,77,79,182,11,77,48,64,10,208,81,50,88,88,82,28,77,89,83,142,67,90,84,221,59,91,85,238,52,92,86,174,46,93,87,154,41,86,71,22,37,216,89,112,85,95,90,169,76,96,91,217,68,97,92,34,62,99,93,36,56,99,94,180,50,93,86,23,46,223,96,168,86,101,97,70,79,102,98,229,71,103,99,207,65,104,100,61,60,99,93,94,55,105,102,49,82,106,103,15,76,107,104,57,70,103,99,94,65,233,106,39,86,108,107,231,80,109,103,133,75,110,109,151,85,111,107,79,80,238,111,16,90,112,109,34,85,240,111,235,89,113,113,29,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,120,224,1,0,232,224,1,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+112640);allocate([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,102,130,2,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,0,0,0,94,126,2,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,53,0,0,0,6,0,7,0,1,0,4,0,7,0,2,0,4,0,8,0,3,0,4,0,11,0,4,0,4,0,12,0,5,0,4,0,14,0,6,0,4,0,15,0,7,0,5,0,19,0,8,0,5,0,20,0,9,0,5,0,7,0,10,0,5,0,8,0,11,0,6,0,8,0,12,0,6,0,3,0,13,0,6,0,52,0,14,0,6,0,53,0,15,0,6,0,42,0,16,0,6,0,43,0,17,0,7,0,39,0,18,0,7,0,12,0,19,0,7,0,8,0,20,0,7,0,23,0,21,0,7,0,3,0,22,0,7,0,4,0,23,0,7,0,40,0,24,0,7,0,43,0,25,0,7,0,19,0,26,0,7,0,36,0,27,0,7,0,24,0,28,0,8,0,2,0,29,0,8,0,3,0,30,0,8,0,26,0,31,0,8,0,27,0,32,0,8,0,18,0,33,0,8,0,19,0,34,0,8,0,20,0,35,0,8,0,21,0,36,0,8,0,22,0,37,0,8,0,23,0,38,0,8,0,40,0,39,0,8,0,41,0,40,0,8,0,42,0,41,0,8,0,43,0,42,0,8,0,44,0,43,0,8,0,45,0,44,0,8,0,4,0,45,0,8,0,5,0,46,0,8,0,10,0,47,0,8,0,11,0,48,0,8,0,82,0,49,0,8,0,83,0,50,0,8,0,84,0,51,0,8,0,85,0,52,0,8,0,36,0,53,0,8,0,37,0,54,0,8,0,88,0,55,0,8,0,89,0,56,0,8,0,90,0,57,0,8,0,91,0,58,0,8,0,74,0,59,0,8,0,75,0,60,0,8,0,50,0,61,0,8,0,51,0,62,0,8,0,52,0,63,0,5,0,27,0,64,0,5,0,18,0,128,0,6,0,23,0,192,0,7,0,55,0,0,1,8,0,54,0,64,1,8,0,55,0,128,1,8,0,100,0,192,1,8,0,101,0,0,2,8,0,104,0,64,2,8,0,103,0,128,2,9,0,204,0,192,2,9,0,205,0,0,3,9,0,210,0,64,3,9,0,211,0,128,3,9,0,212,0,192,3,9,0,213,0,0,4,9,0,214,0,64,4,9,0,215,0,128,4,9,0,216,0,192,4,9,0,217,0,0,5,9,0,218,0,64,5,9,0,219,0,128,5,9,0,152,0,192,5,9,0,153,0,0,6,9,0,154,0,64,6,6,0,24,0,128,6,9,0,155,0,192,6,11,0,8,0,0,7,11,0,12,0,64,7,11,0,13,0,128,7,12,0,18,0,192,7,12,0,19,0,0,8,12,0,20,0,64,8,12,0,21,0,128,8,12,0,22,0,192,8,12,0,23,0,0,9,12,0,28,0,64,9,12,0,29,0,128,9,12,0,30,0,192,9,12,0,31,0,0,10,12,0,1,0,255,255,9,0,1,0,254,255,10,0,1,0,254,255,11,0,1,0,254,255,12,0,0,0,254,255,10,0,55,0,0,0,3,0,2,0,1,0,2,0,3,0,2,0,2,0,2,0,3,0,3,0,3,0,4,0,4,0,3,0,5,0,4,0,2,0,6,0,5,0,3,0,7,0,6,0,5,0,8,0,6,0,4,0,9,0,7,0,4,0,10,0,7,0,5,0,11,0,7,0,7,0,12,0,8,0,4,0,13,0,8,0,7,0,14,0,9,0,24,0,15,0,10,0,23,0,16,0,10,0,24,0,17,0,10,0,8,0,18,0,11,0,103,0,19,0,11,0,104,0,20,0,11,0,108,0,21,0,11,0,55,0,22,0,11,0,40,0,23,0,11,0,23,0,24,0,11,0,24,0,25,0,12,0,202,0,26,0,12,0,203,0,27,0,12,0,204,0,28,0,12,0,205,0,29,0,12,0,104,0,30,0,12,0,105,0,31,0,12,0,106,0,32,0,12,0,107,0,33,0,12,0,210,0,34,0,12,0,211,0,35,0,12,0,212,0,36,0,12,0,213,0,37,0,12,0,214,0,38,0,12,0,215,0,39,0,12,0,108,0,40,0,12,0,109,0,41,0,12,0,218,0,42,0,12,0,219,0,43,0,12,0,84,0,44,0,12,0,85,0,45,0,12,0,86,0,46,0,12,0,87,0,47,0,12,0,100,0,48,0,12,0,101,0,49,0,12,0,82,0,50,0,12,0,83,0,51,0,12,0,36,0,52,0,12,0,55,0,53,0,12,0,56,0,54,0,12,0,39,0,55,0,12,0,40,0,56,0,12,0,88,0,57,0,12,0,89,0,58,0,12,0,43,0,59,0,12,0,44,0,60,0,12,0,90,0,61,0,12,0,102,0,62,0,12,0,103,0,63,0,10,0,15,0,64,0,12,0,200,0,128,0,12,0,201,0,192,0,12,0,91,0,0,1,12,0,51,0,64,1,12,0,52,0,128,1,12,0,53,0,192,1,13,0,108,0,0,2,13,0,109,0,64,2,13,0,74,0,128,2,13,0,75,0,192,2,13,0,76,0,0,3,13,0,77,0,64,3,13,0,114,0,128,3,13,0,115,0,192,3,13,0,116,0,0,4,13,0,117,0,64,4,13,0,118,0,128,4,13,0,119,0,192,4,13,0,82,0,0,5,13,0,83,0,64,5,13,0,84,0,128,5,13,0,85,0,192,5,13,0,90,0,0,6,13,0,91,0,64,6,13,0,100,0,128,6,13,0,101,0,192,6,11,0,8,0,0,7,11,0,12,0,64,7,11,0,13,0,128,7,12,0,18,0,192,7,12,0,19,0,0,8,12,0,20,0,64,8,12,0,21,0,128,8,12,0,22,0,192,8,12,0,23,0,0,9,12,0,28,0,64,9,12,0,29,0,128,9,12,0,30,0,192,9,12,0,31,0,0,10,12,0,1,0,255,255,9,0,1,0,254,255,10,0,1,0,254,255,11,0,1,0,254,255,12,0,0,0,254,255,7,0,3,0,0,0,6,0,3,0,0,0,3,0,3,0,0,0,1,0,1,0,0,0,3,0,2,0,0,0,6,0,2,0,0,0,7,0,2,0,0,0,96,7,0,0,0,8,80,0,0,8,16,0,20,8,115,0,18,7,31,0,0,8,112,0,0,8,48,0,0,9,192,0,16,7,10,0,0,8,96,0,0,8,32,0,0,9,160,0,0,8,0,0,0,8,128,0,0,8,64,0,0,9,224,0,16,7,6,0,0,8,88,0,0,8,24,0,0,9,144,0,19,7,59,0,0,8,120,0,0,8,56,0,0,9,208,0,17,7,17,0,0,8,104,0,0,8,40,0,0,9,176,0,0,8,8,0,0,8,136,0,0,8,72,0,0,9,240,0,16,7,4,0,0,8,84,0,0,8,20,0,21,8,227,0,19,7,43,0,0,8,116,0,0,8,52,0,0,9,200,0,17,7,13,0,0,8,100,0,0,8,36,0,0,9,168,0,0,8,4,0,0,8,132,0,0,8,68,0,0,9,232,0,16,7,8,0,0,8,92,0,0,8,28,0,0,9,152,0,20,7,83,0,0,8,124,0,0,8,60,0,0,9,216,0,18,7,23,0,0,8,108,0,0,8,44,0,0,9,184,0,0,8,12,0,0,8,140,0,0,8,76,0,0,9,248,0,16,7,3,0,0,8,82,0,0,8,18,0,21,8,163,0,19,7,35,0,0,8,114,0,0,8,50,0,0,9,196,0,17,7,11,0,0,8,98,0,0,8,34,0,0,9,164,0,0,8,2,0,0,8,130,0,0,8,66,0,0,9,228,0,16,7,7,0,0,8,90,0,0,8,26,0,0,9,148,0,20,7,67,0,0,8,122,0,0,8,58,0,0,9,212,0,18,7,19,0,0,8,106,0,0,8,42,0,0,9,180,0,0,8,10,0,0,8,138,0,0,8,74,0,0,9,244,0,16,7,5,0,0,8,86,0,0,8,22,0,64,8,0,0,19,7,51,0,0,8,118,0,0,8,54,0,0,9,204,0,17,7,15,0,0,8,102,0,0,8,38,0,0,9,172,0,0,8,6,0,0,8,134,0,0,8,70,0,0,9,236,0,16,7,9,0,0,8,94,0,0,8,30,0,0,9,156,0,20,7,99,0,0,8,126,0,0,8,62,0,0,9,220,0,18,7,27,0,0,8,110,0,0,8,46,0,0,9,188,0,0,8,14,0,0,8,142,0,0,8,78,0,0,9,252,0,96,7,0,0,0,8,81,0,0,8,17,0,21,8,131,0,18,7,31,0,0,8,113,0,0,8,49,0,0,9,194,0,16,7,10,0,0,8,97,0,0,8,33,0,0,9,162,0,0,8,1,0,0,8,129,0,0,8,65,0,0,9,226,0,16,7,6,0,0,8,89,0,0,8,25,0,0,9,146,0,19,7,59,0,0,8,121,0,0,8,57,0,0,9,210,0,17,7,17,0,0,8,105,0,0,8,41,0,0,9,178,0,0,8,9,0,0,8,137,0,0,8,73,0,0,9,242,0,16,7,4,0,0,8,85,0,0,8,21,0,16,8,2,1,19,7,43,0,0,8,117,0,0,8,53,0,0,9,202,0,17,7,13,0,0,8,101,0,0,8,37,0,0,9,170,0,0,8,5,0,0,8,133,0,0,8,69,0,0,9,234,0,16,7,8,0,0,8,93,0,0,8,29,0,0,9,154,0,20,7,83,0,0,8,125,0,0,8,61,0,0,9,218,0,18,7,23,0,0,8,109,0,0,8,45,0,0,9,186,0,0,8,13,0,0,8,141,0,0,8,77,0,0,9,250,0,16,7,3,0,0,8,83,0,0,8,19,0,21,8,195,0,19,7,35,0,0,8,115,0,0,8,51,0,0,9,198,0,17,7,11,0,0,8,99,0,0,8,35,0,0,9,166,0,0,8,3,0,0,8,131,0,0,8,67,0,0,9,230,0,16,7,7,0,0,8,91,0,0,8,27,0,0,9,150,0,20,7,67,0,0,8,123,0,0,8,59,0,0,9,214,0,18,7,19,0,0,8,107,0,0,8,43,0,0,9,182,0,0,8,11,0,0,8,139,0,0,8,75,0,0,9,246,0,16,7,5,0,0,8,87,0,0,8,23,0,64,8,0,0,19,7,51,0,0,8,119,0,0,8,55,0,0,9,206,0,17,7,15,0,0,8,103,0,0,8,39,0,0,9,174,0,0,8,7,0,0,8,135,0,0,8,71,0,0,9,238,0,16,7,9,0,0,8,95,0,0,8,31,0,0,9,158,0,20,7,99,0,0,8,127,0,0,8,63,0,0,9,222,0,18,7,27,0,0,8,111,0,0,8,47,0,0,9,190,0,0,8,15,0,0,8,143,0,0,8,79,0,0,9,254,0,96,7,0,0,0,8,80,0,0,8,16,0,20,8,115,0,18,7,31,0,0,8,112,0,0,8,48,0,0,9,193,0,16,7,10,0,0,8,96,0,0,8,32,0,0,9,161,0,0,8,0,0,0,8,128,0,0,8,64,0,0,9,225,0,16,7,6,0,0,8,88,0,0,8,24,0,0,9,145,0,19,7,59,0,0,8,120,0,0,8,56,0,0,9,209,0,17,7,17,0,0,8,104,0,0,8,40,0,0,9,177,0,0,8,8,0,0,8,136,0,0,8,72,0,0,9,241,0,16,7,4,0,0,8,84,0,0,8,20,0,21,8,227,0,19,7,43,0,0,8,116,0,0,8,52,0,0,9,201,0,17,7,13,0,0,8,100,0,0,8,36,0,0,9,169,0,0,8,4,0,0,8,132,0,0,8,68,0,0,9,233,0,16,7,8,0,0,8,92,0,0,8,28,0,0,9,153,0,20,7,83,0,0,8,124,0,0,8,60,0,0,9,217,0,18,7,23,0,0,8,108,0,0,8,44,0,0,9,185,0,0,8,12,0,0,8,140,0,0,8,76,0,0,9,249,0,16,7,3,0,0,8,82,0,0,8,18,0,21,8,163,0,19,7,35,0,0,8,114,0,0,8,50,0,0,9,197,0,17,7,11,0,0,8,98,0,0,8,34,0,0,9,165,0,0,8,2,0,0,8,130,0,0,8,66,0,0,9,229,0,16,7,7,0,0,8,90,0,0,8,26,0,0,9,149,0,20,7,67,0,0,8,122,0,0,8,58,0,0,9,213,0,18,7,19,0,0,8,106,0,0,8,42,0,0,9,181,0,0,8,10,0,0,8,138,0,0,8,74,0,0,9,245,0,16,7,5,0,0,8,86,0,0,8,22,0,64,8,0,0,19,7,51,0,0,8,118,0,0,8,54,0,0,9,205,0,17,7,15,0,0,8,102,0,0,8,38,0,0,9,173,0,0,8,6,0,0,8,134,0,0,8,70,0,0,9,237,0,16,7,9,0,0,8,94,0,0,8,30,0,0,9,157,0,20,7,99,0,0,8,126,0,0,8,62,0,0,9,221,0,18,7,27,0,0,8,110,0,0,8,46,0,0,9,189,0,0,8,14,0,0,8,142,0,0,8,78,0,0,9,253,0,96,7,0,0,0,8,81,0,0,8,17,0,21,8,131,0,18,7,31,0,0,8,113,0,0,8,49,0,0,9,195,0,16,7,10,0,0,8,97,0,0,8,33,0,0,9,163,0,0,8,1,0,0,8,129,0,0,8,65,0,0,9,227,0,16,7,6,0,0,8,89,0,0,8,25,0,0,9,147,0,19,7,59,0,0,8,121,0,0,8,57,0,0,9,211,0,17,7,17,0,0,8,105,0,0,8,41,0,0,9,179,0,0,8,9,0,0,8,137,0,0,8,73,0,0,9,243,0,16,7,4,0,0,8,85,0,0,8,21,0,16,8,2,1,19,7,43,0,0,8,117,0,0,8,53,0,0,9,203,0,17,7,13,0,0,8,101,0,0,8,37,0,0,9,171,0,0,8,5,0,0,8,133,0,0,8,69,0,0,9,235,0,16,7,8,0,0,8,93,0,0,8,29,0,0,9,155,0,20,7,83,0,0,8,125,0,0,8,61,0,0,9,219,0,18,7,23,0,0,8,109,0,0,8,45,0,0,9,187,0,0,8,13,0,0,8,141,0,0,8,77,0,0,9,251,0,16,7,3,0,0,8,83,0,0,8,19,0,21,8,195,0,19,7,35,0,0,8,115,0,0,8,51,0,0,9,199,0,17,7,11,0,0,8,99,0,0,8,35,0,0,9,167,0,0,8,3,0,0,8,131,0,0,8,67,0,0,9,231,0,16,7,7,0,0,8,91,0,0,8,27,0,0,9,151,0,20,7,67,0,0,8,123,0,0,8,59,0,0,9,215,0,18,7,19,0,0,8,107,0,0,8,43,0,0,9,183,0,0,8,11,0,0,8,139,0,0,8,75,0,0,9,247,0,16,7,5,0,0,8,87,0,0,8,23,0,64,8,0,0,19,7,51,0,0,8,119,0,0,8,55,0,0,9,207,0,17,7,15,0,0,8,103,0,0,8,39,0,0,9,175,0,0,8,7,0,0,8,135,0,0,8,71,0,0,9,239,0,16,7,9,0,0,8,95,0,0,8,31,0,0,9,159,0,20,7,99,0,0,8,127,0,0,8,63,0,0,9,223,0,18,7,27,0,0,8,111,0,0,8,47,0,0,9,191,0,0,8,15,0,0,8,143,0,0,8,79,0,0,9,255,0,16,5,1,0,23,5,1,1,19,5,17,0,27,5,1,16,17,5,5,0,25,5,1,4,21,5,65,0,29,5,1,64,16,5,3,0,24,5,1,2,20,5,33,0,28,5,1,32,18,5,9,0,26,5,1,8,22,5,129,0,64,5,0,0,16,5,2,0,23,5,129,1,19,5,25,0,27,5,1,24,17,5,7,0,25,5,1,6,21,5,97,0,29,5,1,96,16,5,4,0,24,5,1,3,20,5,49,0,28,5,1,48,18,5,13,0,26,5,1,12,22,5,193,0,64,5,0,0,16,0,17,0,18,0,0,0,8,0,7,0,9,0,6,0,10,0,5,0,11,0,4,0,12,0,3,0,13,0,2,0,14,0,1,0,15,0,1,0,2,0,3,0,4,0,5,0,7,0,9,0,13,0,17,0,25,0,33,0,49,0,65,0,97,0,129,0,193,0,1,1,129,1,1,2,1,3,1,4,1,6,1,8,1,12,1,16,1,24,1,32,1,48,1,64,1,96,0,0,0,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,13,0,15,0,17,0,19,0,23,0,27,0,31,0,35,0,43,0,51,0,59,0,67,0,83,0,99,0,115,0,131,0,163,0,195,0,227,0,2,1,0,0,0,0,16,0,16,0,16,0,16,0,17,0,17,0,18,0,18,0,19,0,19,0,20,0,20,0,21,0,21,0,22,0,22,0,23,0,23,0,24,0,24,0,25,0,25,0,26,0,26,0,27,0,27,0,28,0,28,0,29,0,29,0,64,0,64,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,17,0,17,0,17,0,17,0,18,0,18,0,18,0,18,0,19,0,19,0,19,0,19,0,20,0,20,0,20,0,20,0,21,0,21,0,21,0,21,0,16,0,72,0,78,0,12,0,8,0,140,0,8,0,76,0,8,0,204,0,8,0,44,0,8,0,172,0,8,0,108,0,8,0,236,0,8,0,28,0,8,0,156,0,8,0,92,0,8,0,220,0,8,0,60,0,8,0,188,0,8,0,124,0,8,0,252,0,8,0,2,0,8,0,130,0,8,0,66,0,8,0,194,0,8,0,34,0,8,0,162,0,8,0,98,0,8,0,226,0,8,0,18,0,8,0,146,0,8,0,82,0,8,0,210,0,8,0,50,0,8,0,178,0,8,0,114,0,8,0,242,0,8,0,10,0,8,0,138,0,8,0,74,0,8,0,202,0,8,0,42,0,8,0,170,0,8,0,106,0,8,0,234,0,8,0,26,0,8,0,154,0,8,0,90,0,8,0,218,0,8,0,58,0,8,0,186,0,8,0,122,0,8,0,250,0,8,0,6,0,8,0,134,0,8,0,70,0,8,0,198,0,8,0,38,0,8,0,166,0,8,0,102,0,8,0,230,0,8,0,22,0,8,0,150,0,8,0,86,0,8,0,214,0,8,0,54,0,8,0,182,0,8,0,118,0,8,0,246,0,8,0,14,0,8,0,142,0,8,0,78,0,8,0,206,0,8,0,46,0,8,0,174,0,8,0,110,0,8,0,238,0,8,0,30,0,8,0,158,0,8,0,94,0,8,0,222,0,8,0,62,0,8,0,190,0,8,0,126,0,8,0,254,0,8,0,1,0,8,0,129,0,8,0,65,0,8,0,193,0,8,0,33,0,8,0,161,0,8,0,97,0,8,0,225,0,8,0,17,0,8,0,145,0,8,0,81,0,8,0,209,0,8,0,49,0,8,0,177,0,8,0,113,0,8,0,241,0,8,0,9,0,8,0,137,0,8,0,73,0,8,0,201,0,8,0,41,0,8,0,169,0,8,0,105,0,8,0,233,0,8,0,25,0,8,0,153,0,8,0,89,0,8,0,217,0,8,0,57,0,8,0,185,0,8,0,121,0,8,0,249,0,8,0,5,0,8,0,133,0,8,0,69,0,8,0,197,0,8,0,37,0,8,0,165,0,8,0,101,0,8,0,229,0,8,0,21,0,8,0,149,0,8,0,85,0,8,0,213,0,8,0,53,0,8,0,181,0,8,0,117,0,8,0,245,0,8,0,13,0,8,0,141,0,8,0,77,0,8,0,205,0,8,0,45,0,8,0,173,0,8,0,109,0,8,0,237,0,8,0,29,0,8,0,157,0,8,0,93,0,8,0,221,0,8,0,61,0,8,0,189,0,8,0,125,0,8,0,253,0,8,0,19,0,9,0,19,1,9,0,147,0,9,0,147,1,9,0,83,0,9,0,83,1,9,0,211,0,9,0,211,1,9,0,51,0,9,0,51,1,9,0,179,0,9,0,179,1,9,0,115,0,9,0,115,1,9,0,243,0,9,0,243,1,9,0,11,0,9,0,11,1,9,0,139,0,9,0,139,1,9,0,75,0,9,0,75,1,9,0,203,0,9,0,203,1,9,0,43,0,9,0,43,1,9,0,171,0,9,0,171,1,9,0,107,0,9,0,107,1,9,0,235,0,9,0,235,1,9,0,27,0,9,0,27,1,9,0,155,0,9,0,155,1,9,0,91,0,9,0,91,1,9,0,219,0,9,0,219,1,9,0,59,0,9,0,59,1,9,0,187,0,9,0,187,1,9,0,123,0,9,0,123,1,9,0,251,0,9,0,251,1,9,0,7,0,9,0,7,1,9,0,135,0,9,0,135,1,9,0,71,0,9,0,71,1,9,0,199,0,9,0,199,1,9,0,39,0,9,0,39,1,9,0,167,0,9,0,167,1,9,0,103,0,9,0,103,1,9,0,231,0,9,0,231,1,9,0,23,0,9,0,23,1,9,0,151,0,9,0,151,1,9,0,87,0,9,0,87,1,9,0,215,0,9,0,215,1,9,0,55,0,9,0,55,1,9,0,183,0,9,0,183,1,9,0,119,0,9,0,119,1,9,0,247,0,9,0,247,1,9,0,15,0,9,0,15,1,9,0,143,0,9,0,143,1,9,0,79,0,9,0,79,1,9,0,207,0,9,0,207,1,9,0,47,0,9,0,47,1,9,0,175,0,9,0,175,1,9,0,111,0,9,0,111,1,9,0,239,0,9,0,239,1,9,0,31,0,9,0,31,1,9,0,159,0,9,0,159,1,9,0,95,0,9,0,95,1,9,0,223,0,9,0,223,1,9,0,63,0,9,0,63,1,9,0,191,0,9,0,191,1,9,0,127,0,9,0,127,1,9,0,255,0,9,0,255,1,9,0,0,0,7,0,64,0,7,0,32,0,7,0,96,0,7,0,16,0,7,0,80,0,7,0,48,0,7,0,112,0,7,0,8,0,7,0,72,0,7,0,40,0,7,0,104,0,7,0,24,0,7,0,88,0,7,0,56,0,7,0,120,0,7,0,4,0,7,0,68,0,7,0,36,0,7,0,100,0,7,0,20,0,7,0,84,0,7,0,52,0,7,0,116,0,7,0,3,0,8,0,131,0,8,0,67,0,8,0,195,0,8,0,35,0,8,0,163,0,8,0,99,0,8,0,227,0,8,0,0,0,5,0,16,0,5,0,8,0,5,0,24,0,5,0,4,0,5,0,20,0,5,0,12,0,5,0,28,0,5,0,2,0,5,0,18,0,5,0,10,0,5,0,26,0,5,0,6,0,5,0,22,0,5,0,14,0,5,0,30,0,5,0,1,0,5,0,17,0,5,0,9,0,5,0,25,0,5,0,5,0,5,0,21,0,5,0,13,0,5,0,29,0,5,0,3,0,5,0,19,0,5,0,11,0,5,0,27,0,5,0,7,0,5,0,23,0,5,0,0,64,197,88,159,83,66,75,0,64,73,50,163,34,168,17,197,88,33,123,252,115,98,104,197,88,191,69,11,48,126,24,159,83,252,115,65,109,84,98,159,83,179,65,65,45,18,23,66,75,98,104,84,98,126,88,66,75,33,59,186,40,195,20,0,64,197,88,159,83,66,75,0,64,73,50,163,34,168,17,73,50,191,69,179,65,33,59,73,50,130,39,55,27,224,13,163,34,11,48,65,45,186,40,163,34,55,27,191,18,142,9,168,17,126,24,18,23,195,20,168,17,224,13,142,9,223,4,112,115,101,117,100,111,45,0,84,73,70,70,83,101,116,70,105,101,108,100,0,37,115,58,32,85,110,107,110,111,119,110,32,37,115,116,97,103,32,37,117,0,37,115,58,32,67,97,110,110,111,116,32,109,111,100,105,102,121,32,116,97,103,32,34,37,115,34,32,119,104,105,108,101,32,119,114,105,116,105,110,103,0,116,105,102,95,100,105,114,46,99,0,84,73,70,70,65,100,118,97,110,99,101,68,105,114,101,99,116,111,114,121,0,83,97,110,105,116,121,32,99,104,101,99,107,32,111,110,32,100,105,114,101,99,116,111,114,121,32,99,111,117,110,116,32,102,97,105,108,101,100,0,37,115,58,32,69,114,114,111,114,32,102,101,116,99,104,105,110,103,32,100,105,114,101,99,116,111,114,121,32,99,111,117,110,116,0,37,115,58,32,69,114,114,111,114,32,102,101,116,99,104,105,110,103,32,100,105,114,101,99,116,111,114,121,32,108,105,110,107,0,95,84,73,70,70,86,71,101,116,70,105,101,108,100,0,37,115,58,32,73,110,118,97,108,105,100,32,37,115,116,97,103,32,34,37,115,34,32,40,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,99,111,100,101,99,41,0,116,118,45,62,99,111,117,110,116,32,61,61,32,49,0,78,111,110,115,116,97,110,100,97,114,100,32,116,105,108,101,32,119,105,100,116,104,32,37,100,44,32,99,111,110,118,101,114,116,32,102,105,108,101,0,78,111,110,115,116,97,110,100,97,114,100,32,116,105,108,101,32,108,101,110,103,116,104,32,37,100,44,32,99,111,110,118,101,114,116,32,102,105,108,101,0,95,84,73,70,70,86,83,101,116,70,105,101,108,100,0,37,115,58,32,83,111,114,114,121,44,32,99,97,110,110,111,116,32,110,101,115,116,32,83,117,98,73,70,68,115,0,37,115,58,32,73,110,118,97,108,105,100,32,73,110,107,78,97,109,101,115,32,118,97,108,117,101,59,32,101,120,112,101,99,116,105,110,103,32,37,100,32,110,97,109,101,115,44,32,102,111,117,110,100,32,37,100,0,37,115,58,32,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,115,112,97,99,101,32,102,111,114,32,108,105,115,116,32,111,102,32,99,117,115,116,111,109,32,118,97,108,117,101,115,0,37,115,58,32,66,97,100,32,102,105,101,108,100,32,116,121,112,101,32,37,100,32,102,111,114,32,34,37,115,34,0,102,105,112,45,62,102,105,101,108,100,95,119,114,105,116,101,99,111,117,110,116,61,61,84,73,70,70,95,86,65,82,73,65,66,76,69,50,0,37,115,58,32,78,117,108,108,32,99,111,117,110,116,32,102,111,114,32,34,37,115,34,32,40,116,121,112,101,32,37,100,44,32,119,114,105,116,101,99,111,117,110,116,32,37,100,44,32,112,97,115,115,99,111,117,110,116,32,37,100,41,0,99,117,115,116,111,109,32,116,97,103,32,98,105,110,97,114,121,32,111,98,106,101,99,116,0,85,110,107,110,111,119,110,0,37,115,58,32,66,97,100,32,118,97,108,117,101,32,37,117,32,102,111,114,32,34,37,115,34,32,116,97,103,0,37,115,58,32,66,97,100,32,118,97,108,117,101,32,37,102,32,102,111,114,32,34,37,115,34,32,116,97,103,0,84,97,103,32,0,95,84,73,70,70,83,101,116,117,112,70,105,101,108,100,115,0,83,101,116,116,105,110,103,32,117,112,32,102,105,101,108,100,32,105,110,102,111,32,102,97,105,108,101,100,0,102,111,114,32,102,105,101,108,100,115,32,97,114,114,97,121,0,95,84,73,70,70,77,101,114,103,101,70,105,101,108,100,115,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,102,105,101,108,100,115,32,97,114,114,97,121,0,84,73,70,70,70,105,101,108,100,87,105,116,104,84,97,103,0,73,110,116,101,114,110,97,108,32,101,114,114,111,114,44,32,117,110,107,110,111,119,110,32,116,97,103,32,48,120,37,120,0,84,97,103,32,37,100,0,69,120,112,111,115,117,114,101,84,105,109,101,0,70,78,117,109,98,101,114,0,69,120,112,111,115,117,114,101,80,114,111,103,114,97,109,0,83,112,101,99,116,114,97,108,83,101,110,115,105,116,105,118,105,116,121,0,73,83,79,83,112,101,101,100,82,97,116,105,110,103,115,0,79,112,116,111,101,108,101,99,116,114,105,99,67,111,110,118,101,114,115,105,111,110,70,97,99,116,111,114,0,69,120,105,102,86,101,114,115,105,111,110,0,68,97,116,101,84,105,109,101,79,114,105,103,105,110,97,108,0,68,97,116,101,84,105,109,101,68,105,103,105,116,105,122,101,100,0,67,111,109,112,111,110,101,110,116,115,67,111,110,102,105,103,117,114,97,116,105,111,110,0,67,111,109,112,114,101,115,115,101,100,66,105,116,115,80,101,114,80,105,120,101,108,0,83,104,117,116,116,101,114,83,112,101,101,100,86,97,108,117,101,0,65,112,101,114,116,117,114,101,86,97,108,117,101,0,66,114,105,103,104,116,110,101,115,115,86,97,108,117,101,0,69,120,112,111,115,117,114,101,66,105,97,115,86,97,108,117,101,0,77,97,120,65,112,101,114,116,117,114,101,86,97,108,117,101,0,83,117,98,106,101,99,116,68,105,115,116,97,110,99,101,0,77,101,116,101,114,105,110,103,77,111,100,101,0,76,105,103,104,116,83,111,117,114,99,101,0,70,108,97,115,104,0,70,111,99,97,108,76,101,110,103,116,104,0,83,117,98,106,101,99,116,65,114,101,97,0,77,97,107,101,114,78,111,116,101,0,85,115,101,114,67,111,109,109,101,110,116,0,83,117,98,83,101,99,84,105,109,101,0,83,117,98,83,101,99,84,105,109,101,79,114,105,103,105,110,97,108,0,83,117,98,83,101,99,84,105,109,101,68,105,103,105,116,105,122,101,100,0,70,108,97,115,104,112,105,120,86,101,114,115,105,111,110,0,67,111,108,111,114,83,112,97,99,101,0,80,105,120,101,108,88,68,105,109,101,110,115,105,111,110,0,80,105,120,101,108,89,68,105,109,101,110,115,105,111,110,0,82,101,108,97,116,101,100,83,111,117,110,100,70,105,108,101,0,70,108,97,115,104,69,110,101,114,103,121,0,83,112,97,116,105,97,108,70,114,101,113,117,101,110,99,121,82,101,115,112,111,110,115,101,0,70,111,99,97,108,80,108,97,110,101,88,82,101,115,111,108,117,116,105,111,110,0,70,111,99,97,108,80,108,97,110,101,89,82,101,115,111,108,117,116,105,111,110,0,70,111,99,97,108,80,108,97,110,101,82,101,115,111,108,117,116,105,111,110,85,110,105,116,0,83,117,98,106,101,99,116,76,111,99,97,116,105,111,110,0,69,120,112,111,115,117,114,101,73,110,100,101,120,0,83,101,110,115,105,110,103,77,101,116,104,111,100,0,70,105,108,101,83,111,117,114,99,101,0,83,99,101,110,101,84,121,112,101,0,67,70,65,80,97,116,116,101,114,110,0,67,117,115,116,111,109,82,101,110,100,101,114,101,100,0,69,120,112,111,115,117,114,101,77,111,100,101,0,87,104,105,116,101,66,97,108,97,110,99,101,0,68,105,103,105,116,97,108,90,111,111,109,82,97,116,105,111,0,70,111,99,97,108,76,101,110,103,116,104,73,110,51,53,109,109,70,105,108,109,0,83,99,101,110,101,67,97,112,116,117,114,101,84,121,112,101,0,71,97,105,110,67,111,110,116,114,111,108,0,67,111,110,116,114,97,115,116,0,83,97,116,117,114,97,116,105,111,110,0,83,104,97,114,112,110,101,115,115,0,68,101,118,105,99,101,83,101,116,116,105,110,103,68,101,115,99,114,105,112,116,105,111,110,0,83,117,98,106,101,99,116,68,105,115,116,97,110,99,101,82,97,110,103,101,0,73,109,97,103,101,85,110,105,113,117,101,73,68,0,83,117,98,102,105,108,101,84,121,112,101,0,79,108,100,83,117,98,102,105,108,101,84,121,112,101,0,73,109,97,103,101,87,105,100,116,104,0,66,105,116,115,80,101,114,83,97,109,112,108,101,0,80,104,111,116,111,109,101,116,114,105,99,73,110,116,101,114,112,114,101,116,97,116,105,111,110,0,84,104,114,101,115,104,104,111,108,100,105,110,103,0,67,101,108,108,87,105,100,116,104,0,67,101,108,108,76,101,110,103,116,104,0,70,105,108,108,79,114,100,101,114,0,68,111,99,117,109,101,110,116,78,97,109,101,0,73,109,97,103,101,68,101,115,99,114,105,112,116,105,111,110,0,77,97,107,101,0,77,111,100,101,108,0,79,114,105,101,110,116,97,116,105,111,110,0,83,97,109,112,108,101,115,80,101,114,80,105,120,101,108,0,82,111,119,115,80,101,114,83,116,114,105,112,0,77,105,110,83,97,109,112,108,101,86,97,108,117,101,0,77,97,120,83,97,109,112,108,101,86,97,108,117,101,0,88,82,101,115,111,108,117,116,105,111,110,0,89,82,101,115,111,108,117,116,105,111,110,0,80,108,97,110,97,114,67,111,110,102,105,103,117,114,97,116,105,111,110,0,80,97,103,101,78,97,109,101,0,88,80,111,115,105,116,105,111,110,0,89,80,111,115,105,116,105,111,110,0,70,114,101,101,79,102,102,115,101,116,115,0,70,114,101,101,66,121,116,101,67,111,117,110,116,115,0,71,114,97,121,82,101,115,112,111,110,115,101,85,110,105,116,0,71,114,97,121,82,101,115,112,111,110,115,101,67,117,114,118,101,0,82,101,115,111,108,117,116,105,111,110,85,110,105,116,0,80,97,103,101,78,117,109,98,101,114,0,67,111,108,111,114,82,101,115,112,111,110,115,101,85,110,105,116,0,84,114,97,110,115,102,101,114,70,117,110,99,116,105,111,110,0,83,111,102,116,119,97,114,101,0,68,97,116,101,84,105,109,101,0,65,114,116,105,115,116,0,72,111,115,116,67,111,109,112,117,116,101,114,0,87,104,105,116,101,80,111,105,110,116,0,80,114,105,109,97,114,121,67,104,114,111,109,97,116,105,99,105,116,105,101,115,0,67,111,108,111,114,77,97,112,0,72,97,108,102,116,111,110,101,72,105,110,116,115,0,84,105,108,101,87,105,100,116,104,0,84,105,108,101,76,101,110,103,116,104,0,84,105,108,101,66,121,116,101,67,111,117,110,116,115,0,83,117,98,73,70,68,0,73,110,107,78,97,109,101,115,0,78,117,109,98,101,114,79,102,73,110,107,115,0,68,111,116,82,97,110,103,101,0,84,97,114,103,101,116,80,114,105,110,116,101,114,0,69,120,116,114,97,83,97,109,112,108,101,115,0,83,97,109,112,108,101,70,111,114,109,97,116,0,83,77,105,110,83,97,109,112,108,101,86,97,108,117,101,0,83,77,97,120,83,97,109,112,108,101,86,97,108,117,101,0,67,108,105,112,80,97,116,104,0,88,67,108,105,112,80,97,116,104,85,110,105,116,115,0,89,67,108,105,112,80,97,116,104,85,110,105,116,115,0,89,67,98,67,114,67,111,101,102,102,105,99,105,101,110,116,115,0,89,67,98,67,114,83,117,98,115,97,109,112,108,105,110,103,0,89,67,98,67,114,80,111,115,105,116,105,111,110,105,110,103,0,82,101,102,101,114,101,110,99,101,66,108,97,99,107,87,104,105,116,101,0,88,77,76,80,97,99,107,101,116,0,77,97,116,116,101,105,110,103,0,68,97,116,97,84,121,112,101,0,73,109,97,103,101,68,101,112,116,104,0,84,105,108,101,68,101,112,116,104,0,73,109,97,103,101,70,117,108,108,87,105,100,116,104,0,73,109,97,103,101,70,117,108,108,76,101,110,103,116,104,0,84,101,120,116,117,114,101,70,111,114,109,97,116,0,84,101,120,116,117,114,101,87,114,97,112,77,111,100,101,115,0,70,105,101,108,100,79,102,86,105,101,119,67,111,116,97,110,103,101,110,116,0,77,97,116,114,105,120,87,111,114,108,100,84,111,83,99,114,101,101,110,0,77,97,116,114,105,120,87,111,114,108,100,84,111,67,97,109,101,114,97,0,67,70,65,82,101,112,101,97,116,80,97,116,116,101,114,110,68,105,109,0,67,111,112,121,114,105,103,104,116,0,82,105,99,104,84,73,70,70,73,80,84,67,0,80,104,111,116,111,115,104,111,112,0,69,88,73,70,73,70,68,79,102,102,115,101,116,0,73,67,67,32,80,114,111,102,105,108,101,0,71,80,83,73,70,68,79,102,102,115,101,116,0,70,97,120,82,101,99,118,80,97,114,97,109,115,0,70,97,120,83,117,98,65,100,100,114,101,115,115,0,70,97,120,82,101,99,118,84,105,109,101,0,70,97,120,68,99,115,0,83,116,111,78,105,116,115,0,73,110,116,101,114,111,112,101,114,97,98,105,108,105,116,121,73,70,68,79,102,102,115,101,116,0,68,78,71,86,101,114,115,105,111,110,0,68,78,71,66,97,99,107,119,97,114,100,86,101,114,115,105,111,110,0,85,110,105,113,117,101,67,97,109,101,114,97,77,111,100,101,108,0,76,111,99,97,108,105,122,101,100,67,97,109,101,114,97,77,111,100,101,108,0,67,70,65,80,108,97,110,101,67,111,108,111,114,0,67,70,65,76,97,121,111,117,116,0,76,105,110,101,97,114,105,122,97,116,105,111,110,84,97,98,108,101,0,66,108,97,99,107,76,101,118,101,108,82,101,112,101,97,116,68,105,109,0,66,108,97,99,107,76,101,118,101,108,0,66,108,97,99,107,76,101,118,101,108,68,101,108,116,97,72,0,66,108,97,99,107,76,101,118,101,108,68,101,108,116,97,86,0,87,104,105,116,101,76,101,118,101,108,0,68,101,102,97,117,108,116,83,99,97,108,101,0,66,101,115,116,81,117,97,108,105,116,121,83,99,97,108,101,0,68,101,102,97,117,108,116,67,114,111,112,79,114,105,103,105,110,0,68,101,102,97,117,108,116,67,114,111,112,83,105,122,101,0,67,111,108,111,114,77,97,116,114,105,120,49,0,67,111,108,111,114,77,97,116,114,105,120,50,0,67,97,109,101,114,97,67,97,108,105,98,114,97,116,105,111,110,49,0,67,97,109,101,114,97,67,97,108,105,98,114,97,116,105,111,110,50,0,82,101,100,117,99,116,105,111,110,77,97,116,114,105,120,49,0,82,101,100,117,99,116,105,111,110,77,97,116,114,105,120,50,0,65,110,97,108,111,103,66,97,108,97,110,99,101,0,65,115,83,104,111,116,78,101,117,116,114,97,108,0,65,115,83,104,111,116,87,104,105,116,101,88,89,0,66,97,115,101,108,105,110,101,69,120,112,111,115,117,114,101,0,66,97,115,101,108,105,110,101,78,111,105,115,101,0,66,97,115,101,108,105,110,101,83,104,97,114,112,110,101,115,115,0,66,97,121,101,114,71,114,101,101,110,83,112,108,105,116,0,76,105,110,101,97,114,82,101,115,112,111,110,115,101,76,105,109,105,116,0,67,97,109,101,114,97,83,101,114,105,97,108,78,117,109,98,101,114,0,76,101,110,115,73,110,102,111,0,67,104,114,111,109,97,66,108,117,114,82,97,100,105,117,115,0,65,110,116,105,65,108,105,97,115,83,116,114,101,110,103,116,104,0,83,104,97,100,111,119,83,99,97,108,101,0,68,78,71,80,114,105,118,97,116,101,68,97,116,97,0,77,97,107,101,114,78,111,116,101,83,97,102,101,116,121,0,67,97,108,105,98,114,97,116,105,111,110,73,108,108,117,109,105,110,97,110,116,49,0,67,97,108,105,98,114,97,116,105,111,110,73,108,108,117,109,105,110,97,110,116,50,0,82,97,119,68,97,116,97,85,110,105,113,117,101,73,68,0,79,114,105,103,105,110,97,108,82,97,119,70,105,108,101,78,97,109,101,0,79,114,105,103,105,110,97,108,82,97,119,70,105,108,101,68,97,116,97,0,65,99,116,105,118,101,65,114,101,97,0,77,97,115,107,101,100,65,114,101,97,115,0,65,115,83,104,111,116,73,67,67,80,114,111,102,105,108,101,0,65,115,83,104,111,116,80,114,101,80,114,111,102,105,108,101,77,97,116,114,105,120,0,67,117,114,114,101,110,116,73,67,67,80,114,111,102,105,108,101,0,67,117,114,114,101,110,116,80,114,101,80,114,111,102,105,108,101,77,97,116,114,105,120,0,80,101,114,83,97,109,112,108,101,0,73,110,100,101,120,101,100,0,71,108,111,98,97,108,80,97,114,97,109,101,116,101,114,115,73,70,68,0,80,114,111,102,105,108,101,84,121,112,101,0,70,97,120,80,114,111,102,105,108,101,0,67,111,100,105,110,103,77,101,116,104,111,100,115,0,86,101,114,115,105,111,110,89,101,97,114,0,77,111,100,101,78,117,109,98,101,114,0,68,101,99,111,100,101,0,73,109,97,103,101,66,97,115,101,67,111,108,111,114,0,84,56,50,79,112,116,105,111,110,115,0,83,116,114,105,112,82,111,119,67,111,117,110,116,115,0,73,109,97,103,101,76,97,121,101,114,0,84,73,70,70,67,104,101,99,107,68,105,114,79,102,102,115,101,116,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,109,111,114,101,32,116,104,97,110,32,54,53,53,51,53,32,84,73,70,70,32,100,105,114,101,99,116,111,114,105,101,115,0,102,111,114,32,73,70,68,32,108,105,115,116,0,84,73,70,70,82,101,97,100,68,105,114,101,99,116,111,114,121,0,70,97,105,108,101,100,32,116,111,32,114,101,97,100,32,100,105,114,101,99,116,111,114,121,32,97,116,32,111,102,102,115,101,116,32,37,108,117,0,84,73,70,70,82,101,97,100,68,105,114,101,99,116,111,114,121,67,104,101,99,107,79,114,100,101,114,0,73,110,118,97,108,105,100,32,84,73,70,70,32,100,105,114,101,99,116,111,114,121,59,32,116,97,103,115,32,97,114,101,32,110,111,116,32,115,111,114,116,101,100,32,105,110,32,97,115,99,101,110,100,105,110,103,32,111,114,100,101,114,0,85,110,107,110,111,119,110,32,102,105,101,108,100,32,119,105,116,104,32,116,97,103,32,37,100,32,40,48,120,37,120,41,32,101,110,99,111,117,110,116,101,114,101,100,0,82,101,103,105,115,116,101,114,105,110,103,32,97,110,111,110,121,109,111,117,115,32,102,105,101,108,100,32,119,105,116,104,32,116,97,103,32,37,100,32,40,48,120,37,120,41,32,102,97,105,108,101,100,0,102,105,105,32,33,61,32,70,65,73,76],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+122916);allocate([69,68,95,70,73,73,0,116,105,102,95,100,105,114,114,101,97,100,46,99,0,80,108,97,110,97,114,99,111,110,102,105,103,32,116,97,103,32,118,97,108,117,101,32,97,115,115,117,109,101,100,32,105,110,99,111,114,114,101,99,116,44,32,97,115,115,117,109,105,110,103,32,100,97,116,97,32,105,115,32,99,111,110,116,105,103,32,105,110,115,116,101,97,100,32,111,102,32,99,104,117,110,107,121,0,77,105,115,115,105,110,103,82,101,113,117,105,114,101,100,0,84,73,70,70,32,100,105,114,101,99,116,111,114,121,32,105,115,32,109,105,115,115,105,110,103,32,114,101,113,117,105,114,101,100,32,34,37,115,34,32,102,105,101,108,100,0,73,109,97,103,101,76,101,110,103,116,104,0,116,105,108,101,115,0,115,116,114,105,112,115,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,122,101,114,111,32,110,117,109,98,101,114,32,111,102,32,37,115,0,84,105,108,101,79,102,102,115,101,116,115,0,83,116,114,105,112,79,102,102,115,101,116,115,0,117,110,107,110,111,119,110,32,116,97,103,110,97,109,101,0,73,103,110,111,114,105,110,103,32,37,115,32,115,105,110,99,101,32,66,105,116,115,80,101,114,83,97,109,112,108,101,32,116,97,103,32,110,111,116,32,102,111,117,110,100,0,80,104,111,116,111,109,101,116,114,105,99,32,116,97,103,32,105,115,32,109,105,115,115,105,110,103,44,32,97,115,115,117,109,105,110,103,32,100,97,116,97,32,105,115,32,89,67,98,67,114,0,80,104,111,116,111,109,101,116,114,105,99,32,116,97,103,32,118,97,108,117,101,32,97,115,115,117,109,101,100,32,105,110,99,111,114,114,101,99,116,44,32,97,115,115,117,109,105,110,103,32,100,97,116,97,32,105,115,32,89,67,98,67,114,32,105,110,115,116,101,97,100,32,111,102,32,82,71,66,0,66,105,116,115,80,101,114,83,97,109,112,108,101,32,116,97,103,32,105,115,32,109,105,115,115,105,110,103,44,32,97,115,115,117,109,105,110,103,32,56,32,98,105,116,115,32,112,101,114,32,115,97,109,112,108,101,0,83,97,109,112,108,101,115,80,101,114,80,105,120,101,108,32,116,97,103,32,105,115,32,109,105,115,115,105,110,103,44,32,97,115,115,117,109,105,110,103,32,99,111,114,114,101,99,116,32,83,97,109,112,108,101,115,80,101,114,80,105,120,101,108,32,118,97,108,117,101,32,105,115,32,51,0,83,97,109,112,108,101,115,80,101,114,80,105,120,101,108,32,116,97,103,32,105,115,32,109,105,115,115,105,110,103,44,32,97,112,112,108,121,105,110,103,32,99,111,114,114,101,99,116,32,83,97,109,112,108,101,115,80,101,114,80,105,120,101,108,32,118,97,108,117,101,32,111,102,32,51,0,67,111,108,111,114,109,97,112,0,83,116,114,105,112,66,121,116,101,67,111,117,110,116,115,0,84,73,70,70,32,100,105,114,101,99,116,111,114,121,32,105,115,32,109,105,115,115,105,110,103,32,114,101,113,117,105,114,101,100,32,34,83,116,114,105,112,66,121,116,101,67,111,117,110,116,115,34,32,102,105,101,108,100,44,32,99,97,108,99,117,108,97,116,105,110,103,32,102,114,111,109,32,105,109,97,103,101,108,101,110,103,116,104,0,66,111,103,117,115,32,34,83,116,114,105,112,66,121,116,101,67,111,117,110,116,115,34,32,102,105,101,108,100,44,32,105,103,110,111,114,105,110,103,32,97,110,100,32,99,97,108,99,117,108,97,116,105,110,103,32,102,114,111,109,32,105,109,97,103,101,108,101,110,103,116,104,0,87,114,111,110,103,32,34,83,116,114,105,112,66,121,116,101,67,111,117,110,116,115,34,32,102,105,101,108,100,44,32,105,103,110,111,114,105,110,103,32,97,110,100,32,99,97,108,99,117,108,97,116,105,110,103,32,102,114,111,109,32,105,109,97,103,101,108,101,110,103,116,104,0,102,111,114,32,99,104,111,112,112,101,100,32,34,83,116,114,105,112,66,121,116,101,67,111,117,110,116,115,34,32,97,114,114,97,121,0,102,111,114,32,99,104,111,112,112,101,100,32,34,83,116,114,105,112,79,102,102,115,101,116,115,34,32,97,114,114,97,121,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,122,101,114,111,32,115,99,97,110,108,105,110,101,32,115,105,122,101,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,122,101,114,111,32,116,105,108,101,32,115,105,122,101,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,122,101,114,111,32,115,116,114,105,112,32,115,105,122,101,0,102,111,114,32,34,83,116,114,105,112,66,121,116,101,67,111,117,110,116,115,34,32,97,114,114,97,121,0,69,115,116,105,109,97,116,101,83,116,114,105,112,66,121,116,101,67,111,117,110,116,115,0,67,97,110,110,111,116,32,100,101,116,101,114,109,105,110,101,32,115,105,122,101,32,111,102,32,117,110,107,110,111,119,110,32,116,97,103,32,116,121,112,101,32,37,100,0,84,73,70,70,70,101,116,99,104,83,116,114,105,112,84,104,105,110,103,0,102,111,114,32,115,116,114,105,112,32,97,114,114,97,121,0,40,116,109,115,105,122,101,95,116,41,100,97,116,97,115,105,122,101,62,48,0,84,73,70,70,82,101,97,100,68,105,114,69,110,116,114,121,65,114,114,97,121,0,82,101,97,100,68,105,114,69,110,116,114,121,65,114,114,97,121,0,73,110,99,111,114,114,101,99,116,32,99,111,117,110,116,32,102,111,114,32,34,37,115,34,0,73,110,99,111,109,112,97,116,105,98,108,101,32,116,121,112,101,32,102,111,114,32,34,37,115,34,0,73,79,32,101,114,114,111,114,32,100,117,114,105,110,103,32,114,101,97,100,105,110,103,32,111,102,32,34,37,115,34,0,73,110,99,111,114,114,101,99,116,32,118,97,108,117,101,32,102,111,114,32,34,37,115,34,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,100,105,102,102,101,114,101,110,116,32,118,97,108,117,101,115,32,112,101,114,32,115,97,109,112,108,101,32,102,111,114,32,34,37,115,34,0,83,97,110,105,116,121,32,99,104,101,99,107,32,111,110,32,115,105,122,101,32,111,102,32,34,37,115,34,32,118,97,108,117,101,32,102,97,105,108,101,100,0,79,117,116,32,111,102,32,109,101,109,111,114,121,32,114,101,97,100,105,110,103,32,111,102,32,34,37,115,34,0,84,73,70,70,82,101,97,100,68,105,114,69,110,116,114,121,79,117,116,112,117,116,69,114,114,0,73,110,99,111,114,114,101,99,116,32,99,111,117,110,116,32,102,111,114,32,34,37,115,34,59,32,116,97,103,32,105,103,110,111,114,101,100,0,73,110,99,111,109,112,97,116,105,98,108,101,32,116,121,112,101,32,102,111,114,32,34,37,115,34,59,32,116,97,103,32,105,103,110,111,114,101,100,0,73,79,32,101,114,114,111,114,32,100,117,114,105,110,103,32,114,101,97,100,105,110,103,32,111,102,32,34,37,115,34,59,32,116,97,103,32,105,103,110,111,114,101,100,0,73,110,99,111,114,114,101,99,116,32,118,97,108,117,101,32,102,111,114,32,34,37,115,34,59,32,116,97,103,32,105,103,110,111,114,101,100,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,100,105,102,102,101,114,101,110,116,32,118,97,108,117,101,115,32,112,101,114,32,115,97,109,112,108,101,32,102,111,114,32,34,37,115,34,59,32,116,97,103,32,105,103,110,111,114,101,100,0,83,97,110,105,116,121,32,99,104,101,99,107,32,111,110,32,115,105,122,101,32,111,102,32,34,37,115,34,32,118,97,108,117,101,32,102,97,105,108,101,100,59,32,116,97,103,32,105,103,110,111,114,101,100,0,79,117,116,32,111,102,32,109,101,109,111,114,121,32,114,101,97,100,105,110,103,32,111,102,32,34,37,115,34,59,32,116,97,103,32,105,103,110,111,114,101,100,0,84,73,70,70,70,101,116,99,104,78,111,114,109,97,108,84,97,103,0,78,111,32,100,101,102,105,110,105,116,105,111,110,32,102,111,117,110,100,32,102,111,114,32,116,97,103,32,37,100,0,102,105,112,32,33,61,32,78,85,76,76,0,102,105,112,45,62,115,101,116,95,102,105,101,108,100,95,116,121,112,101,33,61,84,73,70,70,95,83,69,84,71,69,84,95,79,84,72,69,82,0,102,105,112,45,62,115,101,116,95,102,105,101,108,100,95,116,121,112,101,33,61,84,73,70,70,95,83,69,84,71,69,84,95,73,78,84,0,102,105,112,45,62,102,105,101,108,100,95,112,97,115,115,99,111,117,110,116,61,61,48,0,65,83,67,73,73,32,118,97,108,117,101,32,102,111,114,32,116,97,103,32,34,37,115,34,32,99,111,110,116,97,105,110,115,32,110,117,108,108,32,98,121,116,101,32,105,110,32,118,97,108,117,101,59,32,118,97,108,117,101,32,105,110,99,111,114,114,101,99,116,108,121,32,116,114,117,110,99,97,116,101,100,32,100,117,114,105,110,103,32,114,101,97,100,105,110,103,32,100,117,101,32,116,111,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,32,108,105,109,105,116,97,116,105,111,110,115,0,65,83,67,73,73,32,118,97,108,117,101,32,102,111,114,32,116,97,103,32,34,37,115,34,32,100,111,101,115,32,110,111,116,32,101,110,100,32,105,110,32,110,117,108,108,32,98,121,116,101,0,102,105,112,45,62,102,105,101,108,100,95,114,101,97,100,99,111,117,110,116,61,61,49,0,102,105,112,45,62,102,105,101,108,100,95,114,101,97,100,99,111,117,110,116,61,61,50,0,105,110,99,111,114,114,101,99,116,32,99,111,117,110,116,32,102,111,114,32,102,105,101,108,100,32,34,37,115,34,44,32,101,120,112,101,99,116,101,100,32,50,44,32,103,111,116,32,37,100,0,102,105,112,45,62,102,105,101,108,100,95,114,101,97,100,99,111,117,110,116,62,61,49,0,105,110,99,111,114,114,101,99,116,32,99,111,117,110,116,32,102,111,114,32,102,105,101,108,100,32,34,37,115,34,44,32,101,120,112,101,99,116,101,100,32,37,100,44,32,103,111,116,32,37,100,0,102,105,112,45,62,102,105,101,108,100,95,114,101,97,100,99,111,117,110,116,61,61,84,73,70,70,95,86,65,82,73,65,66,76,69,0,102,105,112,45,62,102,105,101,108,100,95,112,97,115,115,99,111,117,110,116,61,61,49,0,102,105,112,45,62,102,105,101,108,100,95,114,101,97,100,99,111,117,110,116,61,61,84,73,70,70,95,86,65,82,73,65,66,76,69,50,0,112,100,105,114,0,84,73,70,70,70,101,116,99,104,68,105,114,101,99,116,111,114,121,0,83,97,110,105,116,121,32,99,104,101,99,107,32,111,110,32,100,105,114,101,99,116,111,114,121,32,99,111,117,110,116,32,102,97,105,108,101,100,44,32,116,104,105,115,32,105,115,32,112,114,111,98,97,98,108,121,32,110,111,116,32,97,32,118,97,108,105,100,32,73,70,68,32,111,102,102,115,101,116,0,116,111,32,114,101,97,100,32,84,73,70,70,32,100,105,114,101,99,116,111,114,121,0,37,46,49,48,48,115,58,32,67,97,110,32,110,111,116,32,114,101,97,100,32,84,73,70,70,32,100,105,114,101,99,116,111,114,121,0,67,97,110,32,110,111,116,32,114,101,97,100,32,84,73,70,70,32,100,105,114,101,99,116,111,114,121,32,99,111,117,110,116,0,83,97,110,105,116,121,32,99,104,101,99,107,32,111,110,32,100,105,114,101,99,116,111,114,121,32,99,111,117,110,116,32,102,97,105,108,101,100,44,32,122,101,114,111,32,116,97,103,32,100,105,114,101,99,116,111,114,105,101,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,67,97,110,32,110,111,116,32,114,101,97,100,32,84,73,70,70,32,100,105,114,101,99,116,111,114,121,0,83,111,114,114,121,44,32,114,101,113,117,101,115,116,101,100,32,99,111,109,112,114,101,115,115,105,111,110,32,109,101,116,104,111,100,32,105,115,32,110,111,116,32,99,111,110,102,105,103,117,114,101,100,0,83,111,114,114,121,44,32,99,97,110,32,110,111,116,32,104,97,110,100,108,101,32,105,109,97,103,101,115,32,119,105,116,104,32,37,100,45,98,105,116,32,115,97,109,112,108,101,115,0,77,105,115,115,105,110,103,32,110,101,101,100,101,100,32,37,115,32,116,97,103,0,83,111,114,114,121,44,32,99,97,110,32,110,111,116,32,104,97,110,100,108,101,32,99,111,110,116,105,103,117,111,117,115,32,100,97,116,97,32,119,105,116,104,32,37,115,61,37,100,44,32,97,110,100,32,37,115,61,37,100,32,97,110,100,32,66,105,116,115,47,83,97,109,112,108,101,61,37,100,0,83,97,109,112,108,101,115,47,112,105,120,101,108,0,83,111,114,114,121,44,32,99,97,110,32,110,111,116,32,104,97,110,100,108,101,32,82,71,66,32,105,109,97,103,101,32,119,105,116,104,32,37,115,61,37,100,0,67,111,108,111,114,32,99,104,97,110,110,101,108,115,0,83,111,114,114,121,44,32,99,97,110,32,110,111,116,32,104,97,110,100,108,101,32,115,101,112,97,114,97,116,101,100,32,105,109,97,103,101,32,119,105,116,104,32,37,115,61,37,100,0,73,110,107,83,101,116,0,83,111,114,114,121,44,32,76,111,103,76,32,100,97,116,97,32,109,117,115,116,32,104,97,118,101,32,37,115,61,37,100,0,67,111,109,112,114,101,115,115,105,111,110,0,83,111,114,114,121,44,32,76,111,103,76,117,118,32,100,97,116,97,32,109,117,115,116,32,104,97,118,101,32,37,115,61,37,100,32,111,114,32,37,100,0,83,111,114,114,121,44,32,99,97,110,32,110,111,116,32,104,97,110,100,108,101,32,76,111,103,76,117,118,32,105,109,97,103,101,115,32,119,105,116,104,32,37,115,61,37,100,0,80,108,97,110,97,114,99,111,110,102,105,103,117,114,97,116,105,111,110,0,83,111,114,114,121,44,32,99,97,110,32,110,111,116,32,104,97,110,100,108,101,32,105,109,97,103,101,32,119,105,116,104,32,37,115,61,37,100,0,83,111,114,114,121,44,32,99,97,110,32,110,111,116,32,104,97,110,100,108,101,32,105,109,97,103,101,32,119,105,116,104,32,37,115,61,37,100,32,97,110,100,32,37,115,61,37,100,0,66,105,116,115,47,115,97,109,112,108,101,0,77,105,115,115,105,110,103,32,114,101,113,117,105,114,101,100,32,34,67,111,108,111,114,109,97,112,34,32,116,97,103,0,79,117,116,32,111,102,32,109,101,109,111,114,121,32,102,111,114,32,99,111,108,111,114,109,97,112,32,99,111,112,121,0,105,109,103,45,62,85,97,84,111,65,97,61,61,78,85,76,76,0,116,105,102,95,103,101,116,105,109,97,103,101,46,99,0,66,117,105,108,100,77,97,112,85,97,84,111,65,97,0,105,109,103,45,62,66,105,116,100,101,112,116,104,49,54,84,111,56,61,61,78,85,76,76,0,66,117,105,108,100,77,97,112,66,105,116,100,101,112,116,104,49,54,84,111,56,0,105,110,105,116,67,73,69,76,97,98,67,111,110,118,101,114,115,105,111,110,0,78,111,32,115,112,97,99,101,32,102,111,114,32,67,73,69,32,76,42,97,42,98,42,45,62,82,71,66,32,99,111,110,118,101,114,115,105,111,110,32,115,116,97,116,101,46,0,70,97,105,108,101,100,32,116,111,32,105,110,105,116,105,97,108,105,122,101,32,67,73,69,32,76,42,97,42,98,42,45,62,82,71,66,32,99,111,110,118,101,114,115,105,111,110,32,115,116,97,116,101,46,0,83,111,114,114,121,44,32,99,97,110,32,110,111,116,32,104,97,110,100,108,101,32,105,109,97,103,101,0,78,111,32,34,103,101,116,34,32,114,111,117,116,105,110,101,32,115,101,116,117,112,0,78,111,32,34,112,117,116,34,32,114,111,117,116,105,110,101,32,115,101,116,117,112,108,59,32,112,114,111,98,97,98,108,121,32,99,97,110,32,110,111,116,32,104,97,110,100,108,101,32,105,109,97,103,101,32,102,111,114,109,97,116,0,103,116,83,116,114,105,112,83,101,112,97,114,97,116,101,0,78,111,32,115,112,97,99,101,32,102,111,114,32,116,105,108,101,32,98,117,102,102,101,114,0,103,116,84,105,108,101,83,101,112,97,114,97,116,101,0,105,110,105,116,89,67,98,67,114,67,111,110,118,101,114,115,105,111,110,0,78,111,32,115,112,97,99,101,32,102,111,114,32,89,67,98,67,114,45,62,82,71,66,32,99,111,110,118,101,114,115,105,111,110,32,115,116,97,116,101,0,78,111,32,115,112,97,99,101,32,102,111,114,32,112,104,111,116,111,109,101,116,114,105,99,32,99,111,110,118,101,114,115,105,111,110,32,116,97,98,108,101,0,78,111,32,115,112,97,99,101,32,102,111,114,32,66,38,87,32,109,97,112,112,105,110,103,32,116,97,98,108,101,0,65,115,115,117,109,105,110,103,32,56,45,98,105,116,32,99,111,108,111,114,109,97,112,0,78,111,32,115,112,97,99,101,32,102,111,114,32,80,97,108,101,116,116,101,32,109,97,112,112,105,110,103,32,116,97,98,108,101,0,73,110,118,97,108,105,100,32,118,101,114,116,105,99,97,108,32,89,67,98,67,114,32,115,117,98,115,97,109,112,108,105,110,103,0,78,111,32,115,112,97,99,101,32,102,111,114,32,115,116,114,105,112,32,98,117,102,102,101,114,0,34,37,115,34,58,32,66,97,100,32,109,111,100,101,0,84,73,70,70,67,108,105,101,110,116,79,112,101,110,0,37,115,58,32,79,117,116,32,111,102,32,109,101,109,111,114,121,32,40,84,73,70,70,32,115,116,114,117,99,116,117,114,101,41,0,79,110,101,32,111,102,32,116,104,101,32,99,108,105,101,110,116,32,112,114,111,99,101,100,117,114,101,115,32,105,115,32,78,85,76,76,32,112,111,105,110,116,101,114,46,0,67,97,110,110,111,116,32,114,101,97,100,32,84,73,70,70,32,104,101,97,100,101,114,0,78,111,116,32,97,32,84,73,70,70,32,111,114,32,77,68,73,32,102,105,108,101,44,32,98,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,32,37,100,32,40,48,120,37,120,41,0,78,111,116,32,97,32,84,73,70,70,32,102,105,108,101,44,32,98,97,100,32,118,101,114,115,105,111,110,32,110,117,109,98,101,114,32,37,100,32,40,48,120,37,120,41,0,78,111,116,32,97,32,84,73,70,70,32,102,105,108,101,44,32,98,97,100,32,66,105,103,84,73,70,70,32,111,102,102,115,101,116,115,105,122,101,32,37,100,32,40,48,120,37,120,41,0,78,111,116,32,97,32,84,73,70,70,32,102,105,108,101,44,32,98,97,100,32,66,105,103,84,73,70,70,32,117,110,117,115,101,100,32,37,100,32,40,48,120,37,120,41,0,40,116,111,102,102,95,116,41,116,105,102,45,62,116,105,102,95,115,105,122,101,61,61,110,0,116,105,102,95,111,112,101,110,46,99,0,70,105,108,101,32,110,111,116,32,111,112,101,110,32,102,111,114,32,114,101,97,100,105,110,103,0,67,97,110,32,110,111,116,32,114,101,97,100,32,115,99,97,110,108,105,110,101,115,32,102,114,111,109,32,97,32,116,105,108,101,100,32,105,109,97,103,101,0,40,116,105,102,45,62,116,105,102,95,102,108,97,103,115,38,84,73,70,70,95,78,79,82,69,65,68,82,65,87,41,61,61,48,0,116,105,102,95,114,101,97,100,46,99,0,84,73,70,70,82,101,97,100,66,117,102,102,101,114,83,101,116,117,112,0,73,110,118,97,108,105,100,32,98,117,102,102,101,114,32,115,105,122,101,0,83,101,101,107,32,101,114,114,111,114,32,97,116,32,115,99,97,110,108,105,110,101,32,37,108,117,44,32,115,116,114,105,112,32,37,108,117,0,82,101,97,100,32,101,114,114,111,114,32,97,116,32,115,99,97,110,108,105,110,101,32,37,108,117,59,32,103,111,116,32,37,108,108,117,32,98,121,116,101,115,44,32,101,120,112,101,99,116,101,100,32,37,108,108,117,0,84,73,70,70,82,101,97,100,69,110,99,111,100,101,100,83,116,114,105,112,0,37,108,117,58,32,83,116,114,105,112,32,111,117,116,32,111,102,32,114,97,110,103,101,44,32,109,97,120,32,37,108,117,0,84,73,70,70,70,105,108,108,83,116,114,105,112,0,73,110,118,97,108,105,100,32,115,116,114,105,112,32,98,121,116,101,32,99,111,117,110,116,32,37,108,108,117,44,32,115,116,114,105,112,32,37,108,117,0,82,101,97,100,32,101,114,114,111,114,32,111,110,32,115,116,114,105,112,32,37,108,117,59,32,103,111,116,32,37,108,108,117,32,98,121,116,101,115,44,32,101,120,112,101,99,116,101,100,32,37,108,108,117,0,68,97,116,97,32,98,117,102,102,101,114,32,116,111,111,32,115,109,97,108,108,32,116,111,32,104,111,108,100,32,115,116,114,105,112,32,37,108,117,0,78,111,32,115,112,97,99,101,32,102,111,114,32,100,97,116,97,32,98,117,102,102,101,114,32,97,116,32,115,99,97,110,108,105,110,101,32,37,108,117,0,67,97,110,32,110,111,116,32,114,101,97,100,32,116,105,108,101,115,32,102,114,111,109,32,97,32,115,116,114,105,112,112,101,100,32,105,109,97,103,101,0,84,73,70,70,82,101,97,100,69,110,99,111,100,101,100,84,105,108,101,0,37,108,117,58,32,84,105,108,101,32,111,117,116,32,111,102,32,114,97,110,103,101,44,32,109,97,120,32,37,108,117,0,84,73,70,70,70,105,108,108,84,105,108,101,0,37,108,108,117,58,32,73,110,118,97,108,105,100,32,116,105,108,101,32,98,121,116,101,32,99,111,117,110,116,44,32,116,105,108,101,32,37,108,117,0,68,97,116,97,32,98,117,102,102,101,114,32,116,111,111,32,115,109,97,108,108,32,116,111,32,104,111,108,100,32,116,105,108,101,32,37,108,117,0,84,73,70,70,83,116,97,114,116,84,105,108,101,0,90,101,114,111,32,116,105,108,101,115,0,40,99,99,32,38,32,49,41,32,61,61,32,48,0,95,84,73,70,70,83,119,97,98,49,54,66,105,116,68,97,116,97,0,40,99,99,32,37,32,51,41,32,61,61,32,48,0,95,84,73,70,70,83,119,97,98,50,52,66,105,116,68,97,116,97,0,40,99,99,32,38,32,51,41,32,61,61,32,48,0,95,84,73,70,70,83,119,97,98,51,50,66,105,116,68,97,116,97,0,40,99,99,32,38,32,55,41,32,61,61,32,48,0,95,84,73,70,70,83,119,97,98,54,52,66,105,116,68,97,116,97,0,84,73,70,70,82,101,97,100,82,97,119,84,105,108,101,49,0,83,101,101,107,32,101,114,114,111,114,32,97,116,32,114,111,119,32,37,108,117,44,32,99,111,108,32,37,108,117,44,32,116,105,108,101,32,37,108,117,0,82,101,97,100,32,101,114,114,111,114,32,97,116,32,114,111,119,32,37,108,117,44,32,99,111,108,32,37,108,117,59,32,103,111,116,32,37,108,108,117,32,98,121,116,101,115,44,32,101,120,112,101,99,116,101,100,32,37,108,108,117,0,82,101,97,100,32,101,114,114,111,114,32,97,116,32,114,111,119,32,37,108,117,44,32,99,111,108,32,37,108,117,44,32,116,105,108,101,32,37,108,117,59,32,103,111,116,32,37,108,108,117,32,98,121,116,101,115,44,32,101,120,112,101,99,116,101,100,32,37,108,108,117,0,84,73,70,70,82,101,97,100,82,97,119,83,116,114,105,112,49,0,82,101,97,100,32,101,114,114,111,114,32,97,116,32,115,99,97,110,108,105,110,101,32,37,108,117,44,32,115,116,114,105,112,32,37,108,117,59,32,103,111,116,32,37,108,108,117,32,98,121,116,101,115,44,32,101,120,112,101,99,116,101,100,32,37,108,108,117,0,84,73,70,70,67,111,109,112,117,116,101,83,116,114,105,112,0,84,73,70,70,78,117,109,98,101,114,79,102,83,116,114,105,112,115,0,84,73,70,70,86,83,116,114,105,112,83,105,122,101,54,52,0,73,110,118,97,108,105,100,32,116,100,95,115,97,109,112,108,101,115,112,101,114,112,105,120,101,108,32,118,97,108,117,101,0,84,73,70,70,83,99,97,110,108,105,110,101,83,105,122,101,54,52,0,73,110,118,97,108,105,100,32,89,67,98,67,114,32,115,117,98,115,97,109,112,108,105,110,103,0,67,111,109,112,117,116,101,100,32,115,99,97,110,108,105,110,101,32,115,105,122,101,32,105,115,32,122,101,114,111,0,84,73,70,70,86,83,116,114,105,112,83,105,122,101,0,84,73,70,70,83,116,114,105,112,83,105,122,101,0,84,73,70,70,83,99,97,110,108,105,110,101,83,105,122,101,0,73,110,116,101,103,101,114,32,97,114,105,116,104,109,101,116,105,99,32,111,118,101,114,102,108,111,119,0,0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,37,108,117,58,32,67,111,108,32,111,117,116,32,111,102,32,114,97,110,103,101,44,32,109,97,120,32,37,108,117,0,37,108,117,58,32,82,111,119,32,111,117,116,32,111,102,32,114,97,110,103,101,44,32,109,97,120,32,37,108,117,0,37,108,117,58,32,68,101,112,116,104,32,111,117,116,32,111,102,32,114,97,110,103,101,44,32,109,97,120,32,37,108,117,0,37,108,117,58,32,83,97,109,112,108,101,32,111,117,116,32,111,102,32,114,97,110,103,101,44,32,109,97,120,32,37,108,117,0,84,73,70,70,78,117,109,98,101,114,79,102,84,105,108,101,115,0,84,73,70,70,84,105,108,101,82,111,119,83,105,122,101,54,52,0,84,105,108,101,32,108,101,110,103,116,104,32,105,115,32,122,101,114,111,0,84,105,108,101,32,119,105,100,116,104,32,105,115,32,122,101,114,111,0,84,73,70,70,84,105,108,101,82,111,119,83,105,122,101,0,83,97,109,112,108,101,115,32,112,101,114,32,112,105,120,101,108,32,105,115,32,122,101,114,111,0,67,111,109,112,117,116,101,100,32,116,105,108,101,32,114,111,119,32,115,105,122,101,32,105,115,32,122,101,114,111,0,73,110,116,101,103,101,114,32,111,118,101,114,102,108,111,119,0,84,73,70,70,86,84,105,108,101,83,105,122,101,54,52,0,73,110,118,97,108,105,100,32,89,67,98,67,114,32,115,117,98,115,97,109,112,108,105,110,103,32,40,37,100,120,37,100,41,0,84,73,70,70,84,105,108,101,83,105,122,101,0,116,100,45,62,116,100,95,110,115,116,114,105,112,115,32,62,32,48,0,116,105,102,95,119,114,105,116,101,46,99,0,84,73,70,70,65,112,112,101,110,100,84,111,83,116,114,105,112,0,83,101,101,107,32,101,114,114,111,114,32,97,116,32,115,99,97,110,108,105,110,101,32,37,108,117,0,87,114,105,116,101,32,101,114,114,111,114,32,97,116,32,115,99,97,110,108,105,110,101,32,37,108,117,0,84,73,70,70,79,112,101,110,0,37,115,58,32,37,115,0,37,115,58,32,67,97,110,110,111,116,32,111,112,101,110,0,37,115,58,32,0,46,10,0,87,97,114,110,105,110,103,44,32,0,73,110,116,101,103,101,114,32,111,118,101,114,102,108,111,119,32,105,110,32,37,115,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,37,115,32,40,37,108,100,32,101,108,101,109,101,110,116,115,32,111,102,32,37,108,100,32,98,121,116,101,115,32,101,97,99,104,41,0,78,111,32,115,112,97,99,101,32,102,111,114,32,34,84,114,97,110,115,102,101,114,70,117,110,99,116,105,111,110,34,32,116,97,103,0,37,115,32,37,115,32,101,110,99,111,100,105,110,103,32,105,115,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,115,99,97,110,108,105,110,101,0,67,111,109,112,114,101,115,115,105,111,110,32,115,99,104,101,109,101,32,37,117,32,37,115,32,101,110,99,111,100,105,110,103,32,105,115,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,37,115,32,37,115,32,100,101,99,111,100,105,110,103,32,105,115,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,67,111,109,112,114,101,115,115,105,111,110,32,115,99,104,101,109,101,32,37,117,32,37,115,32,100,101,99,111,100,105,110,103,32,105,115,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,67,111,109,112,114,101,115,115,105,111,110,32,97,108,103,111,114,105,116,104,109,32,100,111,101,115,32,110,111,116,32,115,117,112,112,111,114,116,32,114,97,110,100,111,109,32,97,99,99,101,115,115,0,69,114,114,111,114,32,117,112,100,97,116,105,110,103,32,84,73,70,70,32,104,101,97,100,101,114,0,84,73,70,70,82,101,119,114,105,116,101,68,105,114,101,99,116,111,114,121,0,69,114,114,111,114,32,102,101,116,99,104,105,110,103,32,100,105,114,101,99,116,111,114,121,32,99,111,117,110,116,0,69,114,114,111,114,32,102,101,116,99,104,105,110,103,32,100,105,114,101,99,116,111,114,121,32,108,105,110,107,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,100,105,114,101,99,116,111,114,121,32,108,105,110,107,0,83,97,110,105,116,121,32,99,104,101,99,107,32,111,110,32,116,97,103,32,99,111,117,110,116,32,102,97,105,108,101,100,44,32,108,105,107,101,108,121,32,99,111,114,114,117,112,116,32,84,73,70,70,0,84,73,70,70,82,101,115,101,116,70,105,101,108,100,0,77,101,109,111,114,121,32,109,97,112,112,101,100,32,102,105,108,101,115,32,110,111,116,32,99,117,114,114,101,110,116,108,121,32,115,117,112,112,111,114,116,101,100,32,102,111,114,32,116,104,105,115,32,111,112,101,114,97,116,105,111,110,46,0,65,116,116,101,109,112,116,32,116,111,32,114,101,115,101,116,32,102,105,101,108,100,32,111,110,32,100,105,114,101,99,116,111,114,121,32,110,111,116,32,97,108,114,101,97,100,121,32,111,110,32,100,105,115,107,46,0,37,115,58,32,83,101,101,107,32,101,114,114,111,114,32,97,99,99,101,115,115,105,110,103,32,84,73,70,70,32,100,105,114,101,99,116,111,114,121,0,37,115,58,32,67,97,110,32,110,111,116,32,114,101,97,100,32,84,73,70,70,32,100,105,114,101,99,116,111,114,121,32,99,111,117,110,116,0,37,115,58,32,67,97,110,32,110,111,116,32,114,101,97,100,32,84,73,70,70,32,100,105,114,101,99,116,111,114,121,32,101,110,116,114,121,46,0,37,115,58,32,67,111,117,108,100,32,110,111,116,32,102,105,110,100,32,116,97,103,32,37,100,46,0,102,111,114,32,102,105,101,108,100,32,98,117,102,102,101,114,46,0,86,97,108,117,101,32,101,120,99,101,101,100,115,32,51,50,98,105,116,32,114,97,110,103,101,32,111,102,32,111,117,116,112,117,116,32,116,121,112,101,46,0,37,115,58,32,67,97,110,32,110,111,116,32,119,114,105,116,101,32,84,73,70,70,32,100,105,114,101,99,116,111,114,121,32,101,110,116,114,121,46,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,83,101,99,0,69,114,114,111,114,32,112,111,115,116,45,101,110,99,111,100,105,110,103,32,98,101,102,111,114,101,32,100,105,114,101,99,116,111,114,121,32,119,114,105,116,101,0,69,114,114,111,114,32,102,108,117,115,104,105,110,103,32,100,97,116,97,32,98,101,102,111,114,101,32,100,105,114,101,99,116,111,114,121,32,119,114,105,116,101,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,83,104,111,114,116,80,101,114,83,97,109,112,108,101,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,111,108,111,114,109,97,112,0,99,111,117,110,116,60,48,120,56,48,48,48,48,48,48,48,0,116,105,102,95,100,105,114,119,114,105,116,101,46,99,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,83,104,111,114,116,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,84,114,97,110,115,102,101,114,102,117,110,99,116,105,111,110,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,83,117,98,105,102,100,0,112,97,32,33,61,32,48,0,42,112,97,32,60,61,32,48,120,70,70,70,70,70,70,70,70,85,76,0,111,45,62,102,105,101,108,100,95,116,121,112,101,61,61,84,73,70,70,95,65,83,67,73,73,0,111,45,62,102,105,101,108,100,95,114,101,97,100,99,111,117,110,116,61,61,84,73,70,70,95,86,65,82,73,65,66,76,69,0,111,45,62,102,105,101,108,100,95,112,97,115,115,99,111,117,110,116,61,61,48,0,111,45,62,102,105,101,108,100,95,116,121,112,101,61,61,84,73,70,70,95,83,72,79,82,84,0,111,45,62,102,105,101,108,100,95,114,101,97,100,99,111,117,110,116,61,61,49,0,111,45,62,102,105,101,108,100,95,116,121,112,101,61,61,84,73,70,70,95,76,79,78,71,0,111,45,62,102,105,101,108,100,95,116,121,112,101,61,61,84,73,70,70,95,85,78,68,69,70,73,78,69,68,0,111,45,62,102,105,101,108,100,95,114,101,97,100,99,111,117,110,116,61,61,84,73,70,70,95,86,65,82,73,65,66,76,69,50,0,111,45,62,102,105,101,108,100,95,112,97,115,115,99,111,117,110,116,61,61,49,0,48,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,83,115,104,111,114,116,65,114,114,97,121,0,99,111,117,110,116,60,48,120,52,48,48,48,48,48,48,48,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,76,111,110,103,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,83,108,111,110,103,65,114,114,97,121,0,99,111,117,110,116,60,48,120,50,48,48,48,48,48,48,48,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,76,111,110,103,56,65,114,114,97,121,0,116,105,102,45,62,116,105,102,95,102,108,97,103,115,38,84,73,70,70,95,66,73,71,84,73,70,70,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,83,108,111,110,103,56,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,83,114,97,116,105,111,110,97,108,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,70,108,111,97,116,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,68,111,117,98,108,101,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,73,102,100,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,73,102,100,56,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,73,102,100,73,102,100,56,65,114,114,97,121,0,65,116,116,101,109,112,116,32,116,111,32,119,114,105,116,101,32,118,97,108,117,101,32,108,97,114,103,101,114,32,116,104,97,110,32,48,120,70,70,70,70,70,70,70,70,32,105,110,32,67,108,97,115,115,105,99,32,84,73,70,70,32,102,105,108,101,46,0,84,73,70,70,76,105,110,107,68,105,114,101,99,116,111,114,121,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,117,98,73,70,68,32,100,105,114,101,99,116,111,114,121,32,108,105,110,107,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,84,73,70,70,32,104,101,97,100,101,114,0,77,97,120,105,109,117,109,32,84,73,70,70,32,102,105,108,101,32,115,105,122,101,32,101,120,99,101,101,100,101,100,0,110,97,60,110,100,105,114,0,73,79,32,101,114,114,111,114,32,119,114,105,116,105,110,103,32,100,105,114,101,99,116,111,114,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,82,97,116,105,111,110,97,108,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,83,97,109,112,108,101,102,111,114,109,97,116,65,114,114,97,121,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,76,111,110,103,76,111,110,103,56,65,114,114,97,121,0,118,97,108,117,101,62,61,48,46,48,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,67,104,101,99,107,101,100,82,97,116,105,111,110,97,108,0,100,105,114,91,109,93,46,116,100,105,114,95,116,97,103,33,61,116,97,103,0,84,73,70,70,87,114,105,116,101,68,105,114,101,99,116,111,114,121,84,97,103,68,97,116,97,0,73,79,32,101,114,114,111,114,32,119,114,105,116,105,110,103,32,116,97,103,32,100,97,116,97,0,100,97,116,97,108,101,110,103,116,104,60,48,120,56,48,48,48,48,48,48,48,85,76,0,78,111,110,101,0,76,90,87,0,80,97,99,107,66,105,116,115,0,84,104,117,110,100,101,114,83,99,97,110,0,78,101,88,84,0,74,80,69,71,0,79,108,100,45,115,116,121,108,101,32,74,80,69,71,0,67,67,73,84,84,32,82,76,69,0,67,67,73,84,84,32,82,76,69,47,87,0,67,67,73,84,84,32,71,114,111,117,112,32,51,0,67,67,73,84,84,32,71,114,111,117,112,32,52,0,73,83,79,32,74,66,73,71,0,68,101,102,108,97,116,101,0,65,100,111,98,101,68,101,102,108,97,116,101,0,80,105,120,97,114,76,111,103,0,83,71,73,76,111,103,0,83,71,73,76,111,103,50,52,0,76,90,77,65,0,37,100,0,37,115,32,99,111,109,112,114,101,115,115,105,111,110,32,115,117,112,112,111,114,116,32,105,115,32,110,111,116,32,99,111,110,102,105,103,117,114,101,100,0,110,32,62,32,48,0,116,105,102,95,100,117,109,112,109,111,100,101,46,99,0,68,117,109,112,77,111,100,101,69,110,99,111,100,101,0,68,117,109,112,77,111,100,101,68,101,99,111,100,101,0,78,111,116,32,101,110,111,117,103,104,32,100,97,116,97,32,102,111,114,32,115,99,97,110,108,105,110,101,32,37,108,117,44,32,101,120,112,101,99,116,101,100,32,97,32,114,101,113,117,101,115,116,32,102,111,114,32,97,116,32,109,111,115,116,32,37,108,108,100,32,98,121,116,101,115,44,32,103,111,116,32,97,32,114,101,113,117,101,115,116,32,102,111,114,32,37,108,108,100,32,98,121,116,101,115,0,0,128,192,224,240,248,252,254,255,120,32,61,61,32,108,97,115,116,120,0,116,105,102,95,102,97,120,51,46,99,0,95,84,73,70,70,70,97,120,51,102,105,108,108,114,117,110,115,0,84,73,70,70,73,110,105,116,67,67,73,84,84,70,97,120,51,0,77,101,114,103,105,110,103,32,67,67,73,84,84,32,70,97,120,32,51,32,99,111,100,101,99,45,115,112,101,99,105,102,105,99,32,116,97,103,115,32,102,97,105,108,101,100,0,84,73,70,70,73,110,105,116,67,67,73,84,84,70,97,120,52,0,77,101,114,103,105,110,103,32,67,67,73,84,84,32,70,97,120,32,52,32,99,111,100,101,99,45,115,112,101,99,105,102,105,99,32,116,97,103,115,32,102,97,105,108,101,100,0,70,97,120,51,68,101,99,111,100,101,82,76,69,0,116,105,108,101,0,115,116,114,105,112,0,66,97,100,32,99,111,100,101,32,119,111,114,100,32,97,116,32,108,105,110,101,32,37,117,32,111,102,32,37,115,32,37,117,32,40,120,32,37,117,41,0,80,114,101,109,97,116,117,114,101,32,69,79,70,32,97,116,32,108,105,110,101,32,37,117,32,111,102,32,37,115,32,37,117,32,40,120,32,37,117,41,0,80,114,101,109,97,116,117,114,101,32,69,79,76,0,76,105,110,101,32,108,101,110,103,116,104,32,109,105,115,109,97,116,99,104,0,37,115,32,97,116,32,108,105,110,101,32,37,117,32,111,102,32,37,115,32,37,117,32,40,103,111,116,32,37,117,44,32,101,120,112,101,99,116,101,100,32,37,117,41,0,108,101,110,103,116,104,32,60,32,57,0,70,97,120,51,80,117,116,66,105,116,115,0,70,97,120,52,69,110,99,111,100,101,0,70,114,97,99,116,105,111,110,97,108,32,115,99,97,110,108,105,110,101,115,32,99,97,110,110,111,116,32,98,101,32,119,114,105,116,116,101,110,0,8,7,6,6,5,5,5,5,4,4,4,4,4,4,4,4,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+133156);allocate([112,117,116,115,112,97,110,0,116,101,45,62,114,117,110,108,101,110,32,61,61,32,54,52,42,40,115,112,97,110,62,62,54,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,6,6,7,8,70,97,120,52,68,101,99,111,100,101,0,85,110,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,40,110,111,116,32,115,117,112,112,111,114,116,101,100,41,32,97,116,32,108,105,110,101,32,37,117,32,111,102,32,37,115,32,37,117,32,40,120,32,37,117,41,0,71,114,111,117,112,52,79,112,116,105,111,110,115,0,71,114,111,117,112,51,79,112,116,105,111,110,115,0,73,110,105,116,67,67,73,84,84,70,97,120,51,0,77,101,114,103,105,110,103,32,99,111,109,109,111,110,32,67,67,73,84,84,32,70,97,120,32,99,111,100,101,99,45,115,112,101,99,105,102,105,99,32,116,97,103,115,32,102,97,105,108,101,100,0,78,111,32,115,112,97,99,101,32,102,111,114,32,115,116,97,116,101,32,98,108,111,99,107,0,70,97,120,51,67,108,101,97,110,117,112,0,70,97,120,51,69,110,99,111,100,101,0,116,112,97,114,109,32,60,32,57,0,70,97,120,51,80,117,116,69,79,76,0,70,97,120,51,80,114,101,69,110,99,111,100,101,0,70,97,120,51,68,101,99,111,100,101,49,68,0,70,97,120,51,80,114,101,68,101,99,111,100,101,0,70,97,120,51,83,101,116,117,112,83,116,97,116,101,0,66,105,116,115,47,115,97,109,112,108,101,32,109,117,115,116,32,98,101,32,49,32,102,111,114,32,71,114,111,117,112,32,51,47,52,32,101,110,99,111,100,105,110,103,47,100,101,99,111,100,105,110,103,0,82,111,119,32,112,105,120,101,108,115,32,105,110,116,101,103,101,114,32,111,118,101,114,102,108,111,119,32,40,114,111,119,112,105,120,101,108,115,32,37,117,41,0,102,111,114,32,71,114,111,117,112,32,51,47,52,32,114,117,110,32,97,114,114,97,121,115,0,78,111,32,115,112,97,99,101,32,102,111,114,32,71,114,111,117,112,32,51,47,52,32,114,101,102,101,114,101,110,99,101,32,108,105,110,101,0,70,97,120,51,68,101,99,111,100,101,50,68,0,70,97,120,51,80,114,105,110,116,68,105,114,0,32,32,71,114,111,117,112,32,52,32,79,112,116,105,111,110,115,58,0,37,115,117,110,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,0,32,0,32,32,71,114,111,117,112,32,51,32,79,112,116,105,111,110,115,58,0,37,115,50,45,100,32,101,110,99,111,100,105,110,103,0,43,0,37,115,69,79,76,32,112,97,100,100,105,110,103,0,32,40,37,108,117,32,61,32,48,120,37,108,120,41,10,0,32,32,70,97,120,32,68,97,116,97,58,0,32,99,108,101,97,110,0,32,114,101,99,101,105,118,101,114,32,114,101,103,101,110,101,114,97,116,101,100,0,32,117,110,99,111,114,114,101,99,116,101,100,32,101,114,114,111,114,115,0,32,40,37,117,32,61,32,48,120,37,120,41,10,0,32,32,66,97,100,32,70,97,120,32,76,105,110,101,115,58,32,37,108,117,10,0,32,32,67,111,110,115,101,99,117,116,105,118,101,32,66,97,100,32,70,97,120,32,76,105,110,101,115,58,32,37,108,117,10,0,70,97,120,51,86,83,101,116,70,105,101,108,100,0,115,112,45,62,118,115,101,116,112,97,114,101,110,116,32,33,61,32,48,0,70,97,120,51,86,71,101,116,70,105,101,108,100,0,70,97,120,77,111,100,101,0,70,97,120,70,105,108,108,70,117,110,99,0,66,97,100,70,97,120,76,105,110,101,115,0,67,108,101,97,110,70,97,120,68,97,116,97,0,67,111,110,115,101,99,117,116,105,118,101,66,97,100,70,97,120,76,105,110,101,115,0,115,99,104,101,109,101,32,61,61,32,67,79,77,80,82,69,83,83,73,79,78,95,74,80,69,71,0,116,105,102,95,106,112,101,103,46,99,0,84,73,70,70,73,110,105,116,74,80,69,71,0,77,101,114,103,105,110,103,32,74,80,69,71,32,99,111,100,101,99,45,115,112,101,99,105,102,105,99,32,116,97,103,115,32,102,97,105,108,101,100,0,78,111,32,115,112,97,99,101,32,102,111,114,32,74,80,69,71,32,115,116,97,116,101,32,98,108,111,99,107,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,74,80,69,71,32,116,97,98,108,101,115,0,74,80,69,71,67,108,101,97,110,117,112,0,74,80,69,71,69,110,99,111,100,101,0,102,114,97,99,116,105,111,110,97,108,32,115,99,97,110,108,105,110,101,32,100,105,115,99,97,114,100,101,100,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,0,74,80,69,71,80,114,101,69,110,99,111,100,101,0,33,115,112,45,62,99,105,110,102,111,46,99,111,109,109,46,105,115,95,100,101,99,111,109,112,114,101,115,115,111,114,0,83,116,114,105,112,47,116,105,108,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,74,80,69,71,0,74,80,69,71,69,110,99,111,100,101,82,97,119,0,74,80,69,71,83,101,116,117,112,69,110,99,111,100,101,0,80,104,111,116,111,109,101,116,114,105,99,73,110,116,101,114,112,114,101,116,97,116,105,111,110,32,37,100,32,110,111,116,32,97,108,108,111,119,101,100,32,102,111,114,32,74,80,69,71,0,66,105,116,115,80,101,114,83,97,109,112,108,101,32,37,100,32,110,111,116,32,97,108,108,111,119,101,100,32,102,111,114,32,74,80,69,71,0,74,80,69,71,32,116,105,108,101,32,104,101,105,103,104,116,32,109,117,115,116,32,98,101,32,109,117,108,116,105,112,108,101,32,111,102,32,37,100,0,74,80,69,71,32,116,105,108,101,32,119,105,100,116,104,32,109,117,115,116,32,98,101,32,109,117,108,116,105,112,108,101,32,111,102,32,37,100,0,82,111,119,115,80,101,114,83,116,114,105,112,32,109,117,115,116,32,98,101,32,109,117,108,116,105,112,108,101,32,111,102,32,37,100,32,102,111,114,32,74,80,69,71,0,0,0,0,0,0,0,0,0,0,0,84,73,70,70,106,112,101,103,95,116,97,98,108,101,115,95,100,101,115,116,0,78,111,32,115,112,97,99,101,32,102,111,114,32,74,80,69,71,84,97,98,108,101,115,0,74,80,69,71,76,105,98,0,102,114,97,99,116,105,111,110,97,108,32,115,99,97,110,108,105,110,101,32,110,111,116,32,114,101,97,100,0,74,80,69,71,80,114,101,68,101,99,111,100,101,0,115,112,45,62,99,105,110,102,111,46,99,111,109,109,46,105,115,95,100,101,99,111,109,112,114,101,115,115,111,114,0,73,109,112,114,111,112,101,114,32,74,80,69,71,32,115,116,114,105,112,47,116,105,108,101,32,115,105,122,101,44,32,101,120,112,101,99,116,101,100,32,37,100,120,37,100,44,32,103,111,116,32,37,100,120,37,100,0,74,80,69,71,32,115,116,114,105,112,47,116,105,108,101,32,115,105,122,101,32,101,120,99,101,101,100,115,32,101,120,112,101,99,116,101,100,32,100,105,109,101,110,115,105,111,110,115,44,32,101,120,112,101,99,116,101,100,32,37,100,120,37,100,44,32,103,111,116,32,37,100,120,37,100,0,73,109,112,114,111,112,101,114,32,74,80,69,71,32,99,111,109,112,111,110,101,110,116,32,99,111,117,110,116,0,73,109,112,114,111,112,101,114,32,74,80,69,71,32,100,97,116,97,32,112,114,101,99,105,115,105,111,110,0,73,109,112,114,111,112,101,114,32,74,80,69,71,32,115,97,109,112,108,105,110,103,32,102,97,99,116,111,114,115,32,37,100,44,37,100,10,65,112,112,97,114,101,110,116,108,121,32,115,104,111,117,108,100,32,98,101,32,37,100,44,37,100,46,0,73,109,112,114,111,112,101,114,32,74,80,69,71,32,115,97,109,112,108,105,110,103,32,102,97,99,116,111,114,115,0,74,80,69,71,68,101,99,111,100,101,82,97,119,0,97,112,112,108,105,99,97,116,105,111,110,32,98,117,102,102,101,114,32,110,111,116,32,108,97,114,103,101,32,101,110,111,117,103,104,32,102,111,114,32,97,108,108,32,100,97,116,97,46,0,97,112,112,108,105,99,97,116,105,111,110,32,98,117,102,102,101,114,32,110,111,116,32,108,97,114,103,101,32,101,110,111,117,103,104,32,102,111,114,32,97,108,108,32,100,97,116,97,44,32,112,111,115,115,105,98,108,101,32,115,117,98,115,97,109,112,108,105,110,103,32,105,115,115,117,101,0,84,73,70,70,82,101,97,100,83,99,97,110,108,105,110,101,0,115,99,97,110,108,105,110,101,32,111,114,105,101,110,116,101,100,32,97,99,99,101,115,115,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,102,111,114,32,100,111,119,110,115,97,109,112,108,101,100,32,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,105,109,97,103,101,115,44,32,99,111,110,115,105,100,101,114,32,101,110,97,98,108,105,110,103,32,84,73,70,70,95,74,80,69,71,67,79,76,79,82,77,79,68,69,32,97,115,32,74,80,69,71,67,79,76,79,82,77,79,68,69,95,82,71,66,46,0,74,80,69,71,83,101,116,117,112,68,101,99,111,100,101,0,66,111,103,117,115,32,74,80,69,71,84,97,98,108,101,115,32,102,105,101,108,100,0,255,217,74,80,69,71,70,105,120,117,112,84,97,103,115,83,117,98,115,97,109,112,108,105,110,103,0,85,110,97,98,108,101,32,116,111,32,97,108,108,111,99,97,116,101,32,109,101,109,111,114,121,32,102,111,114,32,97,117,116,111,45,99,111,114,114,101,99,116,105,110,103,32,111,102,32,115,117,98,115,97,109,112,108,105,110,103,32,118,97,108,117,101,115,59,32,97,117,116,111,45,99,111,114,114,101,99,116,105,110,103,32,115,107,105,112,112,101,100,0,109,60,48,120,56,48,48,48,48,48,48,48,85,76,0,74,80,69,71,70,105,120,117,112,84,97,103,115,83,117,98,115,97,109,112,108,105,110,103,82,101,97,100,66,121,116,101,0,74,80,69,71,70,105,120,117,112,84,97,103,115,83,117,98,115,97,109,112,108,105,110,103,83,101,99,0,83,117,98,115,97,109,112,108,105,110,103,32,118,97,108,117,101,115,32,105,110,115,105,100,101,32,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,104,97,118,101,32,110,111,32,84,73,70,70,32,101,113,117,105,118,97,108,101,110,116,44,32,97,117,116,111,45,99,111,114,114,101,99,116,105,111,110,32,111,102,32,84,73,70,70,32,115,117,98,115,97,109,112,108,105,110,103,32,118,97,108,117,101,115,32,102,97,105,108,101,100,0,65,117,116,111,45,99,111,114,114,101,99,116,101,100,32,102,111,114,109,101,114,32,84,73,70,70,32,115,117,98,115,97,109,112,108,105,110,103,32,118,97,108,117,101,115,32,91,37,100,44,37,100,93,32,116,111,32,109,97,116,99,104,32,115,117,98,115,97,109,112,108,105,110,103,32,118,97,108,117,101,115,32,105,110,115,105,100,101,32,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,91,37,100,44,37,100,93,0,85,110,97,98,108,101,32,116,111,32,97,117,116,111,45,99,111,114,114,101,99,116,32,115,117,98,115,97,109,112,108,105,110,103,32,118,97,108,117,101,115,44,32,108,105,107,101,108,121,32,99,111,114,114,117,112,116,32,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,105,110,32,102,105,114,115,116,32,115,116,114,105,112,47,116,105,108,101,59,32,97,117,116,111,45,99,111,114,114,101,99,116,105,110,103,32,115,107,105,112,112,101,100,0,74,80,69,71,80,114,105,110,116,68,105,114,0,32,32,74,80,69,71,32,84,97,98,108,101,115,58,32,40,37,108,117,32,98,121,116,101,115,41,10,0,74,80,69,71,86,83,101,116,70,105,101,108,100,0,74,80,69,71,86,71,101,116,70,105,101,108,100,0,74,80,69,71,84,97,98,108,101,115,0,115,99,104,101,109,101,32,61,61,32,67,79,77,80,82,69,83,83,73,79,78,95,83,71,73,76,79,71,50,52,32,124,124,32,115,99,104,101,109,101,32,61,61,32,67,79,77,80,82,69,83,83,73,79,78,95,83,71,73,76,79,71,0,116,105,102,95,108,117,118,46,99,0,84,73,70,70,73,110,105,116,83,71,73,76,111,103,0,77,101,114,103,105,110,103,32,83,71,73,76,111,103,32,99,111,100,101,99,45,115,112,101,99,105,102,105,99,32,116,97,103,115,32,102,97,105,108,101,100,0,37,115,58,32,78,111,32,115,112,97,99,101,32,102,111,114,32,76,111,103,76,117,118,32,115,116,97,116,101,32,98,108,111,99,107,0,85,110,107,110,111,119,110,32,100,97,116,97,32,102,111,114,109,97,116,32,37,100,32,102,111,114,32,76,111,103,76,117,118,32,99,111,109,112,114,101,115,115,105,111,110,0,76,111,103,76,117,118,86,83,101,116,70,105,101,108,100,0,85,110,107,110,111,119,110,32,101,110,99,111,100,105,110,103,32,37,100,32,102,111,114,32,76,111,103,76,117,118,32,99,111,109,112,114,101,115,115,105,111,110,0,76,111,103,76,117,118,67,108,101,97,110,117,112,0,99,99,37,114,111,119,108,101,110,32,61,61,32,48,0,76,111,103,76,117,118,69,110,99,111,100,101,84,105,108,101,0,76,111,103,76,117,118,69,110,99,111,100,101,83,116,114,105,112,0,76,111,103,76,117,118,83,101,116,117,112,69,110,99,111,100,101,0,73,110,97,112,112,114,111,112,114,105,97,116,101,32,112,104,111,116,111,109,101,116,114,105,99,32,105,110,116,101,114,112,114,101,116,97,116,105,111,110,32,37,100,32,102,111,114,32,83,71,73,76,111,103,32,99,111,109,112,114,101,115,115,105,111,110,59,32,37,115,0,109,117,115,116,32,98,101,32,101,105,116,104,101,114,32,76,111,103,76,85,86,32,111,114,32,76,111,103,76,0,89,44,32,76,0,88,89,90,44,32,76,117,118,0,83,71,73,76,111,103,32,99,111,109,112,114,101,115,115,105,111,110,32,115,117,112,112,111,114,116,101,100,32,111,110,108,121,32,102,111,114,32,37,115,44,32,111,114,32,114,97,119,32,100,97,116,97,0,115,32,61,61,32,48,0,76,111,103,76,49,54,69,110,99,111,100,101,0,115,112,45,62,116,98,117,102,108,101,110,32,62,61,32,110,112,105,120,101,108,115,0,76,111,103,76,49,54,73,110,105,116,83,116,97,116,101,0,116,100,45,62,116,100,95,112,104,111,116,111,109,101,116,114,105,99,32,61,61,32,80,72,79,84,79,77,69,84,82,73,67,95,76,79,71,76,0,78,111,32,115,117,112,112,111,114,116,32,102,111,114,32,99,111,110,118,101,114,116,105,110,103,32,117,115,101,114,32,100,97,116,97,32,102,111,114,109,97,116,32,116,111,32,76,111,103,76,0,78,111,32,115,112,97,99,101,32,102,111,114,32,83,71,73,76,111,103,32,116,114,97,110,115,108,97,116,105,111,110,32,98,117,102,102,101,114,0,76,111,103,76,117,118,69,110,99,111,100,101,51,50,0,76,111,103,76,117,118,69,110,99,111,100,101,50,52,0,76,111,103,76,117,118,73,110,105,116,83,116,97,116,101,0,116,100,45,62,116,100,95,112,104,111,116,111,109,101,116,114,105,99,32,61,61,32,80,72,79,84,79,77,69,84,82,73,67,95,76,79,71,76,85,86,0,83,71,73,76,111,103,32,99,111,109,112,114,101,115,115,105,111,110,32,99,97,110,110,111,116,32,104,97,110,100,108,101,32,110,111,110,45,99,111,110,116,105,103,117,111,117,115,32,100,97,116,97,0,78,111,32,115,117,112,112,111,114,116,32,102,111,114,32,99,111,110,118,101,114,116,105,110,103,32,117,115,101,114,32,100,97,116,97,32,102,111,114,109,97,116,32,116,111,32,76,111,103,76,117,118,0,76,111,103,76,117,118,68,101,99,111,100,101,84,105,108,101,0,76,111,103,76,117,118,68,101,99,111,100,101,83,116,114,105,112,0,76,111,103,76,117,118,83,101,116,117,112,68,101,99,111,100,101,0,76,111,103,76,49,54,68,101,99,111,100,101,0,78,111,116,32,101,110,111,117,103,104,32,100,97,116,97,32,97,116,32,114,111,119,32,37,108,117,32,40,115,104,111,114,116,32,37,108,108,117,32,112,105,120,101,108,115,41,0,76,111,103,76,117,118,68,101,99,111,100,101,51,50,0,76,111,103,76,117,118,68,101,99,111,100,101,50,52,0,83,71,73,76,111,103,68,97,116,97,70,109,116,0,83,71,73,76,111,103,69,110,99,111,100,101,0,115,99,104,101,109,101,32,61,61,32,67,79,77,80,82,69,83,83,73,79,78,95,76,90,87,0,116,105,102,95,108,122,119,46,99,0,84,73,70,70,73,110,105,116,76,90,87,0,78,111,32,115,112,97,99,101,32,102,111,114,32,76,90,87,32,115,116,97,116,101,32,98,108,111,99,107,0,116,105,102,45,62,116,105,102,95,100,97,116,97,32,33,61,32,48,0,76,90,87,67,108,101,97,110,117,112,0,115,112,45,62,101,110,99,95,104,97,115,104,116,97,98,32,33,61,32,78,85,76,76,0,76,90,87,69,110,99,111,100,101,0,110,98,105,116,115,32,60,61,32,66,73,84,83,95,77,65,88,0,76,90,87,80,114,101,69,110,99,111,100,101,0,76,90,87,83,101,116,117,112,69,110,99,111,100,101,0,78,111,32,115,112,97,99,101,32,102,111,114,32,76,90,87,32,104,97,115,104,32,116,97,98,108,101,0,76,90,87,68,101,99,111,100,101,0,115,112,45,62,100,101,99,95,99,111,100,101,116,97,98,32,33,61,32,78,85,76,76,0,76,90,87,68,101,99,111,100,101,58,32,83,116,114,105,112,32,37,100,32,110,111,116,32,116,101,114,109,105,110,97,116,101,100,32,119,105,116,104,32,69,79,73,32,99,111,100,101,0,76,90,87,68,101,99,111,100,101,58,32,67,111,114,114,117,112,116,101,100,32,76,90,87,32,116,97,98,108,101,32,97,116,32,115,99,97,110,108,105,110,101,32,37,100,0,67,111,114,114,117,112,116,101,100,32,76,90,87,32,116,97,98,108,101,32,97,116,32,115,99,97,110,108,105,110,101,32,37,100,0,87,114,111,110,103,32,108,101,110,103,116,104,32,111,102,32,100,101,99,111,100,101,100,32,115,116,114,105,110,103,58,32,100,97,116,97,32,112,114,111,98,97,98,108,121,32,99,111,114,114,117,112,116,101,100,32,97,116,32,115,99,97,110,108,105,110,101,32,37,100,0,66,111,103,117,115,32,101,110,99,111,100,105,110,103,44,32,108,111,111,112,32,105,110,32,116,104,101,32,99,111,100,101,32,116,97,98,108,101,59,32,115,99,97,110,108,105,110,101,32,37,100,0,78,111,116,32,101,110,111,117,103,104,32,100,97,116,97,32,97,116,32,115,99,97,110,108,105,110,101,32,37,100,32,40,115,104,111,114,116,32,37,108,108,117,32,98,121,116,101,115,41,0,76,90,87,80,114,101,68,101,99,111,100,101,0,79,108,100,45,115,116,121,108,101,32,76,90,87,32,99,111,100,101,115,44,32,99,111,110,118,101,114,116,32,102,105,108,101,0,76,90,87,68,101,99,111,100,101,67,111,109,112,97,116,0,76,90,87,83,101,116,117,112,68,101,99,111,100,101,0,78,111,32,115,112,97,99,101,32,102,111,114,32,76,90,87,32,99,111,100,101,32,116,97,98,108,101,0,78,101,88,84,68,101,99,111,100,101,0,78,111,116,32,101,110,111,117,103,104,32,100,97,116,97,32,102,111,114,32,115,99,97,110,108,105,110,101,32,37,108,100,0,78,101,88,84,80,114,101,68,101,99,111,100,101,0,85,110,115,117,112,112,111,114,116,101,100,32,66,105,116,115,80,101,114,83,97,109,112,108,101,32,61,32,37,100,0,115,99,104,101,109,101,61,61,67,79,77,80,82,69,83,83,73,79,78,95,79,74,80,69,71,0,116,105,102,95,111,106,112,101,103,46,99,0,84,73,70,70,73,110,105,116,79,74,80,69,71,0,77,101,114,103,105,110,103,32,79,108,100,32,74,80,69,71,32,99,111,100,101,99,45,115,112,101,99,105,102,105,99,32,116,97,103,115,32,102,97,105,108,101,100,0,78,111,32,115,112,97,99,101,32,102,111,114,32,79,74,80,69,71,32,115,116,97,116,101,32,98,108,111,99,107,0,115,112,33,61,78,85,76,76,0,79,74,80,69,71,80,114,105,110,116,68,105,114,0,32,32,74,112,101,103,73,110,116,101,114,99,104,97,110,103,101,70,111,114,109,97,116,58,32,37,108,117,10,0,32,32,74,112,101,103,73,110,116,101,114,99,104,97,110,103,101,70,111,114,109,97,116,76,101,110,103,116,104,58,32,37,108,117,10,0,32,32,74,112,101,103,81,84,97,98,108,101,115,58,0,32,37,108,117,0,32,32,74,112,101,103,68,99,84,97,98,108,101,115,58,0,32,32,74,112,101,103,65,99,84,97,98,108,101,115,58,0,32,32,74,112,101,103,80,114,111,99,58,32,37,117,10,0,32,32,74,112,101,103,82,101,115,116,97,114,116,73,110,116,101,114,118,97,108,58,32,37,117,10,0,79,74,80,69,71,86,83,101,116,70,105,101,108,100,0,74,112,101,103,81,84,97,98,108,101,115,32,116,97,103,32,104,97,115,32,105,110,99,111,114,114,101,99,116,32,99,111,117,110,116,0,74,112,101,103,68,99,84,97,98,108,101,115,32,116,97,103,32,104,97,115,32,105,110,99,111,114,114,101,99,116,32,99,111,117,110,116,0,74,112,101,103,65,99,84,97,98,108,101,115,32,116,97,103,32,104,97,115,32,105,110,99,111,114,114,101,99,116,32,99,111,117,110,116,0,115,112,45,62,115,117,98,115,97,109,112,108,105,110,103,99,111,114,114,101,99,116,95,100,111,110,101,61,61,48,0,79,74,80,69,71,83,117,98,115,97,109,112,108,105,110,103,67,111,114,114,101,99,116,0,83,117,98,115,97,109,112,108,105,110,103,32,116,97,103,32,110,111,116,32,97,112,112,114,111,112,114,105,97,116,101,32,102,111,114,32,116,104,105,115,32,80,104,111,116,111,109,101,116,114,105,99,32,97,110,100,47,111,114,32,83,97,109,112,108,101,115,80,101,114,80,105,120,101,108,0,83,117,98,115,97,109,112,108,105,110,103,32,116,97,103,32,105,115,32,110,111,116,32,115,101,116,44,32,121,101,116,32,115,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,97,116,97,32,91,37,100,44,37,100,93,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,100,101,102,97,117,108,116,32,118,97,108,117,101,115,32,91,50,44,50,93,59,32,97,115,115,117,109,105,110,103,32,115,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,97,116,97,32,105,115,32,99,111,114,114,101,99,116,0,83,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,97,116,97,32,91,37,100,44,37,100,93,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,115,117,98,115,97,109,112,108,105,110,103,32,116,97,103,32,118,97,108,117,101,115,32,91,37,100,44,37,100,93,59,32,97,115,115,117,109,105,110,103,32,115,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,97,116,97,32,105,115,32,99,111,114,114,101,99,116,0,83,117,98,115,97,109,112,108,105,110,103,32,116,97,103,32,105,115,32,110,111,116,32,115,101,116,44,32,121,101,116,32,115,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,97,116,97,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,100,101,102,97,117,108,116,32,118,97,108,117,101,115,32,91,50,44,50,93,32,40,110,111,114,32,97,110,121,32,111,116,104,101,114,32,118,97,108,117,101,115,32,97,108,108,111,119,101,100,32,105,110,32,84,73,70,70,41,59,32,97,115,115,117,109,105,110,103,32,115,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,97,116,97,32,105,115,32,99,111,114,114,101,99,116,32,97,110,100,32,100,101,115,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,101,99,111,109,112,114,101,115,115,105,111,110,0,83,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,97,116,97,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,115,117,98,115,97,109,112,108,105,110,103,32,116,97,103,32,118,97,108,117,101,115,32,91,37,100,44,37,100,93,32,40,110,111,114,32,97,110,121,32,111,116,104,101,114,32,118,97,108,117,101,115,32,97,108,108,111,119,101,100,32,105,110,32,84,73,70,70,41,59,32,97,115,115,117,109,105,110,103,32,115,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,97,116,97,32,105,115,32,99,111,114,114,101,99,116,32,97,110,100,32,100,101,115,117,98,115,97,109,112,108,105,110,103,32,105,110,115,105,100,101,32,74,80,69,71,32,100,101,99,111,109,112,114,101,115,115,105,111,110,0,83,117,98,115,97,109,112,108,105,110,103,32,118,97,108,117,101,115,32,91,37,100,44,37,100,93,32,97,114,101,32,110,111,116,32,97,108,108,111,119,101,100,32,105,110,32,84,73,70,70,0,115,112,45,62,105,110,95,98,117,102,102,101,114,95,116,111,103,111,62,48,0,79,74,80,69,71,82,101,97,100,66,121,116,101,80,101,101,107,0,79,74,80,69,71,82,101,97,100,66,121,116,101,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,83,101,99,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,0,115,112,45,62,105,110,95,98,117,102,102,101,114,95,116,111,103,111,61,61,48,0,79,74,80,69,71,82,101,97,100,83,107,105,112,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,83,101,99,83,116,114,101,97,109,68,114,105,0,67,111,114,114,117,112,116,32,68,82,73,32,109,97,114,107,101,114,32,105,110,32,74,80,69,71,32,100,97,116,97,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,83,101,99,83,116,114,101,97,109,68,113,116,0,67,111,114,114,117,112,116,32,68,81,84,32,109,97,114,107,101,114,32,105,110,32,74,80,69,71,32,100,97,116,97,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,79,74,80,69,71,82,101,97,100,66,108,111,99,107,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,83,101,99,83,116,114,101,97,109,68,104,116,0,67,111,114,114,117,112,116,32,68,72,84,32,109,97,114,107,101,114,32,105,110,32,74,80,69,71,32,100,97,116,97,0,108,101,110,62,48,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,83,101,99,83,116,114,101,97,109,83,111,102,0,67,111,114,114,117,112,116,32,83,79,70,32,109,97,114,107,101,114,32,105,110,32,74,80,69,71,32,100,97,116,97,0,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,105,110,100,105,99,97,116,101,115,32,117,110,101,120,112,101,99,116,101,100,32,110,117,109,98,101,114,32,111,102,32,115,97,109,112,108,101,115,0,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,105,110,100,105,99,97,116,101,115,32,117,110,101,120,112,101,99,116,101,100,32,110,117,109,98,101,114,32,111,102,32,98,105,116,115,32,112,101,114,32,115,97,109,112,108,101,0,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,105,110,100,105,99,97,116,101,115,32,117,110,101,120,112,101,99,116,101,100,32,104,101,105,103,104,116,0,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,105,110,100,105,99,97,116,101,115,32,117,110,101,120,112,101,99,116,101,100,32,119,105,100,116,104,0,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,105,109,97,103,101,32,119,105,100,116,104,32,101,120,99,101,101,100,115,32,101,120,112,101,99,116,101,100,32,105,109,97,103,101,32,119,105,100,116,104,0,74,80,69,71,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,105,110,100,105,99,97,116,101,115,32,117,110,101,120,112,101,99,116,101,100,32,115,117,98,115,97,109,112,108,105,110,103,32,118,97,108,117,101,115,0,115,112,45,62,112,108,97,110,101,95,115,97,109,112,108,101,95,111,102,102,115,101,116,61,61,48,0,85,110,107,110,111,119,110,32,109,97,114,107,101,114,32,116,121,112,101,32,37,100,32,105,110,32,74,80,69,71,32,100,97,116,97,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,83,101,99,84,97,98,108,101,115,81,84,97,98,108,101,0,77,105,115,115,105,110,103,32,74,80,69,71,32,116,97,98,108,101,115,0,67,111,114,114,117,112,116,32,74,112,101,103,81,84,97,98,108,101,115,32,116,97,103,32,118,97,108,117,101,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,83,101,99,84,97,98,108,101,115,68,99,84,97,98,108,101,0,67,111,114,114,117,112,116,32,74,112,101,103,68,99,84,97,98,108,101,115,32,116,97,103,32,118,97,108,117,101,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,83,101,99,84,97,98,108,101,115,65,99,84,97,98,108,101,0,67,111,114,114,117,112,116,32,74,112,101,103,65,99,84,97,98,108,101,115,32,116,97,103,32,118,97,108,117,101,0,115,112,45,62,115,117,98,115,97,109,112,108,105,110,103,99,111,114,114,101,99,116,61,61,48,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,83,101,99,83,116,114,101,97,109,83,111,115,0,67,111,114,114,117,112,116,32,83,79,83,32,109,97,114,107,101,114,32,105,110,32,74,80,69,71,32,100,97,116,97,0,110,62,48,0,79,74,80,69,71,82,101,97,100,66,117,102,102,101,114,70,105,108,108,0,110,60,61,79,74,80,69,71,95,66,85,70,70,69,82,0,40,117,105,110,116,54,52,41,110,60,61,115,112,45,62,105,110,95,98,117,102,102,101,114,95,102,105,108,101,95,116,111,103,111,0,115,112,45,62,108,105,98,106,112,101,103,95,115,101,115,115,105,111,110,95,97,99,116,105,118,101,33,61,48,0,79,74,80,69,71,76,105,98,106,112,101,103,83,101,115,115,105,111,110,65,98,111,114,116,0,79,74,80,69,71,69,110,99,111,100,101,0,79,74,80,69,71,32,101,110,99,111,100,105,110,103,32,110,111,116,32,115,117,112,112,111,114,116,101,100,59,32,117,115,101,32,110,101,119,45,115,116,121,108,101,32,74,80,69,71,32,99,111,109,112,114,101,115,115,105,111,110,32,105,110,115,116,101,97,100,0,79,74,80,69,71,80,111,115,116,69,110,99,111,100,101,0,79,74,80,69,71,80,114,101,69,110,99,111,100,101,0,79,74,80,69,71,83,101,116,117,112,69,110,99,111,100,101,0,79,74,80,69,71,68,101,99,111,100,101,82,97,119,0,70,114,97,99,116,105,111,110,97,108,32,115,99,97,110,108,105,110,101,32,110,111,116,32,114,101,97,100,0,99,99,62,48,0,79,74,80,69,71,68,101,99,111,100,101,83,99,97,110,108,105,110,101,115,0,79,74,80,69,71,80,111,115,116,68,101,99,111,100,101,0,115,112,45,62,114,101,97,100,104,101,97,100,101,114,95,100,111,110,101,61,61,48,0,79,74,80,69,71,82,101,97,100,72,101,97,100,101,114,73,110,102,111,0,83,97,109,112,108,101,115,80,101,114,80,105,120,101,108,32,37,100,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,102,111,114,32,116,104,105,115,32,99,111,109,112,114,101,115,115,105,111,110,32,115,99,104,101,109,101,0,73,110,99,111,109,112,97,116,105,98,108,101,32,118,101,114,116,105,99,97,108,32,115,117,98,115,97,109,112,108,105,110,103,32,97,110,100,32,105,109,97,103,101,32,115,116,114,105,112,47,116,105,108,101,32,108,101,110,103,116,104,0,115,62,48,0,79,74,80,69,71,82,101,97,100,83,101,99,111,110,100,97,114,121,83,111,115,0,115,60,51,0,115,112,45,62,115,111,115,95,101,110,100,91,48,93,46,108,111,103,33,61,48,0,115,112,45,62,115,111,115,95,101,110,100,91,115,93,46,108,111,103,61,61,48,0,115,112,45,62,115,117,98,115,97,109,112,108,105,110,103,95,99,111,110,118,101,114,116,95,121,99,98,99,114,98,117,102,61,61,48,0,79,74,80,69,71,87,114,105,116,101,72,101,97,100,101,114,73,110,102,111,0,115,112,45,62,115,117,98,115,97,109,112,108,105,110,103,95,99,111,110,118,101,114,116,95,121,99,98,99,114,105,109,97,103,101,61,61,48,0,79,74,80,69,71,80,114,101,68,101,99,111,100,101,83,107,105,112,83,99,97,110,108,105,110,101,115,0,76,105,98,74,112,101,103,0,85,110,101,120,112,101,99,116,101,100,32,101,114,114,111,114,0,115,112,45,62,111,117,116,95,115,116,97,116,101,60,61,111,115,111,115,69,111,105,0,79,74,80,69,71,87,114,105,116,101,83,116,114,101,97,109,0,50,53,53,62,61,56,43,115,112,45,62,115,97,109,112,108,101,115,95,112,101,114,95,112,105,120,101,108,95,112,101,114,95,112,108,97,110,101,42,51,0,79,74,80,69,71,87,114,105,116,101,83,116,114,101,97,109,83,111,102,0,50,53,53,62,61,54,43,115,112,45,62,115,97,109,112,108,101,115,95,112,101,114,95,112,105,120,101,108,95,112,101,114,95,112,108,97,110,101,42,50,0,79,74,80,69,71,87,114,105,116,101,83,116,114,101,97,109,83,111,115,0,79,74,80,69,71,87,114,105,116,101,83,116,114,101,97,109,67,111,109,112,114,101,115,115,101,100,0,80,114,101,109,97,116,117,114,101,32,101,110,100,32,111,102,32,74,80,69,71,32,100,97,116,97,0,79,74,80,69,71,83,101,116,117,112,68,101,99,111,100,101,0,68,101,112,114,101,99,105,97,116,101,100,32,97,110,100,32,116,114,111,117,98,108,101,115,111,109,101,32,111,108,100,45,115,116,121,108,101,32,74,80,69,71,32,99,111,109,112,114,101,115,115,105,111,110,32,109,111,100,101,44,32,112,108,101,97,115,101,32,99,111,110,118,101,114,116,32,116,111,32,110,101,119,45,115,116,121,108,101,32,74,80,69,71,32,99,111,109,112,114,101,115,115,105,111,110,32,97,110,100,32,110,111,116,105,102,121,32,118,101,110,100,111,114,32,111,102,32,119,114,105,116,105,110,103,32,115,111,102,116,119,97,114,101,0,74,112,101,103,73,110,116,101,114,99,104,97,110,103,101,70,111,114,109,97,116,0,74,112,101,103,73,110,116,101,114,99,104,97,110,103,101,70,111,114,109,97,116,76,101,110,103,116,104,0,74,112,101,103,81,84,97,98,108,101,115,0,74,112,101,103,68,99,84,97,98,108,101,115,0,74,112,101,103,65,99,84,97,98,108,101,115,0,74,112,101,103,80,114,111,99,0,74,112,101,103,82,101,115,116,97,114,116,73,110,116,101,114,118,97,108,0,80,97,99,107,66,105,116,115,68,101,99,111,100,101,0,68,105,115,99,97,114,100,105,110,103,32,37,108,117,32,98,121,116,101,115,32,116,111,32,97,118,111,105,100,32,98,117,102,102,101,114,32,111,118,101,114,114,117,110,0,84,101,114,109,105,110,97,116,105,110,103,32,80,97,99,107,66,105,116,115,68,101,99,111,100,101,32,100,117,101,32,116,111,32,108,97,99,107,32,111,102,32,100,97,116,97,46,0,78,111,116,32,101,110,111,117,103,104,32,100,97,116,97,32,102,111,114,32,115,99,97,110,108,105,110,101,32,37,108,117,0,115,99,104,101,109,101,32,61,61,32,67,79,77,80,82,69,83,83,73,79,78,95,80,73,88,65,82,76,79,71,0,116,105,102,95,112,105,120,97,114,108,111,103,46,99,0,84,73,70,70,73,110,105,116,80,105,120,97,114,76,111,103,0,77,101,114,103,105,110,103,32,80,105,120,97,114,76,111,103,32,99,111,100,101,99,45,115,112,101,99,105,102,105,99,32,116,97,103,115,32,102,97,105,108,101,100,0,78,111,32,115,112,97,99,101,32,102,111,114,32,80,105,120,97,114,76,111,103,32,115,116,97,116,101,32,98,108,111,99,107,0,80,105,120,97,114,76,111,103,86,83,101,116,70,105,101,108,100,0,80,105,120,97,114,76,111,103,67,108,101,97,110,117,112,0,80,105,120,97,114,76,111,103,69,110,99,111,100,101,0,37,100,32,98,105,116,32,105,110,112,117,116,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,105,110,32,80,105,120,97,114,76,111,103,0,90,76,105,98,32,99,97,110,110,111,116,32,100,101,97,108,32,119,105,116,104,32,98,117,102,102,101,114,115,32,116,104,105,115,32,115,105,122,101,0,80,105,120,97,114,76,111,103,80,111,115,116,69,110,99,111,100,101,0,80,105,120,97,114,76,111,103,80,114,101,69,110,99,111,100,101,0,80,105,120,97,114,76,111,103,83,101,116,117,112,69,110,99,111,100,101,0,80,105,120,97,114,76,111,103,32,99,111,109,112,114,101,115,115,105,111,110,32,99,97,110,39,116,32,104,97,110,100,108,101,32,37,100,32,98,105,116,32,108,105,110,101,97,114,32,101,110,99,111,100,105,110,103,115,0,80,105,120,97,114,76,111,103,68,101,99,111,100,101,0,115,116,114,105,100,101,32,37,108,117,32,105,115,32,110,111,116,32,97,32,109,117,108,116,105,112,108,101,32,111,102,32,115,97,109,112,108,101,32,99,111,117,110,116,44,32,37,108,117,44,32,100,97,116,97,32,116,114,117,110,99,97,116,101,100,46,0,85,110,115,117,112,112,111,114,116,101,100,32,98,105,116,115,47,115,97,109,112,108,101,58,32,37,100,0,80,105,120,97,114,76,111,103,80,114,101,68,101,99,111,100,101,0,80,105,120,97,114,76,111,103,83,101,116,117,112,68,101,99,111,100,101,0,80,105,120,97,114,76,111,103,32,99,111,109,112,114,101,115,115,105,111,110,32,99,97,110,39,116,32,104,97,110,100,108,101,32,98,105,116,115,32,100,101,112,116,104,47,100,97,116,97,32,102,111,114,109,97,116,32,99,111,109,98,105,110,97,116,105,111,110,32,40,100,101,112,116,104,58,32,37,100,41,0,116,105,102,95,112,114,101,100,105,99,116,46,99,0,84,73,70,70,80,114,101,100,105,99,116,111,114,73,110,105,116,0,77,101,114,103,105,110,103,32,80,114,101,100,105,99,116,111,114,32,99,111,100,101,99,45,115,112,101,99,105,102,105,99,32,116,97,103,115,32,102,97,105,108,101,100,0,84,73,70,70,80,114,101,100,105,99,116,111,114,67,108,101,97,110,117,112,0,40,99,99,37,40,98,112,115,42,115,116,114,105,100,101,41,41,61,61,48,0,102,112,68,105,102,102,0,80,114,101,100,105,99,116,111,114,69,110,99,111,100,101,84,105,108,101,0,115,112,45,62,101,110,99,111,100,101,112,102,117,110,99,32,33,61,32,78,85,76,76,0,115,112,45,62,101,110,99,111,100,101,116,105,108,101,32,33,61,32,78,85,76,76,0,79,117,116,32,111,102,32,109,101,109,111,114,121,32,97,108,108,111,99,97,116,105,110,103,32,37,108,100,32,98,121,116,101,32,116,101,109,112,32,98,117,102,102,101,114,46,0,114,111,119,115,105,122,101,32,62,32,48,0,40,99,99,48,37,114,111,119,115,105,122,101,41,61,61,48,0,80,114,101,100,105,99,116,111,114,69,110,99,111,100,101,82,111,119,0,115,112,45,62,101,110,99,111,100,101,114,111,119,32,33,61,32,78,85,76,76,0,40,99,99,37,40,52,42,115,116,114,105,100,101,41,41,61,61,48,0,104,111,114,68,105,102,102,51,50,0,40,99,99,37,40,50,42,115,116,114,105,100,101,41,41,61,61,48,0,104,111,114,68,105,102,102,49,54,0,40,99,99,37,115,116,114,105,100,101,41,61,61,48,0,104,111,114,68,105,102,102,56,0,80,114,101,100,105,99,116,111,114,83,101,116,117,112,0,72,111,114,105,122,111,110,116,97,108,32,100,105,102,102,101,114,101,110,99,105,110,103,32,34,80,114,101,100,105,99,116,111,114,34,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,119,105,116,104,32,37,100,45,98,105,116,32,115,97,109,112,108,101,115,0,70,108,111,97,116,105,110,103,32,112,111,105,110,116,32,34,80,114,101,100,105,99,116,111,114,34,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,119,105,116,104,32,37,100,32,100,97,116,97,32,102,111,114,109,97,116,0,34,80,114,101,100,105,99,116,111,114,34,32,118,97,108,117,101,32,37,100,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,102,112,65,99,99,0,80,114,101,100,105,99,116,111,114,68,101,99,111,100,101,84,105,108,101,0,115,112,45,62,100,101,99,111,100,101,116,105,108,101,32,33,61,32,78,85,76,76,0,40,111,99,99,48,37,114,111,119,115,105,122,101,41,61,61,48,0,115,112,45,62,100,101,99,111,100,101,112,102,117,110,99,32,33,61,32,78,85,76,76,0,80,114,101,100,105,99,116,111,114,68,101,99,111,100,101,82,111,119,0,115,112,45,62,100,101,99,111,100,101,114,111,119,32,33,61,32,78,85,76,76,0,104,111,114,65,99,99,51,50,0,104,111,114,65,99,99,49,54,0,104,111,114,65,99,99,56,0,32,32,80,114,101,100,105,99,116,111,114,58,32,0,110,111,110,101,32,0,104,111,114,105,122,111,110,116,97,108,32,100,105,102,102,101,114,101,110,99,105,110,103,32,0,102,108,111,97,116,105,110,103,32,112,111,105,110,116,32,112,114,101,100,105,99,116,111,114,32,0,37,117,32,40,48,120,37,120,41,10,0,80,114,101,100,105,99,116,111,114,86,83,101,116,70,105,101,108,100,0,115,112,45,62,118,115,101,116,112,97,114,101,110,116,32,33,61,32,78,85,76,76,0,80,114,101,100,105,99,116,111,114,86,71,101,116,70],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+143490);allocate([105,101,108,100,0,115,112,45,62,118,103,101,116,112,97,114,101,110,116,32,33,61,32,78,85,76,76,0,80,114,101,100,105,99,116,111,114,0,84,104,117,110,100,101,114,68,101,99,111,100,101,82,111,119,0,70,114,97,99,116,105,111,110,97,108,32,115,99,97,110,108,105,110,101,115,32,99,97,110,110,111,116,32,98,101,32,114,101,97,100,0,78,111,116,32,101,110,111,117,103,104,0,84,111,111,32,109,117,99,104,0,84,104,117,110,100,101,114,68,101,99,111,100,101,0,37,115,32,100,97,116,97,32,97,116,32,115,99,97,110,108,105,110,101,32,37,108,117,32,40,37,108,108,117,32,33,61,32,37,108,108,117,41,0,84,104,117,110,100,101,114,83,101,116,117,112,68,101,99,111,100,101,0,87,114,111,110,103,32,98,105,116,115,112,101,114,115,97,109,112,108,101,32,118,97,108,117,101,32,40,37,100,41,44,32,84,104,117,110,100,101,114,32,100,101,99,111,100,101,114,32,111,110,108,121,32,115,117,112,112,111,114,116,115,32,52,98,105,116,115,32,112,101,114,32,115,97,109,112,108,101,46,0,40,115,99,104,101,109,101,32,61,61,32,67,79,77,80,82,69,83,83,73,79,78,95,68,69,70,76,65,84,69,41,32,124,124,32,40,115,99,104,101,109,101,32,61,61,32,67,79,77,80,82,69,83,83,73,79,78,95,65,68,79,66,69,95,68,69,70,76,65,84,69,41,0,116,105,102,95,122,105,112,46,99,0,84,73,70,70,73,110,105,116,90,73,80,0,77,101,114,103,105,110,103,32,68,101,102,108,97,116,101,32,99,111,100,101,99,45,115,112,101,99,105,102,105,99,32,116,97,103,115,32,102,97,105,108,101,100,0,78,111,32,115,112,97,99,101,32,102,111,114,32,90,73,80,32,115,116,97,116,101,32,98,108,111,99,107,0,115,112,32,33,61,32,48,0,90,73,80,67,108,101,97,110,117,112,0,115,112,32,33,61,32,78,85,76,76,0,90,73,80,69,110,99,111,100,101,0,115,112,45,62,115,116,97,116,101,32,61,61,32,90,83,84,65,84,69,95,73,78,73,84,95,69,78,67,79,68,69,0,69,110,99,111,100,101,114,32,101,114,114,111,114,58,32,37,115,0,90,73,80,80,111,115,116,69,110,99,111,100,101,0,90,76,105,98,32,101,114,114,111,114,58,32,37,115,0,90,73,80,80,114,101,69,110,99,111,100,101,0,90,73,80,83,101,116,117,112,69,110,99,111,100,101,0,49,46,50,46,56,0,37,115,0,90,73,80,68,101,99,111,100,101,0,115,112,45,62,115,116,97,116,101,32,61,61,32,90,83,84,65,84,69,95,73,78,73,84,95,68,69,67,79,68,69,0,68,101,99,111,100,105,110,103,32,101,114,114,111,114,32,97,116,32,115,99,97,110,108,105,110,101,32,37,108,117,44,32,37,115,0,78,111,116,32,101,110,111,117,103,104,32,100,97,116,97,32,97,116,32,115,99,97,110,108,105,110,101,32,37,108,117,32,40,115,104,111,114,116,32,37,108,117,32,98,121,116,101,115,41,0,90,73,80,80,114,101,68,101,99,111,100,101,0,90,73,80,83,101,116,117,112,68,101,99,111,100,101,0,90,73,80,86,83,101,116,70,105,101,108,100,0,105,110,99,111,114,114,101,99,116,32,104,101,97,100,101,114,32,99,104,101,99,107,0,117,110,107,110,111,119,110,32,99,111,109,112,114,101,115,115,105,111,110,32,109,101,116,104,111,100,0,105,110,118,97,108,105,100,32,119,105,110,100,111,119,32,115,105,122,101,0,117,110,107,110,111,119,110,32,104,101,97,100,101,114,32,102,108,97,103,115,32,115,101,116,0,104,101,97,100,101,114,32,99,114,99,32,109,105,115,109,97,116,99,104,0,105,110,118,97,108,105,100,32,98,108,111,99,107,32,116,121,112,101,0,105,110,118,97,108,105,100,32,115,116,111,114,101,100,32,98,108,111,99,107,32,108,101,110,103,116,104,115,0,116,111,111,32,109,97,110,121,32,108,101,110,103,116,104,32,111,114,32,100,105,115,116,97,110,99,101,32,115,121,109,98,111,108,115,0,105,110,118,97,108,105,100,32,99,111,100,101,32,108,101,110,103,116,104,115,32,115,101,116,0,105,110,118,97,108,105,100,32,98,105,116,32,108,101,110,103,116,104,32,114,101,112,101,97,116,0,105,110,118,97,108,105,100,32,99,111,100,101,32,45,45,32,109,105,115,115,105,110,103,32,101,110,100,45,111,102,45,98,108,111,99,107,0,105,110,118,97,108,105,100,32,108,105,116,101,114,97,108,47,108,101,110,103,116,104,115,32,115,101,116,0,105,110,118,97,108,105,100,32,100,105,115,116,97,110,99,101,115,32,115,101,116,0,105,110,99,111,114,114,101,99,116,32,100,97,116,97,32,99,104,101,99,107,0,105,110,99,111,114,114,101,99,116,32,108,101,110,103,116,104,32,99,104,101,99,107,0,0,1,2,3,4,4,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,0,16,17,18,18,19,19,20,20,20,20,21,21,21,21,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,0,1,2,3,4,5,6,7,8,8,9,9,10,10,11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,16,16,16,16,17,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,28,16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15,110,101,101,100,32,100,105,99,116,105,111,110,97,114,121,0,115,116,114,101,97,109,32,101,110,100,0,0,102,105,108,101,32,101,114,114,111,114,0,115,116,114,101,97,109,32,101,114,114,111,114,0,100,97,116,97,32,101,114,114,111,114,0,105,110,115,117,102,102,105,99,105,101,110,116,32,109,101,109,111,114,121,0,98,117,102,102,101,114,32,101,114,114,111,114,0,105,110,99,111,109,112,97,116,105,98,108,101,32,118,101,114,115,105,111,110,0,105,110,118,97,108,105,100,32,100,105,115,116,97,110,99,101,32,116,111,111,32,102,97,114,32,98,97,99,107,0,105,110,118,97,108,105,100,32,100,105,115,116,97,110,99,101,32,99,111,100,101,0,105,110,118,97,108,105,100,32,108,105,116,101,114,97,108,47,108,101,110,103,116,104,32,99,111,100,101,0,0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125,1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250,0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119,0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250,83,79,83,0,76,83,69,0,66,111,103,117,115,32,109,101,115,115,97,103,101,32,99,111,100,101,32,37,100,0,65,76,73,71,78,95,84,89,80,69,32,105,115,32,119,114,111,110,103,44,32,112,108,101,97,115,101,32,102,105,120,0,77,65,88,95,65,76,76,79,67,95,67,72,85,78,75,32,105,115,32,119,114,111,110,103,44,32,112,108,101,97,115,101,32,102,105,120,0,66,111,103,117,115,32,98,117,102,102,101,114,32,99,111,110,116,114,111,108,32,109,111,100,101,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,73,68,32,37,100,32,105,110,32,83,79,83,0,73,110,118,97,108,105,100,32,99,114,111,112,32,114,101,113,117,101,115,116,0,68,67,84,32,99,111,101,102,102,105,99,105,101,110,116,32,111,117,116,32,111,102,32,114,97,110,103,101,0,68,67,84,32,115,99,97,108,101,100,32,98,108,111,99,107,32,115,105,122,101,32,37,100,120,37,100,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,67,111,109,112,111,110,101,110,116,32,105,110,100,101,120,32,37,100,58,32,109,105,115,109,97,116,99,104,105,110,103,32,115,97,109,112,108,105,110,103,32,114,97,116,105,111,32,37,100,58,37,100,44,32,37,100,58,37,100,44,32,37,99,0,66,111,103,117,115,32,72,117,102,102,109,97,110,32,116,97,98,108,101,32,100,101,102,105,110,105,116,105,111,110,0,66,111,103,117,115,32,105,110,112,117,116,32,99,111,108,111,114,115,112,97,99,101,0,66,111,103,117,115,32,74,80,69,71,32,99,111,108,111,114,115,112,97,99,101,0,66,111,103,117,115,32,109,97,114,107,101,114,32,108,101,110,103,116,104,0,87,114,111,110,103,32,74,80,69,71,32,108,105,98,114,97,114,121,32,118,101,114,115,105,111,110,58,32,108,105,98,114,97,114,121,32,105,115,32,37,100,44,32,99,97,108,108,101,114,32,101,120,112,101,99,116,115,32,37,100,0,83,97,109,112,108,105,110,103,32,102,97,99,116,111,114,115,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,105,110,116,101,114,108,101,97,118,101,100,32,115,99,97,110,0,73,110,118,97,108,105,100,32,109,101,109,111,114,121,32,112,111,111,108,32,99,111,100,101,32,37,100,0,85,110,115,117,112,112,111,114,116,101,100,32,74,80,69,71,32,100,97,116,97,32,112,114,101,99,105,115,105,111,110,32,37,100,0,73,110,118,97,108,105,100,32,112,114,111,103,114,101,115,115,105,118,101,32,112,97,114,97,109,101,116,101,114,115,32,83,115,61,37,100,32,83,101,61,37,100,32,65,104,61,37,100,32,65,108,61,37,100,0,73,110,118,97,108,105,100,32,112,114,111,103,114,101,115,115,105,118,101,32,112,97,114,97,109,101,116,101,114,115,32,97,116,32,115,99,97,110,32,115,99,114,105,112,116,32,101,110,116,114,121,32,37,100,0,66,111,103,117,115,32,115,97,109,112,108,105,110,103,32,102,97,99,116,111,114,115,0,73,110,118,97,108,105,100,32,115,99,97,110,32,115,99,114,105,112,116,32,97,116,32,101,110,116,114,121,32,37,100,0,73,109,112,114,111,112,101,114,32,99,97,108,108,32,116,111,32,74,80,69,71,32,108,105,98,114,97,114,121,32,105,110,32,115,116,97,116,101,32,37,100,0,74,80,69,71,32,112,97,114,97,109,101,116,101,114,32,115,116,114,117,99,116,32,109,105,115,109,97,116,99,104,58,32,108,105,98,114,97,114,121,32,116,104,105,110,107,115,32,115,105,122,101,32,105,115,32,37,117,44,32,99,97,108,108,101,114,32,101,120,112,101,99,116,115,32,37,117,0,66,111,103,117,115,32,118,105,114,116,117,97,108,32,97,114,114,97,121,32,97,99,99,101,115,115,0,66,117,102,102,101,114,32,112,97,115,115,101,100,32,116,111,32,74,80,69,71,32,108,105,98,114,97,114,121,32,105,115,32,116,111,111,32,115,109,97,108,108,0,83,117,115,112,101,110,115,105,111,110,32,110,111,116,32,97,108,108,111,119,101,100,32,104,101,114,101,0,67,67,73,82,54,48,49,32,115,97,109,112,108,105,110,103,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,32,121,101,116,0,84,111,111,32,109,97,110,121,32,99,111,108,111,114,32,99,111,109,112,111,110,101,110,116,115,58,32,37,100,44,32,109,97,120,32,37,100,0,85,110,115,117,112,112,111,114,116,101,100,32,99,111,108,111,114,32,99,111,110,118,101,114,115,105,111,110,32,114,101,113,117,101,115,116,0,66,111,103,117,115,32,68,65,67,32,105,110,100,101,120,32,37,100,0,66,111,103,117,115,32,68,65,67,32,118,97,108,117,101,32,48,120,37,120,0,66,111,103,117,115,32,68,72,84,32,105,110,100,101,120,32,37,100,0,66,111,103,117,115,32,68,81,84,32,105,110,100,101,120,32,37,100,0,69,109,112,116,121,32,74,80,69,71,32,105,109,97,103,101,32,40,68,78,76,32,110,111,116,32,115,117,112,112,111,114,116,101,100,41,0,82,101,97,100,32,102,114,111,109,32,69,77,83,32,102,97,105,108,101,100,0,87,114,105,116,101,32,116,111,32,69,77,83,32,102,97,105,108,101,100,0,68,105,100,110,39,116,32,101,120,112,101,99,116,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,115,99,97,110,0,73,110,112,117,116,32,102,105,108,101,32,114,101,97,100,32,101,114,114,111,114,0,79,117,116,112,117,116,32,102,105,108,101,32,119,114,105,116,101,32,101,114,114,111,114,32,45,45,45,32,111,117,116,32,111,102,32,100,105,115,107,32,115,112,97,99,101,63,0,70,114,97,99,116,105,111,110,97,108,32,115,97,109,112,108,105,110,103,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,32,121,101,116,0,72,117,102,102,109,97,110,32,99,111,100,101,32,115,105,122,101,32,116,97,98,108,101,32,111,118,101,114,102,108,111,119,0,77,105,115,115,105,110,103,32,72,117,102,102,109,97,110,32,99,111,100,101,32,116,97,98,108,101,32,101,110,116,114,121,0,77,97,120,105,109,117,109,32,115,117,112,112,111,114,116,101,100,32,105,109,97,103,101,32,100,105,109,101,110,115,105,111,110,32,105,115,32,37,117,32,112,105,120,101,108,115,0,69,109,112,116,121,32,105,110,112,117,116,32,102,105,108,101,0,80,114,101,109,97,116,117,114,101,32,101,110,100,32,111,102,32,105,110,112,117,116,32,102,105,108,101,0,67,97,110,110,111,116,32,116,114,97,110,115,99,111,100,101,32,100,117,101,32,116,111,32,109,117,108,116,105,112,108,101,32,117,115,101,32,111,102,32,113,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,32,37,100,0,83,99,97,110,32,115,99,114,105,112,116,32,100,111,101,115,32,110,111,116,32,116,114,97,110,115,109,105,116,32,97,108,108,32,100,97,116,97,0,73,110,118,97,108,105,100,32,99,111,108,111,114,32,113,117,97,110,116,105,122,97,116,105,111,110,32,109,111,100,101,32,99,104,97,110,103,101,0,78,111,116,32,105,109,112,108,101,109,101,110,116,101,100,32,121,101,116,0,82,101,113,117,101,115,116,101,100,32,102,101,97,116,117,114,101,32,119,97,115,32,111,109,105,116,116,101,100,32,97,116,32,99,111,109,112,105,108,101,32,116,105,109,101,0,65,114,105,116,104,109,101,116,105,99,32,116,97,98,108,101,32,48,120,37,48,50,120,32,119,97,115,32,110,111,116,32,100,101,102,105,110,101,100,0,66,97,99,107,105,110,103,32,115,116,111,114,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,72,117,102,102,109,97,110,32,116,97,98,108,101,32,48,120,37,48,50,120,32,119,97,115,32,110,111,116,32,100,101,102,105,110,101,100,0,74,80,69,71,32,100,97,116,97,115,116,114,101,97,109,32,99,111,110,116,97,105,110,115,32,110,111,32,105,109,97,103,101,0,81,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,32,48,120,37,48,50,120,32,119,97,115,32,110,111,116,32,100,101,102,105,110,101,100,0,78,111,116,32,97,32,74,80,69,71,32,102,105,108,101,58,32,115,116,97,114,116,115,32,119,105,116,104,32,48,120,37,48,50,120,32,48,120,37,48,50,120,0,73,110,115,117,102,102,105,99,105,101,110,116,32,109,101,109,111,114,121,32,40,99,97,115,101,32,37,100,41,0,67,97,110,110,111,116,32,113,117,97,110,116,105,122,101,32,109,111,114,101,32,116,104,97,110,32,37,100,32,99,111,108,111,114,32,99,111,109,112,111,110,101,110,116,115,0,67,97,110,110,111,116,32,113,117,97,110,116,105,122,101,32,116,111,32,102,101,119,101,114,32,116,104,97,110,32,37,100,32,99,111,108,111,114,115,0,67,97,110,110,111,116,32,113,117,97,110,116,105,122,101,32,116,111,32,109,111,114,101,32,116,104,97,110,32,37,100,32,99,111,108,111,114,115,0,73,110,118,97,108,105,100,32,74,80,69,71,32,102,105,108,101,32,115,116,114,117,99,116,117,114,101,58,32,37,115,32,98,101,102,111,114,101,32,83,79,70,0,73,110,118,97,108,105,100,32,74,80,69,71,32,102,105,108,101,32,115,116,114,117,99,116,117,114,101,58,32,116,119,111,32,83,79,70,32,109,97,114,107,101,114,115,0,73,110,118,97,108,105,100,32,74,80,69,71,32,102,105,108,101,32,115,116,114,117,99,116,117,114,101,58,32,109,105,115,115,105,110,103,32,83,79,83,32,109,97,114,107,101,114,0,85,110,115,117,112,112,111,114,116,101,100,32,74,80,69,71,32,112,114,111,99,101,115,115,58,32,83,79,70,32,116,121,112,101,32,48,120,37,48,50,120,0,73,110,118,97,108,105,100,32,74,80,69,71,32,102,105,108,101,32,115,116,114,117,99,116,117,114,101,58,32,116,119,111,32,83,79,73,32,109,97,114,107,101,114,115,0,70,97,105,108,101,100,32,116,111,32,99,114,101,97,116,101,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,32,37,115,0,82,101,97,100,32,102,97,105,108,101,100,32,111,110,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,0,83,101,101,107,32,102,97,105,108,101,100,32,111,110,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,0,87,114,105,116,101,32,102,97,105,108,101,100,32,111,110,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,32,45,45,45,32,111,117,116,32,111,102,32,100,105,115,107,32,115,112,97,99,101,63,0,65,112,112,108,105,99,97,116,105,111,110,32,116,114,97,110,115,102,101,114,114,101,100,32,116,111,111,32,102,101,119,32,115,99,97,110,108,105,110,101,115,0,85,110,115,117,112,112,111,114,116,101,100,32,109,97,114,107,101,114,32,116,121,112,101,32,48,120,37,48,50,120,0,86,105,114,116,117,97,108,32,97,114,114,97,121,32,99,111,110,116,114,111,108,108,101,114,32,109,101,115,115,101,100,32,117,112,0,73,109,97,103,101,32,116,111,111,32,119,105,100,101,32,102,111,114,32,116,104,105,115,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,0,82,101,97,100,32,102,114,111,109,32,88,77,83,32,102,97,105,108,101,100,0,87,114,105,116,101,32,116,111,32,88,77,83,32,102,97,105,108,101,100,0,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,49,54,44,32,84,104,111,109,97,115,32,71,46,32,76,97,110,101,44,32,71,117,105,100,111,32,86,111,108,108,98,101,100,105,110,103,0,57,98,32,32,49,55,45,74,97,110,45,50,48,49,54,0,67,97,117,116,105,111,110,58,32,113,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,115,32,97,114,101,32,116,111,111,32,99,111,97,114,115,101,32,102,111,114,32,98,97,115,101,108,105,110,101,32,74,80,69,71,0,65,100,111,98,101,32,65,80,80,49,52,32,109,97,114,107,101,114,58,32,118,101,114,115,105,111,110,32,37,100,44,32,102,108,97,103,115,32,48,120,37,48,52,120,32,48,120,37,48,52,120,44,32,116,114,97,110,115,102,111,114,109,32,37,100,0,85,110,107,110,111,119,110,32,65,80,80,48,32,109,97,114,107,101,114,32,40,110,111,116,32,74,70,73,70,41,44,32,108,101,110,103,116,104,32,37,117,0,85,110,107,110,111,119,110,32,65,80,80,49,52,32,109,97,114,107,101,114,32,40,110,111,116,32,65,100,111,98,101,41,44,32,108,101,110,103,116,104,32,37,117,0,68,101,102,105,110,101,32,65,114,105,116,104,109,101,116,105,99,32,84,97,98,108,101,32,48,120,37,48,50,120,58,32,48,120,37,48,50,120,0,68,101,102,105,110,101,32,72,117,102,102,109,97,110,32,84,97,98,108,101,32,48,120,37,48,50,120,0,68,101,102,105,110,101,32,81,117,97,110,116,105,122,97,116,105,111,110,32,84,97,98,108,101,32,37,100,32,32,112,114,101,99,105,115,105,111,110,32,37,100,0,68,101,102,105,110,101,32,82,101,115,116,97,114,116,32,73,110,116,101,114,118,97,108,32,37,117,0,70,114,101,101,100,32,69,77,83,32,104,97,110,100,108,101,32,37,117,0,79,98,116,97,105,110,101,100,32,69,77,83,32,104,97,110,100,108,101,32,37,117,0,69,110,100,32,79,102,32,73,109,97,103,101,0,32,32,32,32,32,32,32,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,0,74,70,73,70,32,65,80,80,48,32,109,97,114,107,101,114,58,32,118,101,114,115,105,111,110,32,37,100,46,37,48,50,100,44,32,100,101,110,115,105,116,121,32,37,100,120,37,100,32,32,37,100,0,87,97,114,110,105,110,103,58,32,116,104,117,109,98,110,97,105,108,32,105,109,97,103,101,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,100,97,116,97,32,108,101,110,103,116,104,32,37,117,0,74,70,73,70,32,101,120,116,101,110,115,105,111,110,32,109,97,114,107,101,114,58,32,116,121,112,101,32,48,120,37,48,50,120,44,32,108,101,110,103,116,104,32,37,117,0,32,32,32,32,119,105,116,104,32,37,100,32,120,32,37,100,32,116,104,117,109,98,110,97,105,108,32,105,109,97,103,101,0,77,105,115,99,101,108,108,97,110,101,111,117,115,32,109,97,114,107,101,114,32,48,120,37,48,50,120,44,32,108,101,110,103,116,104,32,37,117,0,85,110,101,120,112,101,99,116,101,100,32,109,97,114,107,101,114,32,48,120,37,48,50,120,0,32,32,32,32,32,32,32,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,0,81,117,97,110,116,105,122,105,110,103,32,116,111,32,37,100,32,61,32,37,100,42,37,100,42,37,100,32,99,111,108,111,114,115,0,81,117,97,110,116,105,122,105,110,103,32,116,111,32,37,100,32,99,111,108,111,114,115,0,83,101,108,101,99,116,101,100,32,37,100,32,99,111,108,111,114,115,32,102,111,114,32,113,117,97,110,116,105,122,97,116,105,111,110,0,65,116,32,109,97,114,107,101,114,32,48,120,37,48,50,120,44,32,114,101,99,111,118,101,114,121,32,97,99,116,105,111,110,32,37,100,0,82,83,84,37,100,0,83,109,111,111,116,104,105,110,103,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,119,105,116,104,32,110,111,110,115,116,97,110,100,97,114,100,32,115,97,109,112,108,105,110,103,32,114,97,116,105,111,115,0,83,116,97,114,116,32,79,102,32,70,114,97,109,101,32,48,120,37,48,50,120,58,32,119,105,100,116,104,61,37,117,44,32,104,101,105,103,104,116,61,37,117,44,32,99,111,109,112,111,110,101,110,116,115,61,37,100,0,32,32,32,32,67,111,109,112,111,110,101,110,116,32,37,100,58,32,37,100,104,120,37,100,118,32,113,61,37,100,0,83,116,97,114,116,32,111,102,32,73,109,97,103,101,0,83,116,97,114,116,32,79,102,32,83,99,97,110,58,32,37,100,32,99,111,109,112,111,110,101,110,116,115,0,32,32,32,32,67,111,109,112,111,110,101,110,116,32,37,100,58,32,100,99,61,37,100,32,97,99,61,37,100,0,32,32,83,115,61,37,100,44,32,83,101,61,37,100,44,32,65,104,61,37,100,44,32,65,108,61,37,100,0,67,108,111,115,101,100,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,32,37,115,0,79,112,101,110,101,100,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,32,37,115,0,74,70,73,70,32,101,120,116,101,110,115,105,111,110,32,109,97,114,107,101,114,58,32,74,80,69,71,45,99,111,109,112,114,101,115,115,101,100,32,116,104,117,109,98,110,97,105,108,32,105,109,97,103,101,44,32,108,101,110,103,116,104,32,37,117,0,74,70,73,70,32,101,120,116,101,110,115,105,111,110,32,109,97,114,107,101,114,58,32,112,97,108,101,116,116,101,32,116,104,117,109,98,110,97,105,108,32,105,109,97,103,101,44,32,108,101,110,103,116,104,32,37,117,0,74,70,73,70,32,101,120,116,101,110,115,105,111,110,32,109,97,114,107,101,114,58,32,82,71,66,32,116,104,117,109,98,110,97,105,108,32,105,109,97,103,101,44,32,108,101,110,103,116,104,32,37,117,0,85,110,114,101,99,111,103,110,105,122,101,100,32,99,111,109,112,111,110,101,110,116,32,73,68,115,32,37,100,32,37,100,32,37,100,44,32,97,115,115,117,109,105,110,103,32,89,67,98,67,114,0,70,114,101,101,100,32,88,77,83,32,104,97,110,100,108,101,32,37,117,0,79,98,116,97,105,110,101,100,32,88,77,83,32,104,97,110,100,108,101,32,37,117,0,85,110,107,110,111,119,110,32,65,100,111,98,101,32,99,111,108,111,114,32,116,114,97,110,115,102,111,114,109,32,99,111,100,101,32,37,100,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,58,32,98,97,100,32,97,114,105,116,104,109,101,116,105,99,32,99,111,100,101,0,73,110,99,111,110,115,105,115,116,101,110,116,32,112,114,111,103,114,101,115,115,105,111,110,32,115,101,113,117,101,110,99,101,32,102,111,114,32,99,111,109,112,111,110,101,110,116,32,37,100,32,99,111,101,102,102,105,99,105,101,110,116,32,37,100,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,58,32,37,117,32,101,120,116,114,97,110,101,111,117,115,32,98,121,116,101,115,32,98,101,102,111,114,101,32,109,97,114,107,101,114,32,48,120,37,48,50,120,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,58,32,112,114,101,109,97,116,117,114,101,32,101,110,100,32,111,102,32,100,97,116,97,32,115,101,103,109,101,110,116,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,58,32,98,97,100,32,72,117,102,102,109,97,110,32,99,111,100,101,0,87,97,114,110,105,110,103,58,32,117,110,107,110,111,119,110,32,74,70,73,70,32,114,101,118,105,115,105,111,110,32,110,117,109,98,101,114,32,37,100,46,37,48,50,100,0,80,114,101,109,97,116,117,114,101,32,101,110,100,32,111,102,32,74,80,69,71,32,102,105,108,101,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,58,32,102,111,117,110,100,32,109,97,114,107,101,114,32,48,120,37,48,50,120,32,105,110,115,116,101,97,100,32,111,102,32,82,83,84,37,100,0,73,110,118,97,108,105,100,32,83,79,83,32,112,97,114,97,109,101,116,101,114,115,32,102,111,114,32,115,101,113,117,101,110,116,105,97,108,32,74,80,69,71,0,65,112,112,108,105,99,97,116,105,111,110,32,116,114,97,110,115,102,101,114,114,101,100,32,116,111,111,32,109,97,110,121,32,115,99,97,110,108,105,110,101,115,0,37,115,10,0,0,192,48,240,12,204,60,252,3,195,51,243,15,207,63,255,128,64,176,112,140,76,188,124,131,67,179,115,143,79,191,127,32,224,16,208,44,236,28,220,35,227,19,211,47,239,31,223,160,96,144,80,172,108,156,92,163,99,147,83,175,111,159,95,8,200,56,248,4,196,52,244,11,203,59,251,7,199,55,247,136,72,184,120,132,68,180,116,139,75,187,123,135,71,183,119,40,232,24,216,36,228,20,212,43,235,27,219,39,231,23,215,168,104,152,88,164,100,148,84,171,107,155,91,167,103,151,87,2,194,50,242,14,206,62,254,1,193,49,241,13,205,61,253,130,66,178,114,142,78,190,126,129,65,177,113,141,77,189,125,34,226,18,210,46,238,30,222,33,225,17,209,45,237,29,221,162,98,146,82,174,110,158,94,161,97,145,81,173,109,157,93,10,202,58,250,6,198,54,246,9,201,57,249,5,197,53,245,138,74,186,122,134,70,182,118,137,73,185,121,133,69,181,117,42,234,26,218,38,230,22,214,41,233,25,217,37,229,21,213,170,106,154,90,166,102,150,86,169,105,153,89,165,101,149,85,74,80,69,71,77,69,77,0,37,108,100,37,99,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+153730);allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+164446);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0);function copyTempFloat(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3]}function copyTempDouble(ptr){HEAP8[tempDoublePtr]=HEAP8[ptr];HEAP8[tempDoublePtr+1]=HEAP8[ptr+1];HEAP8[tempDoublePtr+2]=HEAP8[ptr+2];HEAP8[tempDoublePtr+3]=HEAP8[ptr+3];HEAP8[tempDoublePtr+4]=HEAP8[ptr+4];HEAP8[tempDoublePtr+5]=HEAP8[ptr+5];HEAP8[tempDoublePtr+6]=HEAP8[ptr+6];HEAP8[tempDoublePtr+7]=HEAP8[ptr+7]}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;return value}var TTY={ttys:[],init:(function(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}for(var i=0;i<length;i++){try{stream.tty.ops.put_char(stream.tty,buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})},default_tty_ops:{get_char:(function(tty){if(!tty.input.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){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;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.length<newCapacity)node.contents.push(0)}),resizeFileStorage:(function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length<newSize)node.contents.push(0);node.usedBytes=newSize}),node_ops:{getattr:(function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[ERRNO_CODES.ENOENT]}),mknod:(function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)}),rename:(function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}}}delete old_node.parent.contents[old_node.name];old_node.name=new_name;new_dir.contents[new_name]=old_node;old_node.parent=new_dir}),unlink:(function(parent,name){delete parent.contents[name]}),rmdir:(function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}delete parent.contents[name]}),readdir:(function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries}),symlink:(function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node}),readlink:(function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return node.link})},stream_ops:{read:(function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=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;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),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.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position}),allocate:(function(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{if(position>0||position+length<stream.node.usedBytes){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}allocated=true;ptr=_malloc(length);if(!ptr){throw new FS.ErrnoError(ERRNO_CODES.ENOMEM)}buffer.set(contents,ptr)}return{ptr:ptr,allocated:allocated}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){return MEMFS.mount.apply(null,arguments)}),syncfs:(function(mount,populate,callback){IDBFS.getLocalSet(mount,(function(err,local){if(err)return callback(err);IDBFS.getRemoteSet(mount,(function(err,remote){if(err)return callback(err);var src=populate?remote:local;var dst=populate?local:remote;IDBFS.reconcile(src,dst,callback)}))}))}),getDB:(function(name,callback){var db=IDBFS.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBFS.indexedDB().open(name,IDBFS.DB_VERSION)}catch(e){return callback(e)}req.onupgradeneeded=(function(e){var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),getLocalSet:(function(mount,callback){var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return(function(p){return PATH.join2(root,p)})}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push.apply(check,FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})}),getRemoteSet:(function(mount,callback){var entries={};IDBFS.getDB(mount.mountpoint,(function(err,db){if(err)return callback(err);var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=(function(e){callback(this.error);e.preventDefault()});var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=(function(event){var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()})}))}),loadLocalEntry:(function(path,callback){var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}}),storeLocalEntry:(function(path,entry,callback){try{if(FS.isDir(entry.mode)){FS.mkdir(path,entry.mode)}else if(FS.isFile(entry.mode)){FS.writeFile(path,entry.contents,{encoding:"binary",canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry.mode);FS.utime(path,entry.timestamp,entry.timestamp)}catch(e){return callback(e)}callback(null)}),removeLocalEntry:(function(path,callback){try{var lookup=FS.lookupPath(path);var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)}),loadRemoteEntry:(function(store,path,callback){var req=store.get(path);req.onsuccess=(function(event){callback(null,event.target.result)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),reconcile:(function(src,dst,callback){var total=0;var create=[];Object.keys(src.entries).forEach((function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e.timestamp>e2.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 errored=false;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/)}),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&146)>>1}}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)}),flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:(function(flags){flags&=~32768;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}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.flagsToPermissionString(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;var nbuffer=new Buffer(length);var res;try{res=fs.readSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(res>0){for(var i=0;i<res;i++){buffer[offset+i]=nbuffer[i]}}return res}),write:(function(stream,buffer,offset,length,position){var nbuffer=new Buffer(buffer.subarray(offset,offset+length));var res;try{res=fs.writeSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}return res}),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<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=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})}};var _stdin=allocate(1,"i32*",ALLOC_STATIC);var _stdout=allocate(1,"i32*",ALLOC_STATIC);var _stderr=allocate(1,"i32*",ALLOC_STATIC);var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,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;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){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<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>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((flags&2097155)!==0||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}var mounts=FS.getMounts(FS.root.mount);var completed=0;function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=mounts.length){callback(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)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var newname=PATH.basename(newpath);var err=FS.mayCreate(parent,newname);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.symlink(parent,newname,oldpath)}),rename:(function(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;try{lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}err=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(err){throw new FS.ErrnoError(err)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(new_dir!==old_dir){err=FS.nodePermissions(old_dir,"w");if(err){throw new FS.ErrnoError(err)}}try{if(FS.trackingDelegate["willMovePath"]){FS.trackingDelegate["willMovePath"](old_path,new_path)}}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}try{if(FS.trackingDelegate["onMovePath"])FS.trackingDelegate["onMovePath"](old_path,new_path)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}}),rmdir:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,true);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}return node.node_ops.readdir(node)}),unlink:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,false);if(err){if(err===ERRNO_CODES.EISDIR)err=ERRNO_CODES.EPERM;throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readlink:(function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!node.node_ops.getattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return node.node_ops.getattr(node)}),lstat:(function(path){return FS.stat(path,true)}),chmod:(function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})}),lchmod:(function(path,mode){FS.chmod(path,mode,true)}),fchmod:(function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chmod(stream.node,mode)}),chown:(function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{timestamp:Date.now()})}),lchown:(function(path,uid,gid){FS.chown(path,uid,gid,true)}),fchown:(function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chown(stream.node,uid,gid)}),truncate:(function(path,len){if(len<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})}),ftruncate:(function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}FS.truncate(stream.node,len)}),utime:(function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})}),open:(function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;Module["printErr"]("read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream}),close:(function(stream){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),read:(function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.read){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.write){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return bytesWritten}),allocate:(function(stream,offset,length){if(offset<0||length<=0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}stream.stream_ops.allocate(stream,offset,length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EACCES)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),ioctl:(function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)}return stream.stream_ops.ioctl(stream,cmd,arg)}),readFile:(function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret}),writeFile:(function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";opts.encoding=opts.encoding||"utf8";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var stream=FS.open(path,opts.flags,opts.mode);if(opts.encoding==="utf8"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,0,opts.canOwn)}else if(opts.encoding==="binary"){FS.write(stream,data,0,data.length,0,opts.canOwn)}FS.close(stream)}),cwd:(function(){return FS.currentPath}),chdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path}),createDefaultDirectories:(function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),init:(function(input,output,error){assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}}),getMode:(function(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode}),joinPath:(function(parts,forceRelative){var path=PATH.join.apply(null,parts);if(forceRelative&&path[0]=="/")path=path.substr(1);return path}),absolutePath:(function(relative,base){return PATH.resolve(base,relative)}),standardizePath:(function(path){return PATH.normalize(path)}),findObject:(function(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(ret.exists){return ret.object}else{___setErrNo(ret.error);return null}}),analyzePath:(function(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret}),createFolder:(function(parent,name,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.mkdir(path,mode)}),createPath:(function(parent,path,canRead,canWrite){parent=typeof parent==="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current}),createFile:(function(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)}),createDataFile:(function(parent,name,data,canRead,canWrite,canOwn){var path=name?PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name):parent;var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data==="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,"w");FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node}),createDevice:(function(parent,name,input,output){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})});return FS.mkdev(path,mode,dev)}),createLink:(function(parent,name,target,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);return FS.symlink(target,path)}),forceLoadFile:(function(obj){if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;var success=true;if(typeof XMLHttpRequest!=="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(Module["read"]){try{obj.contents=intArrayFromString(Module["read"](obj.url),true);obj.usedBytes=obj.contents.length}catch(e){success=false}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}if(!success)___setErrNo(ERRNO_CODES.EIO);return success}),createLazyFile:(function(parent,name,url,canRead,canWrite){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.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 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]}));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.defineProperty(lazyArray,"length",{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})});Object.defineProperty(lazyArray,"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.defineProperty(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<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}var handled=false;Module["preloadPlugins"].forEach((function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,(function(){if(onerror)onerror();removeRunDependency(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){Browser.asyncLoad(url,(function(byteArray){processData(byteArray)}),onerror)}else{processData(url)}}),indexedDB:(function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB}),DB_NAME:(function(){return"EM_FS_"+window.location.pathname}),DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function openRequest_onupgradeneeded(){console.log("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)};openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=function putRequest_onsuccess(){ok++;if(ok+fail==total)finish()};putRequest.onerror=function putRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror}),loadFilesFromDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var getRequest=files.get(path);getRequest.onsuccess=function getRequest_onsuccess(){if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()};getRequest.onerror=function getRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror})};Module["FS"]=FS;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<arr.length;start++){if(arr[start]!=="")break}var end=arr.length-1;for(;end>=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;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push("..")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join("/")})};function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining<expected){Module["setStatus"](message+" ("+(expected-remaining)+"/"+expected+")")}else{Module["setStatus"](message)}}else{Module["setStatus"]("")}}}),runIter:(function(func){if(ABORT)return;if(Module["preMainLoop"]){var preRet=Module["preMainLoop"]();if(preRet===false){return}}try{func()}catch(e){if(e instanceof ExitStatus){return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}if(Module["postMainLoop"])Module["postMainLoop"]()})},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:(function(){if(!Module["preloadPlugins"])Module["preloadPlugins"]=[];if(Browser.initted)return;Browser.initted=true;try{new Blob;Browser.hasBlobConstructor=true}catch(e){Browser.hasBlobConstructor=false;console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder=typeof MozBlobBuilder!="undefined"?MozBlobBuilder:typeof WebKitBlobBuilder!="undefined"?WebKitBlobBuilder:!Browser.hasBlobConstructor?console.log("warning: no BlobBuilder"):null;Browser.URLObject=typeof window!="undefined"?window.URL?window.URL:window.webkitURL:undefined;if(!Module.noImageDecoding&&typeof Browser.URLObject==="undefined"){console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.");Module.noImageDecoding=true}var imagePlugin={};imagePlugin["canHandle"]=function imagePlugin_canHandle(name){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(name)};imagePlugin["handle"]=function imagePlugin_handle(byteArray,name,onload,onerror){var b=null;if(Browser.hasBlobConstructor){try{b=new Blob([byteArray],{type:Browser.getMimetype(name)});if(b.size!==byteArray.length){b=new Blob([(new Uint8Array(byteArray)).buffer],{type:Browser.getMimetype(name)})}}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}}if(!b){var bb=new Browser.BlobBuilder;bb.append((new Uint8Array(byteArray)).buffer);b=bb.getBlob()}var url=Browser.URLObject.createObjectURL(b);var img=new Image;img.onload=function img_onload(){assert(img.complete,"Image "+name+" could not be decoded");var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);Module["preloadedImages"][name]=canvas;Browser.URLObject.revokeObjectURL(url);if(onload)onload(byteArray)};img.onerror=function img_onerror(event){console.log("Image "+url+" could not be decoded");if(onerror)onerror()};img.src=url};Module["preloadPlugins"].push(imagePlugin);var audioPlugin={};audioPlugin["canHandle"]=function audioPlugin_canHandle(name){return!Module.noAudioDecoding&&name.substr(-4)in{".ogg":1,".wav":1,".mp3":1}};audioPlugin["handle"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;Module["preloadedAudios"][name]=audio;if(onload)onload(byteArray)}function fail(){if(done)return;done=true;Module["preloadedAudios"][name]=new Audio;if(onerror)onerror()}if(Browser.hasBlobConstructor){try{var b=new Blob([byteArray],{type:Browser.getMimetype(name)})}catch(e){return fail()}var url=Browser.URLObject.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);audio.onerror=function audio_onerror(event){if(done)return;console.log("warning: browser could not fully decode audio "+name+", trying slower base64 approach");function encode64(data){var BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var PAD="=";var ret="";var leftchar=0;var leftbits=0;for(var i=0;i<data.length;i++){leftchar=leftchar<<8|data[i];leftbits+=8;while(leftbits>=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",(function(ev){if(!Browser.pointerLock&&canvas.requestPointerLock){canvas.requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx==="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;var canvas=Module["canvas"];function fullScreenChange(){Browser.isFullScreen=false;var canvasContainer=canvas.parentNode;if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.cancelFullScreen=document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["webkitCancelFullScreen"]||document["msExitFullscreen"]||document["exitFullscreen"]||(function(){});canvas.cancelFullScreen=canvas.cancelFullScreen.bind(document);if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullScreen=true;if(Browser.resizeCanvas)Browser.setFullScreenCanvasSize()}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas)Browser.setWindowedCanvasSize()}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullScreen);Browser.updateCanvasDimensions(canvas)}if(!Browser.fullScreenHandlersInstalled){Browser.fullScreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullScreenChange,false);document.addEventListener("mozfullscreenchange",fullScreenChange,false);document.addEventListener("webkitfullscreenchange",fullScreenChange,false);document.addEventListener("MSFullscreenChange",fullScreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)}),getMovementX:(function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0}),getMovementY:(function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail;break;case"mousewheel":delta=event.wheelDelta;break;case"wheel":delta=event["deltaY"];break;default:throw"unrecognized mouse wheel event: "+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!=="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),xhrLoad:(function(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)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)}),asyncLoad:(function(url,onload,onerror,noRunDep){Browser.xhrLoad(url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(!noRunDep)removeRunDependency("al "+url)}),(function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}}));if(!noRunDep)addRunDependency("al "+url)}),resizeListeners:[],updateResizeListeners:(function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach((function(listener){listener(canvas.width,canvas.height)}))}),setCanvasSize:(function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()}),windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),updateCanvasDimensions:(function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h<Module["forcedAspectRatio"]){w=Math.round(h*Module["forcedAspectRatio"])}else{h=Math.round(w/Module["forcedAspectRatio"])}}if((document["webkitFullScreenElement"]||document["webkitFullscreenElement"]||document["mozFullScreenElement"]||document["mozFullscreenElement"]||document["fullScreenElement"]||document["fullscreenElement"]||document["msFullScreenElement"]||document["msFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvas.parentNode&&typeof screen!="undefined"){var factor=Math.min(screen.width/w,screen.height/h);w=Math.round(w*factor);h=Math.round(h*factor)}if(Browser.resizeCanvas){if(canvas.width!=w)canvas.width=w;if(canvas.height!=h)canvas.height=h;if(typeof canvas.style!="undefined"){canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}else{if(canvas.width!=wNative)canvas.width=wNative;if(canvas.height!=hNative)canvas.height=hNative;if(typeof canvas.style!="undefined"){if(w!=wNative||h!=hNative){canvas.style.setProperty("width",w+"px","important");canvas.style.setProperty("height",h+"px","important")}else{canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};Module["_i64Subtract"]=_i64Subtract;function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}var _SItoD=true;var _SItoF=true;Module["_memset"]=_memset;var _BDtoILow=true;Module["_bitshift64Shl"]=_bitshift64Shl;var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>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);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),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<iovcnt;i++){var ptr=HEAP32[iov+i*8>>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<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>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 ___syscall192(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get(),prot=SYSCALLS.get(),flags=SYSCALLS.get(),fd=SYSCALLS.get(),off=SYSCALLS.get();off<<=12;var ptr;var allocated=false;if(fd===-1){ptr=_malloc(len);if(!ptr)return-ERRNO_CODES.ENOMEM;_memset(ptr,0,len);allocated=true}else{var info=FS.getStream(fd);if(!info)return-ERRNO_CODES.EBADF;var res=FS.mmap(info,HEAPU8,addr,len,off,prot,flags);ptr=res.ptr;allocated=res.allocated}SYSCALLS.mappings[ptr]={malloc:ptr,len:len,allocated:allocated,fd:fd,flags:flags};return ptr}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _UItoF=true;function ___lock(){}function ___unlock(){}Module["_i64Add"]=_i64Add;var _emscripten_cleanup_setjmp=true;var _emscripten_postinvoke=true;var _floor=Math_floor;var _emscripten_prep_setjmp=true;var _sqrt=Math_sqrt;var _emscripten_check_longjmp=true;function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;function ___syscall91(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get();var info=SYSCALLS.mappings[addr];if(!info)return 0;if(len===info.len){var stream=FS.getStream(info.fd);SYSCALLS.doMsync(addr,stream,len,info.flags);FS.munmap(stream);SYSCALLS.mappings[addr]=null;if(info.allocated){_free(info.malloc)}}return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _emscripten_get_longjmp_result=true;function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}var _UItoD=true;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 ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{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)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}var _BDtoIHigh=true;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}var _environ=allocate(1,"i32*",ALLOC_STATIC);var ___environ=_environ;function ___buildEnvironment(env){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";ENV["_"]=Module["thisProgram"];poolPtr=allocate(TOTAL_ENV_SIZE,"i8",ALLOC_STATIC);envPtr=allocate(MAX_ENV_VALUES*4,"i8*",ALLOC_STATIC);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<strings.length;i++){var line=strings[i];writeAsciiToMemory(line,poolPtr);HEAP32[envPtr+i*ptrSize>>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}var ENV={};function _getenv(name){if(name===0)return 0;name=Pointer_stringify(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocate(intArrayFromString(ENV[name]),"i8",ALLOC_NORMAL);return _getenv.ret}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _emscripten_longjmp(env,value){_longjmp(env,value)}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 ___syscall4(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get(),count=SYSCALLS.get();return FS.write(stream,HEAP8,buf,count)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _log=Math_log;var _emscripten_setjmp=true;var _fabs=Math_abs;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}var _emscripten_preinvoke=true;var _BItoD=true;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;var _atan2=Math_atan2;function _abort(){Module["abort"]()}Module["_llvm_bswap_i32"]=_llvm_bswap_i32;var _exp=Math_exp;var _llvm_pow_f64=Math_pow;function _pthread_self(){return 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;assert(offset_high===0);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}}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));Module["FS_createFolder"]=FS.createFolder;Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createLink"]=FS.createLink;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}___buildEnvironment(ENV);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{Module["dynCall_viiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){try{Module["dynCall_viiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{Module["dynCall_viiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity,"byteLength":byteLength};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiii":invoke_iiii,"invoke_viiiiiii":invoke_viiiiiii,"invoke_viiiii":invoke_viiiii,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_viiiiiiiiiiii":invoke_viiiiiiiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_viiiiiiiii":invoke_viiiiiiiii,"invoke_iiiii":invoke_iiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"_fabs":_fabs,"_exp":_exp,"_llvm_pow_f64":_llvm_pow_f64,"___syscall54":___syscall54,"_pthread_cleanup_push":_pthread_cleanup_push,"___syscall6":___syscall6,"_atan2":_atan2,"___setErrNo":___setErrNo,"___assert_fail":___assert_fail,"___buildEnvironment":___buildEnvironment,"_longjmp":_longjmp,"___syscall91":___syscall91,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"_sbrk":_sbrk,"___syscall192":___syscall192,"___syscall197":___syscall197,"_emscripten_memcpy_big":_emscripten_memcpy_big,"__exit":__exit,"___syscall195":___syscall195,"___syscall221":___syscall221,"_floor":_floor,"_pthread_self":_pthread_self,"_getenv":_getenv,"_sqrt":_sqrt,"_log":_log,"___unlock":___unlock,"_emscripten_set_main_loop":_emscripten_set_main_loop,"___syscall3":___syscall3,"_sysconf":_sysconf,"___lock":___lock,"_abort":_abort,"___syscall5":___syscall5,"___syscall4":___syscall4,"_time":_time,"_emscripten_longjmp":_emscripten_longjmp,"___syscall140":___syscall140,"_exit":_exit,"___syscall146":___syscall146,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=global.Int8Array;var b=global.Int16Array;var c=global.Int32Array;var d=global.Uint8Array;var e=global.Uint16Array;var f=global.Uint32Array;var g=global.Float32Array;var h=global.Float64Array;var i=new a(buffer);var j=new b(buffer);var k=new c(buffer);var l=new d(buffer);var m=new e(buffer);var n=new f(buffer);var o=new g(buffer);var p=new h(buffer);var q=global.byteLength;var r=env.STACKTOP|0;var s=env.STACK_MAX|0;var t=env.tempDoublePtr|0;var u=env.ABORT|0;var v=env.cttz_i8|0;var w=0;var x=0;var y=0;var z=0;var A=global.NaN,B=global.Infinity;var C=0,D=0,E=0,F=0,G=0.0,H=0,I=0,J=0,K=0.0;var L=0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=0;var T=0;var U=0;var V=global.Math.floor;var W=global.Math.abs;var X=global.Math.sqrt;var Y=global.Math.pow;var Z=global.Math.cos;var _=global.Math.sin;var $=global.Math.tan;var aa=global.Math.acos;var ba=global.Math.asin;var ca=global.Math.atan;var da=global.Math.atan2;var ea=global.Math.exp;var fa=global.Math.log;var ga=global.Math.ceil;var ha=global.Math.imul;var ia=global.Math.min;var ja=global.Math.clz32;var ka=env.abort;var la=env.assert;var ma=env.invoke_iiii;var na=env.invoke_viiiiiii;var oa=env.invoke_viiiii;var pa=env.invoke_vi;var qa=env.invoke_vii;var ra=env.invoke_iiiiiii;var sa=env.invoke_viiiiiiiiiiii;var ta=env.invoke_ii;var ua=env.invoke_viii;var va=env.invoke_viiiiiiiii;var wa=env.invoke_iiiii;var xa=env.invoke_iii;var ya=env.invoke_iiiiii;var za=env.invoke_viiii;var Aa=env._pthread_cleanup_pop;var Ba=env._fabs;var Ca=env._exp;var Da=env._llvm_pow_f64;var Ea=env.___syscall54;var Fa=env._pthread_cleanup_push;var Ga=env.___syscall6;var Ha=env._atan2;var Ia=env.___setErrNo;var Ja=env.___assert_fail;var Ka=env.___buildEnvironment;var La=env._longjmp;var Ma=env.___syscall91;var Na=env._emscripten_set_main_loop_timing;var Oa=env._sbrk;var Pa=env.___syscall192;var Qa=env.___syscall197;var Ra=env._emscripten_memcpy_big;var Sa=env.__exit;var Ta=env.___syscall195;var Ua=env.___syscall221;var Va=env._floor;var Wa=env._pthread_self;var Xa=env._getenv;var Ya=env._sqrt;var Za=env._log;var _a=env.___unlock;var $a=env._emscripten_set_main_loop;var ab=env.___syscall3;var bb=env._sysconf;var cb=env.___lock;var db=env._abort;var eb=env.___syscall5;var fb=env.___syscall4;var gb=env._time;var hb=env._emscripten_longjmp;var ib=env.___syscall140;var jb=env._exit;var kb=env.___syscall146;var lb=0.0;function mb(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;i=new a(newBuffer);j=new b(newBuffer);k=new c(newBuffer);l=new d(newBuffer);m=new e(newBuffer);n=new f(newBuffer);o=new g(newBuffer);p=new h(newBuffer);buffer=newBuffer;return true}
// EMSCRIPTEN_START_FUNCS
function mc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0.0;d=r;r=r+16|0;e=d+4|0;f=d;g=b+2|0;switch(m[g>>1]|0){case 12:case 11:case 10:case 5:case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:break;default:{h=2;r=d;return h|0}}n=qc(a,b,e,8,f)|0;b=k[f>>2]|0;f=b;if((n|0)!=0|(b|0)==0){k[c>>2]=0;h=n;r=d;return h|0}if((j[g>>1]|0)==12){if(k[a+12>>2]&128)Wd(b,k[e>>2]|0);k[c>>2]=f;h=0;r=d;return h|0}f=k[e>>2]|0;e=me(f<<3)|0;if(!e){ne(b);h=7;r=d;return h|0}do switch(m[g>>1]|0){case 1:{if(f){n=b;q=e;s=0;while(1){p[q>>3]=+(l[n>>0]|0);s=s+1|0;if(s>>>0>=f>>>0)break;else{n=n+1|0;q=q+8|0}}}break}case 6:{if(f){q=b;n=e;s=0;while(1){p[n>>3]=+(i[q>>0]|0);s=s+1|0;if(s>>>0>=f>>>0)break;else{q=q+1|0;n=n+8|0}}}break}case 3:{if(f){n=a+12|0;q=b;s=e;t=0;while(1){if(k[n>>2]&128)Qd(q);p[s>>3]=+(m[q>>1]|0);t=t+1|0;if(t>>>0>=f>>>0)break;else{q=q+2|0;s=s+8|0}}}break}case 8:{if(f){s=a+12|0;q=b;t=e;n=0;while(1){if(k[s>>2]&128)Qd(q);p[t>>3]=+(j[q>>1]|0);n=n+1|0;if(n>>>0>=f>>>0)break;else{q=q+2|0;t=t+8|0}}}break}case 4:{if(f){t=a+12|0;q=b;n=e;s=0;while(1){if(k[t>>2]&128)Rd(q);p[n>>3]=+((k[q>>2]|0)>>>0);s=s+1|0;if(s>>>0>=f>>>0)break;else{q=q+4|0;n=n+8|0}}}break}case 9:{if(f){n=a+12|0;q=b;s=e;t=0;while(1){if(k[n>>2]&128)Rd(q);p[s>>3]=+(k[q>>2]|0);t=t+1|0;if(t>>>0>=f>>>0)break;else{q=q+4|0;s=s+8|0}}}break}case 16:{if(f){s=a+12|0;q=b;t=e;n=0;while(1){if(k[s>>2]&128)Sd(q);u=q;p[t>>3]=+((k[u>>2]|0)>>>0)+4294967296.0*+((k[u+4>>2]|0)>>>0);n=n+1|0;if(n>>>0>=f>>>0)break;else{q=q+8|0;t=t+8|0}}}break}case 17:{if(f){t=a+12|0;q=b;n=e;s=0;while(1){if(k[t>>2]&128)Sd(q);u=q;p[n>>3]=+((k[u>>2]|0)>>>0)+4294967296.0*+(k[u+4>>2]|0);s=s+1|0;if(s>>>0>=f>>>0)break;else{q=q+8|0;n=n+8|0}}}break}case 5:{if(f){n=a+12|0;q=b;s=e;t=0;while(1){u=k[n>>2]|0;if(!(u&128))v=u;else{Rd(q);v=k[n>>2]|0}u=q+4|0;w=k[q>>2]|0;if(v&128)Rd(u);x=k[u>>2]|0;if(!x)y=0.0;else y=+(w>>>0)/+(x>>>0);p[s>>3]=y;t=t+1|0;if(t>>>0>=f>>>0)break;else{q=q+8|0;s=s+8|0}}}break}case 10:{if(f){s=a+12|0;q=b;t=e;n=0;while(1){x=k[s>>2]|0;if(!(x&128))z=x;else{Rd(q);z=k[s>>2]|0}x=k[q>>2]|0;w=q+4|0;if(z&128)Rd(w);u=k[w>>2]|0;if(!u)A=0.0;else A=+(x|0)/+(u>>>0);p[t>>3]=A;n=n+1|0;if(n>>>0>=f>>>0)break;else{q=q+8|0;t=t+8|0}}}break}case 11:{if(k[a+12>>2]&128)Vd(b,f);if(f){t=b;q=e;n=0;while(1){p[q>>3]=+o[t>>2];n=n+1|0;if(n>>>0>=f>>>0)break;else{t=t+4|0;q=q+8|0}}}break}default:{}}while(0);ne(b);k[c>>2]=e;h=0;r=d;return h|0}function nc(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,l=0;e=r;r=r+16|0;f=e;g=pc(a,b,f)|0;if(g){h=cc(a,m[b>>1]|0)|0;if(!h)i=133413;else i=k[h+28>>2]|0;lc(a,g,134332,i,0);j=0;r=e;return j|0}i=b+8|0;b=i;if((k[b+4>>2]|0)==0?(k[b>>2]|0)==(c|0):0)l=k[f>>2]|0;else{b=Ee(a,c,8,134352)|0;if(!b){ne(k[f>>2]|0);j=0;r=e;return j|0}a=i;g=k[a>>2]|0;h=k[a+4>>2]|0;a=k[f>>2]|0;if(h>>>0<0|(h|0)==0&g>>>0<c>>>0){qe(b,a,g<<3);g=k[i>>2]|0;pe(b+(g<<3)|0,0,c-g<<3)}else qe(b,a,c<<3);ne(a);k[f>>2]=b;l=b}k[d>>2]=l;j=1;r=e;return j|0}function oc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=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;d=r;r=r+16|0;e=d;f=a+176|0;g=k[f>>2]|0;if(g)ne(g);g=a+168|0;h=Ee(a,k[g>>2]|0,8,134235)|0;k[f>>2]=h;if(!h){i=-1;r=d;return i|0}do if((j[a+88>>1]|0)==1)if(!(k[a+12>>2]&1024)){h=Ld(a)|0;l=k[g>>2]|0;if(!l)break;n=Dr(((k[a+60>>2]|0)>>>0)/((k[a+164>>2]|0)>>>0)|0|0,0,h|0,L|0)|0;h=L;o=k[f>>2]|0;p=0;do{q=o+(p<<3)|0;k[q>>2]=n;k[q+4>>2]=h;p=p+1|0}while(p>>>0<l>>>0)}else{l=fe(a)|0;p=L;h=k[g>>2]|0;if(!h)break;n=k[f>>2]|0;o=0;do{q=n+(o<<3)|0;k[q>>2]=l;k[q+4>>2]=p;o=o+1|0}while(o>>>0<h>>>0)}else{h=a+628|0;o=ub[k[a+648>>2]&63](k[h>>2]|0)|0;p=L;l=a+12|0;n=c&65535;q=(k[l>>2]&524288|0)==0?(n*12|0)+14|0:(n*20|0)+32|0;a:do if(!(c<<16>>16)){s=q;t=0}else{n=q;u=0;v=b;w=c;while(1){x=v+2|0;y=ac(m[x>>1]|0)|0;if(!y){z=x;break}x=v+8|0;A=Dr(k[x>>2]|0,k[x+4>>2]|0,y|0,0)|0;y=L;x=(k[l>>2]&524288|0)==0?y>>>0<0|(y|0)==0&A>>>0<5:y>>>0<0|(y|0)==0&A>>>0<9;B=sr((x?0:A)|0,(x?0:y)|0,n|0,u|0)|0;y=L;w=w+-1<<16>>16;if(!(w<<16>>16)){s=B;t=y;break a}else{n=B;u=y;v=v+24|0}}v=k[h>>2]|0;k[e>>2]=m[z>>1];vc(v,134263,134287,e);i=-1;r=d;return i|0}while(0);h=pr(o|0,p|0,s|0,t|0)|0;l=L;if((j[a+126>>1]|0)==2){q=Er(h|0,l|0,m[a+98>>1]|0,0)|0;C=q;D=L}else{C=h;D=l}l=k[g>>2]|0;h=k[f>>2]|0;if(!l)E=-1;else{q=l>>>0>1;v=0;do{u=h+(v<<3)|0;k[u>>2]=C;k[u+4>>2]=D;v=v+1|0}while(v>>>0<l>>>0);E=q?l+-1|0:0}v=(k[a+172>>2]|0)+(E<<3)|0;u=k[v>>2]|0;n=k[v+4>>2]|0;v=h+(E<<3)|0;w=v;y=sr(k[w>>2]|0,k[w+4>>2]|0,u|0,n|0)|0;w=L;if(w>>>0>p>>>0|(w|0)==(p|0)&y>>>0>o>>>0){y=pr(o|0,p|0,u|0,n|0)|0;n=v;k[n>>2]=y;k[n+4>>2]=L}}while(0);E=a+40|0;D=k[E>>2]|0;k[E>>2]=D|16777216;if(D&131072){i=1;r=d;return i|0}k[a+100>>2]=k[a+60>>2];i=1;r=d;return i|0}function pc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;d=r;r=r+16|0;e=d+4|0;f=d;g=b+2|0;switch(m[g>>1]|0|0){case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:break;default:{h=2;r=d;return h|0}}n=qc(a,b,e,8,f)|0;b=k[f>>2]|0;f=b;if((n|0)!=0|(b|0)==0){k[c>>2]=0;h=n;r=d;return h|0}switch(m[g>>1]|0|0){case 16:{k[c>>2]=b;if(!(k[a+12>>2]&128)){h=0;r=d;return h|0}Wd(b,k[e>>2]|0);h=0;r=d;return h|0}case 17:{n=k[e>>2]|0;a:do if(n){o=a+12|0;p=b;q=0;while(1){if(k[o>>2]&128)Sd(p);s=p;t=k[s+4>>2]|0;if(!((t|0)>-1|(t|0)==-1&(k[s>>2]|0)>>>0>4294967295))break;q=q+1|0;if(q>>>0>=n>>>0)break a;else p=p+8|0}ne(b);h=4;r=d;return h|0}while(0);k[c>>2]=f;h=0;r=d;return h|0}default:{f=k[e>>2]|0;e=me(f<<3)|0;if(!e){ne(b);h=7;r=d;return h|0}b:do switch(m[g>>1]|0|0){case 1:{if(!f)u=46;else{n=b;p=e;q=0;while(1){o=p;k[o>>2]=l[n>>0];k[o+4>>2]=0;q=q+1|0;if(q>>>0>=f>>>0){u=46;break}else{n=n+1|0;p=p+8|0}}}break}case 6:{if(!f)u=46;else{p=b;n=e;q=0;while(1){o=i[p>>0]|0;if(o<<24>>24<=-1){v=4;u=45;break b}s=o<<24>>24;o=n;k[o>>2]=s;k[o+4>>2]=((s|0)<0)<<31>>31;q=q+1|0;if(q>>>0>=f>>>0){u=46;break}else{p=p+1|0;n=n+8|0}}}break}case 3:{if(!f)u=46;else{n=a+12|0;p=b;q=e;s=0;while(1){if(k[n>>2]&128)Qd(p);o=q;k[o>>2]=m[p>>1];k[o+4>>2]=0;s=s+1|0;if(s>>>0>=f>>>0){u=46;break}else{p=p+2|0;q=q+8|0}}}break}case 8:{if(!f)u=46;else{q=a+12|0;p=b;s=e;n=0;while(1){if(k[q>>2]&128)Qd(p);o=j[p>>1]|0;if(o<<16>>16<=-1){v=4;u=45;break b}t=o<<16>>16;o=s;k[o>>2]=t;k[o+4>>2]=((t|0)<0)<<31>>31;n=n+1|0;if(n>>>0>=f>>>0){u=46;break}else{p=p+2|0;s=s+8|0}}}break}case 4:{if(!f)u=46;else{s=a+12|0;p=b;n=e;q=0;while(1){if(k[s>>2]&128)Rd(p);t=n;k[t>>2]=k[p>>2];k[t+4>>2]=0;q=q+1|0;if(q>>>0>=f>>>0){u=46;break}else{p=p+4|0;n=n+8|0}}}break}case 9:{if(!f)u=46;else{n=a+12|0;p=b;q=e;s=0;while(1){if(k[n>>2]&128)Rd(p);t=k[p>>2]|0;o=t>>31&4;if(o){v=o;u=45;break b}o=q;k[o>>2]=t;k[o+4>>2]=((t|0)<0)<<31>>31;s=s+1|0;if(s>>>0>=f>>>0){u=46;break}else{p=p+4|0;q=q+8|0}}}break}default:u=46}while(0);if((u|0)==45){ne(b);ne(e);h=v;r=d;return h|0}else if((u|0)==46){ne(b);k[c>>2]=e;h=0;r=d;return h|0}}}return 0}function qc(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,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;f=r;r=r+16|0;g=f+8|0;h=f;i=ac(m[b+2>>1]|0)|0;j=b+8|0;l=k[j>>2]|0;n=k[j+4>>2]|0;if((i|0)==0|(l|0)==0&(n|0)==0){k[e>>2]=0;o=0;r=f;return o|0}j=2147483647/(i|0)|0;p=((j|0)<0)<<31>>31;if(p>>>0<n>>>0|(p|0)==(n|0)&j>>>0<l>>>0){o=6;r=f;return o|0}if(0<n>>>0|(0==(n|0)?(2147483647/(d>>>0)|0)>>>0<l>>>0:0)){o=6;r=f;return o|0}k[c>>2]=l;c=ha(l,i)|0;if((c|0)<=0)Ja(134368,133171,790,134389);d=Ee(a,l,i,134411)|0;if(!d){o=7;r=f;return o|0}i=a+12|0;l=k[i>>2]|0;do if(!(l&524288)){n=b+16|0;if(c>>>0<5){qe(d,n,c);break}j=k[n>>2]|0;k[g>>2]=j;if(!(l&128)){q=l;s=j}else{Rd(g);q=k[i>>2]|0;s=k[g>>2]|0}if(!(q&2048)){j=a+628|0;n=xb[k[a+640>>2]&63](k[j>>2]|0,s,0,0)|0;if((n|0)==(s|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[j>>2]|0,d,c)|0)==(c|0):0)break}else{j=s+c|0;if(!(j>>>0<c>>>0|j>>>0<s>>>0)?j>>>0<=(k[a+616>>2]|0)>>>0:0){qe(d,(k[a+612>>2]|0)+s|0,c);break}}ne(d);o=3;r=f;return o|0}else{if(c>>>0<9){qe(d,b+16|0,c);break}j=b+16|0;n=k[j>>2]|0;p=k[j+4>>2]|0;j=h;k[j>>2]=n;k[j+4>>2]=p;if(!(l&128)){t=l;u=n;v=p}else{Sd(h);p=h;t=k[i>>2]|0;u=k[p>>2]|0;v=k[p+4>>2]|0}if(!(t&2048)){p=a+628|0;n=xb[k[a+640>>2]&63](k[p>>2]|0,u,v,0)|0;if((n|0)==(u|0)&(L|0)==(v|0)?(nb[k[a+632>>2]&63](k[p>>2]|0,d,c)|0)==(c|0):0)break}else{p=u+c|0;if(!(p>>>0<c>>>0|((u|0)!=(u|0)|0!=(v|0)|p>>>0<u>>>0))?p>>>0<=(k[a+616>>2]|0)>>>0:0){qe(d,(k[a+612>>2]|0)+u|0,c);break}}ne(d);o=3;r=f;return o|0}while(0);k[e>>2]=d;o=0;r=f;return o|0}function rc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;d=r;r=r+16|0;e=d+4|0;f=d;g=b+2|0;switch(m[g>>1]|0){case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:case 7:case 2:break;default:{h=2;r=d;return h|0}}l=qc(a,b,e,1,f)|0;b=k[f>>2]|0;n=b;if((l|0)!=0|(b|0)==0){k[c>>2]=0;h=l;r=d;return h|0}switch(m[g>>1]|0){case 1:case 7:case 2:{k[c>>2]=n;h=0;r=d;return h|0}case 6:{l=k[e>>2]|0;a:do if(l){o=b;p=0;while(1){if((i[o>>0]|0)<=-1)break;p=p+1|0;if(p>>>0>=l>>>0)break a;else o=o+1|0}ne(b);h=4;r=d;return h|0}while(0);k[c>>2]=n;h=0;r=d;return h|0}default:{n=k[e>>2]|0;l=me(n)|0;if(!l){ne(b);h=7;r=d;return h|0}b:do switch(m[g>>1]|0){case 3:{if(!n)q=51;else{o=a+12|0;p=b;s=l;t=0;while(1){if(k[o>>2]&128)Qd(p);u=j[p>>1]|0;if((u&65535)>=256){q=50;break b}i[s>>0]=u;t=t+1|0;if(t>>>0>=(k[e>>2]|0)>>>0){q=51;break}else{p=p+2|0;s=s+1|0}}}break}case 8:{if(!n)q=51;else{s=a+12|0;p=b;t=l;o=0;while(1){if(k[s>>2]&128)Qd(p);u=j[p>>1]|0;if((u&65535)>=256){q=50;break b}i[t>>0]=u;o=o+1|0;if(o>>>0>=(k[e>>2]|0)>>>0){q=51;break}else{p=p+2|0;t=t+1|0}}}break}case 4:{if(!n)q=51;else{t=a+12|0;p=b;o=l;s=0;while(1){if(k[t>>2]&128)Rd(p);u=k[p>>2]|0;if(u>>>0>=256){q=50;break b}i[o>>0]=u;s=s+1|0;if(s>>>0>=(k[e>>2]|0)>>>0){q=51;break}else{p=p+4|0;o=o+1|0}}}break}case 9:{if(!n)q=51;else{o=a+12|0;p=b;s=l;t=0;while(1){if(k[o>>2]&128)Rd(p);u=k[p>>2]|0;if(u>>>0>=256){q=50;break b}i[s>>0]=u;t=t+1|0;if(t>>>0>=(k[e>>2]|0)>>>0){q=51;break}else{p=p+4|0;s=s+1|0}}}break}case 16:{if(!n)q=51;else{s=a+12|0;p=b;t=l;o=0;while(1){if(k[s>>2]&128)Sd(p);u=p;v=k[u>>2]|0;w=k[u+4>>2]|0;if(!(w>>>0<0|(w|0)==0&v>>>0<256)){q=50;break b}i[t>>0]=v;o=o+1|0;if(o>>>0>=(k[e>>2]|0)>>>0){q=51;break}else{p=p+8|0;t=t+1|0}}}break}case 17:{if(!n)q=51;else{t=a+12|0;p=b;o=l;s=0;while(1){if(k[t>>2]&128)Sd(p);v=p;w=k[v>>2]|0;u=k[v+4>>2]|0;if(!(u>>>0<0|(u|0)==0&w>>>0<256)){q=50;break b}i[o>>0]=w;s=s+1|0;if(s>>>0>=(k[e>>2]|0)>>>0){q=51;break}else{p=p+8|0;o=o+1|0}}}break}default:q=51}while(0);if((q|0)==50){ne(k[f>>2]|0);ne(l);h=4;r=d;return h|0}else if((q|0)==51){ne(k[f>>2]|0);k[c>>2]=l;h=0;r=d;return h|0}}}return 0}function sc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;d=r;r=r+16|0;e=d+4|0;f=d;g=b+2|0;switch(m[g>>1]|0|0){case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:break;default:{h=2;r=d;return h|0}}n=qc(a,b,e,4,f)|0;b=k[f>>2]|0;f=b;if((n|0)!=0|(b|0)==0){k[c>>2]=0;h=n;r=d;return h|0}switch(m[g>>1]|0|0){case 4:{k[c>>2]=b;if(!(k[a+12>>2]&128)){h=0;r=d;return h|0}Vd(b,k[e>>2]|0);h=0;r=d;return h|0}case 9:{n=k[e>>2]|0;a:do if(n){o=a+12|0;p=b;q=0;while(1){if(k[o>>2]&128)Rd(p);s=k[p>>2]>>31&4;if(s){t=s;break}q=q+1|0;if(q>>>0>=n>>>0)break a;else p=p+4|0}ne(b);h=t;r=d;return h|0}while(0);k[c>>2]=f;h=0;r=d;return h|0}default:{f=k[e>>2]|0;t=me(f<<2)|0;if(!t){ne(b);h=7;r=d;return h|0}b:do switch(m[g>>1]|0|0){case 1:{if(!f)u=47;else{n=b;p=t;q=0;while(1){k[p>>2]=l[n>>0];q=q+1|0;if(q>>>0>=(k[e>>2]|0)>>>0){u=47;break}else{n=n+1|0;p=p+4|0}}}break}case 6:{if(!f)u=47;else{p=b;n=t;q=0;while(1){o=i[p>>0]|0;if(o<<24>>24<=-1){u=46;break b}k[n>>2]=o<<24>>24;q=q+1|0;if(q>>>0>=(k[e>>2]|0)>>>0){u=47;break}else{p=p+1|0;n=n+4|0}}}break}case 3:{if(!f)u=47;else{n=a+12|0;p=b;q=t;o=0;while(1){if(k[n>>2]&128)Qd(p);k[q>>2]=m[p>>1];o=o+1|0;if(o>>>0>=(k[e>>2]|0)>>>0){u=47;break}else{p=p+2|0;q=q+4|0}}}break}case 8:{if(!f)u=47;else{q=a+12|0;p=b;o=t;n=0;while(1){if(k[q>>2]&128)Qd(p);s=j[p>>1]|0;if(s<<16>>16<=-1){u=46;break b}k[o>>2]=s<<16>>16;n=n+1|0;if(n>>>0>=(k[e>>2]|0)>>>0){u=47;break}else{p=p+2|0;o=o+4|0}}}break}case 16:{if(!f)u=47;else{o=a+12|0;p=b;n=t;q=0;while(1){if(k[o>>2]&128)Sd(p);s=p;v=k[s>>2]|0;w=k[s+4>>2]|0;if(!(w>>>0<1|(w|0)==1&v>>>0<0)){u=46;break b}k[n>>2]=v;q=q+1|0;if(q>>>0>=(k[e>>2]|0)>>>0){u=47;break}else{p=p+8|0;n=n+4|0}}}break}case 17:{if(!f)u=47;else{n=a+12|0;p=b;q=t;o=0;while(1){if(k[n>>2]&128)Sd(p);v=p;w=k[v>>2]|0;s=k[v+4>>2]|0;if(!(s>>>0<1|(s|0)==1&w>>>0<0)){u=46;break b}k[q>>2]=w;o=o+1|0;if(o>>>0>=(k[e>>2]|0)>>>0){u=47;break}else{p=p+8|0;q=q+4|0}}}break}default:u=47}while(0);if((u|0)==46){ne(b);ne(t);h=4;r=d;return h|0}else if((u|0)==47){ne(b);k[c>>2]=t;h=0;r=d;return h|0}}}return 0}function tc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0,A=0.0;d=r;r=r+16|0;e=d+4|0;f=d;g=b+2|0;switch(m[g>>1]|0){case 12:case 11:case 10:case 5:case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:break;default:{h=2;r=d;return h|0}}n=qc(a,b,e,4,f)|0;b=k[f>>2]|0;f=b;if((n|0)!=0|(b|0)==0){k[c>>2]=0;h=n;r=d;return h|0}if((j[g>>1]|0)==11){if(k[a+12>>2]&128)Vd(b,k[e>>2]|0);k[c>>2]=f;h=0;r=d;return h|0}f=k[e>>2]|0;e=me(f<<2)|0;if(!e){ne(b);h=7;r=d;return h|0}do switch(m[g>>1]|0){case 1:{if(f){n=b;q=e;s=0;while(1){o[q>>2]=+(l[n>>0]|0);s=s+1|0;if(s>>>0>=f>>>0)break;else{n=n+1|0;q=q+4|0}}}break}case 6:{if(f){q=b;n=e;s=0;while(1){o[n>>2]=+(i[q>>0]|0);s=s+1|0;if(s>>>0>=f>>>0)break;else{q=q+1|0;n=n+4|0}}}break}case 3:{if(f){n=a+12|0;q=b;s=e;t=0;while(1){if(k[n>>2]&128)Qd(q);o[s>>2]=+(m[q>>1]|0);t=t+1|0;if(t>>>0>=f>>>0)break;else{q=q+2|0;s=s+4|0}}}break}case 8:{if(f){s=a+12|0;q=b;t=e;n=0;while(1){if(k[s>>2]&128)Qd(q);o[t>>2]=+(j[q>>1]|0);n=n+1|0;if(n>>>0>=f>>>0)break;else{q=q+2|0;t=t+4|0}}}break}case 4:{if(f){t=a+12|0;q=b;n=e;s=0;while(1){if(k[t>>2]&128)Rd(q);o[n>>2]=+((k[q>>2]|0)>>>0);s=s+1|0;if(s>>>0>=f>>>0)break;else{q=q+4|0;n=n+4|0}}}break}case 9:{if(f){n=a+12|0;q=b;s=e;t=0;while(1){if(k[n>>2]&128)Rd(q);o[s>>2]=+(k[q>>2]|0);t=t+1|0;if(t>>>0>=f>>>0)break;else{q=q+4|0;s=s+4|0}}}break}case 16:{if(f){s=a+12|0;q=b;t=e;n=0;while(1){if(k[s>>2]&128)Sd(q);u=q;o[t>>2]=+((k[u>>2]|0)>>>0)+4294967296.0*+((k[u+4>>2]|0)>>>0);n=n+1|0;if(n>>>0>=f>>>0)break;else{q=q+8|0;t=t+4|0}}}break}case 17:{if(f){t=a+12|0;q=b;n=e;s=0;while(1){if(k[t>>2]&128)Sd(q);u=q;o[n>>2]=+((k[u>>2]|0)>>>0)+4294967296.0*+(k[u+4>>2]|0);s=s+1|0;if(s>>>0>=f>>>0)break;else{q=q+8|0;n=n+4|0}}}break}case 5:{if(f){n=a+12|0;q=b;s=e;t=0;while(1){u=k[n>>2]|0;if(!(u&128))v=u;else{Rd(q);v=k[n>>2]|0}u=q+4|0;w=k[q>>2]|0;if(v&128)Rd(u);x=k[u>>2]|0;if(!x)y=0.0;else y=+(w>>>0)/+(x>>>0);o[s>>2]=y;t=t+1|0;if(t>>>0>=f>>>0)break;else{q=q+8|0;s=s+4|0}}}break}case 10:{if(f){s=a+12|0;q=b;t=e;n=0;while(1){x=k[s>>2]|0;if(!(x&128))z=x;else{Rd(q);z=k[s>>2]|0}x=k[q>>2]|0;w=q+4|0;if(z&128)Rd(w);u=k[w>>2]|0;if(!u)A=0.0;else A=+(x|0)/+(u>>>0);o[t>>2]=A;n=n+1|0;if(n>>>0>=f>>>0)break;else{q=q+8|0;t=t+4|0}}}break}case 12:{if(k[a+12>>2]&128)Wd(b,f);if(f){t=b;q=e;n=0;while(1){o[q>>2]=+p[t>>3];n=n+1|0;if(n>>>0>=f>>>0)break;else{t=t+8|0;q=q+4|0}}}break}default:{}}while(0);ne(b);k[c>>2]=e;h=0;r=d;return h|0}function uc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;d=r;r=r+16|0;e=d+4|0;f=d;g=b+2|0;switch(m[g>>1]|0|0){case 18:case 13:case 16:case 4:break;default:{h=2;r=d;return h|0}}i=qc(a,b,e,8,f)|0;b=k[f>>2]|0;if((i|0)!=0|(b|0)==0){k[c>>2]=0;h=i;r=d;return h|0}switch(m[g>>1]|0|0){case 18:case 16:{k[c>>2]=b;if(!(k[a+12>>2]&128)){h=0;r=d;return h|0}Wd(b,k[e>>2]|0);h=0;r=d;return h|0}default:{}}i=k[e>>2]|0;e=me(i<<3)|0;if(!e){ne(b);h=7;r=d;return h|0}switch(m[g>>1]|0|0){case 13:case 4:{if(i){g=a+12|0;a=b;f=e;j=0;while(1){if(k[g>>2]&128)Rd(a);l=f;k[l>>2]=k[a>>2];k[l+4>>2]=0;j=j+1|0;if(j>>>0>=i>>>0)break;else{a=a+4|0;f=f+8|0}}}break}default:{}}ne(b);k[c>>2]=e;h=0;r=d;return h|0}function vc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;k[f>>2]=d;d=k[1934]|0;if(d)vb[d&127](b,c,f);d=k[1910]|0;if(!d){r=e;return}Ab[d&31](a,b,c,f);r=e;return}function wc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;b=r;r=r+48|0;c=b+24|0;d=b+16|0;e=b+8|0;f=b;g=b+32|0;h=b+28|0;i=a+8|0;if(!(k[i>>2]|0)){j=1;r=b;return j|0}l=a+12|0;m=k[l>>2]|0;do if(m&64){if((m&4096|0)!=0?(k[l>>2]=m&-4097,(ub[k[a+528>>2]&63](a)|0)==0):0){j=0;r=b;return j|0}if(!(je(a)|0)){j=0;r=b;return j|0}else{n=k[l>>2]|0;break}}else n=m;while(0);do if((n&2097160|0)==2097152?(k[i>>2]|0)==2:0){k[g>>2]=0;k[h>>2]=0;if(!(rd(a)|0)){k[d>>2]=g;if(!(Pb(a,273,d)|0))break;k[c>>2]=h;if(!(Pb(a,279,c)|0))break;m=a+168|0;if(!($e(a,273,16,k[m>>2]|0,k[g>>2]|0)|0))break;if(!($e(a,279,16,k[m>>2]|0,k[h>>2]|0)|0))break;k[l>>2]=k[l>>2]&-2097217;j=1;r=b;return j|0}else{k[f>>2]=g;if(!(Pb(a,324,f)|0))break;k[e>>2]=h;if(!(Pb(a,325,e)|0))break;m=a+168|0;if(!($e(a,324,16,k[m>>2]|0,k[g>>2]|0)|0))break;if(!($e(a,325,16,k[m>>2]|0,k[h>>2]|0)|0))break;k[l>>2]=k[l>>2]&-2097217;j=1;r=b;return j|0}}while(0);if((k[l>>2]&2097160|0)!=0?(_e(a)|0)==0:0){j=0;r=b;return j|0}j=1;r=b;return j|0}function xc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;c=r;r=r+160|0;d=c+136|0;e=c+120|0;f=c+112|0;g=c+104|0;h=c+88|0;l=c+80|0;n=c+72|0;o=c+64|0;p=c+56|0;q=c+48|0;s=c+24|0;t=c+16|0;u=c+8|0;v=c;w=c+146|0;x=c+144|0;if(!(k[a+500>>2]|0)){y=b;z=135926;A=y+54|0;do{i[y>>0]=i[z>>0]|0;y=y+1|0;z=z+1|0}while((y|0)<(A|0));B=0;r=c;return B|0}z=a+84|0;y=m[z>>1]|0;switch(y|0){case 16:case 8:case 4:case 2:case 1:break;default:{k[v>>2]=y;Bq(b,135980,v)|0;B=0;r=c;return B|0}}v=a+98|0;y=(m[v>>1]|0)-(m[a+156>>1]|0)|0;k[u>>2]=w;a:do if(!(Pb(a,262,u)|0))switch(y|0){case 1:{j[w>>1]=1;C=1;break a;break}case 3:{j[w>>1]=2;C=2;break a;break}default:{k[t>>2]=130805;Bq(b,136029,t)|0;B=0;r=c;return B|0}}else C=j[w>>1]|0;while(0);w=C&65535;b:do if((w|0)<5){switch(w|0){case 3:case 1:case 0:break;case 2:{if((y|0)>=3){B=1;r=c;return B|0}k[q>>2]=136187;k[q+4>>2]=y;Bq(b,136144,q)|0;B=0;r=c;return B|0}default:break b}if((j[a+126>>1]|0)!=1){B=1;r=c;return B|0}C=j[v>>1]|0;if(C<<16>>16==1){B=1;r=c;return B|0}t=j[z>>1]|0;if((t&65535)>=8){B=1;r=c;return B|0}k[s>>2]=130805;k[s+4>>2]=w;k[s+8>>2]=136130;k[s+12>>2]=C&65535;k[s+16>>2]=t&65535;Bq(b,136051,s)|0;B=0;r=c;return B|0}else{if((w|0)<8){switch(w|0){case 5:break;case 6:{B=1;r=c;return B|0}default:break b}k[p>>2]=x;Ge(a,332,p)|0;t=j[x>>1]|0;if(t<<16>>16!=1){k[o>>2]=136251;k[o+4>>2]=t&65535;Bq(b,136202,o)|0;B=0;r=c;return B|0}t=j[v>>1]|0;if((t&65535)>=4){B=1;r=c;return B|0}k[n>>2]=136130;k[n+4>>2]=t&65535;Bq(b,136202,n)|0;B=0;r=c;return B|0}if((w|0)<32844){switch(w|0){case 8:break;default:break b}t=j[v>>1]|0;C=j[z>>1]|0;if(t<<16>>16==3&C<<16>>16==8){B=1;r=c;return B|0}k[e>>2]=136130;k[e+4>>2]=t&65535;k[e+8>>2]=136499;k[e+12>>2]=C&65535;Bq(b,136450,e)|0;B=0;r=c;return B|0}switch(w|0){case 32844:{if((j[a+88>>1]|0)==-30860){B=1;r=c;return B|0}k[l>>2]=136291;k[l+4>>2]=34676;Bq(b,136258,l)|0;B=0;r=c;return B|0}case 32845:break;default:break b}if((j[a+88>>1]&-2)<<16>>16!=-30860){k[h>>2]=136291;k[h+4>>2]=34676;k[h+8>>2]=34677;Bq(b,136303,h)|0;B=0;r=c;return B|0}C=j[a+126>>1]|0;if(C<<16>>16!=1){k[g>>2]=136391;k[g+4>>2]=C&65535;Bq(b,136344,g)|0;B=0;r=c;return B|0}C=j[v>>1]|0;if(C<<16>>16==3){B=1;r=c;return B|0}k[f>>2]=136130;k[f+4>>2]=C&65535;Bq(b,136411,f)|0;B=0;r=c;return B|0}while(0);k[d>>2]=130805;k[d+4>>2]=w;Bq(b,136411,d)|0;B=0;r=c;return B|0}function yc(a){a=a|0;var b=0,c=0,d=0;b=a+56|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+60|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+64|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+68|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+72|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+76|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+80|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+36|0;c=k[b>>2]|0;if(!c)return;ne(c);c=a+40|0;ne(k[c>>2]|0);d=a+44|0;ne(k[d>>2]|0);k[d>>2]=0;k[c>>2]=0;k[b>>2]=0;return}function zc(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,l=0,n=0,p=0,q=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,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,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0.0;e=r;r=r+384|0;f=e+344|0;g=e+336|0;h=e+328|0;l=e+320|0;n=e+312|0;p=e+304|0;q=e+296|0;s=e+288|0;t=e+280|0;u=e+272|0;v=e+264|0;w=e+256|0;x=e+248|0;y=e+240|0;z=e+224|0;A=e+216|0;B=e+208|0;C=e+200|0;D=e+192|0;E=e+176|0;F=e+168|0;G=e+160|0;H=e+152|0;I=e+144|0;J=e+136|0;K=e+128|0;L=e+120|0;M=e+96|0;N=e+80|0;O=e+72|0;P=e+64|0;Q=e+56|0;R=e+48|0;S=e+40|0;T=e+32|0;U=e+24|0;V=e+16|0;W=e+8|0;X=e;Y=e+364|0;Z=e+374|0;_=e+372|0;$=e+370|0;aa=e+360|0;ba=e+356|0;ca=e+352|0;da=e+368|0;k[a+84>>2]=0;k[a+88>>2]=0;ea=a+36|0;k[ea>>2]=0;fa=a+40|0;k[fa>>2]=0;ga=a+44|0;k[ga>>2]=0;j[a+30>>1]=4;k[a>>2]=b;k[a+4>>2]=c;c=a+24|0;k[X>>2]=c;Ge(b,258,X)|0;X=m[c>>1]|0;a:do switch(X|0){case 16:case 8:case 4:case 2:case 1:{ia=a+12|0;k[ia>>2]=0;ja=a+26|0;k[V>>2]=ja;Ge(b,277,V)|0;k[U>>2]=Z;k[U+4>>2]=Y;Ge(b,338,U)|0;b:do if(j[Z>>1]|0){ka=m[k[Y>>2]>>1]|0;switch(ka|0){case 0:break;case 2:case 1:{k[ia>>2]=ka;break b;break}default:break b}if((m[ja>>1]|0)>3)k[ia>>2]=1}while(0);ka=a+32|0;k[T>>2]=ka;if(!(Pb(b,262,T)|0))j[ka>>1]=0;la=j[Z>>1]|0;ma=j[ja>>1]|0;if(!(la<<16>>16))if(ma<<16>>16==4)if((j[ka>>1]|0)==2){k[ia>>2]=1;j[Z>>1]=1;na=4;oa=1}else{na=4;oa=0}else{na=ma;oa=0}else{na=ma;oa=la}la=(na&65535)-(oa&65535)|0;k[S>>2]=$;Ge(b,259,S)|0;k[R>>2]=_;Ge(b,284,R)|0;k[Q>>2]=ka;c:do if(!(Pb(b,262,Q)|0))switch(la|0){case 1:{k[P>>2]=Q;Pb(b,259,P)|0;ma=j[Q>>1]|0;d:do if(ma<<16>>16<3)if(ma<<16>>16<2)switch(ma<<16>>16){case -32765:{pa=18;break d;break}default:{pa=19;break d}}else switch(ma<<16>>16){case 2:{pa=18;break d;break}default:{pa=19;break d}}else switch(ma<<16>>16){case 4:case 3:{pa=18;break}default:pa=19}while(0);if((pa|0)==18){j[ka>>1]=0;qa=0;break c}else if((pa|0)==19){j[ka>>1]=1;qa=1;break c}break}case 3:{j[ka>>1]=2;qa=2;break c;break}default:{k[O>>2]=130805;Bq(d,136029,O)|0;break a}}else qa=j[ka>>1]|0;while(0);ma=qa&65535;e:do if((ma|0)<5){switch(ma|0){case 3:{pa=23;break}case 1:case 0:break;case 2:{if((la|0)>=3)break e;k[K>>2]=136187;k[K+4>>2]=la;Bq(d,136144,K)|0;break a;break}default:{pa=49;break e}}do if((pa|0)==23){k[N>>2]=aa;k[N+4>>2]=ba;k[N+8>>2]=ca;if(!(Pb(b,320,N)|0)){ra=d;sa=136511;ta=ra+32|0;do{i[ra>>0]=i[sa>>0]|0;ra=ra+1|0;sa=sa+1|0}while((ra|0)<(ta|0));break a}ua=2<<m[c>>1];va=me(ua)|0;k[ea>>2]=va;va=me(ua)|0;k[fa>>2]=va;va=me(ua)|0;k[ga>>2]=va;wa=k[ea>>2]|0;if((wa|0)!=0?!((va|0)==0|(k[fa>>2]|0)==0):0){qe(wa,k[aa>>2]|0,ua);qe(k[fa>>2]|0,k[ba>>2]|0,ua);qe(k[ga>>2]|0,k[ca>>2]|0,ua);break}ra=d;sa=136543;ta=ra+32|0;do{i[ra>>0]=i[sa>>0]|0;ra=ra+1|0;sa=sa+1|0}while((ra|0)<(ta|0));break a}while(0);if(((j[_>>1]|0)==1?(ua=j[ja>>1]|0,wa=ua&65535,ua<<16>>16!=1):0)?(ua=j[c>>1]|0,(ua&65535)<8):0){va=m[ka>>1]|0;k[M>>2]=130805;k[M+4>>2]=va;k[M+8>>2]=136130;k[M+12>>2]=wa;k[M+16>>2]=ua&65535;Bq(d,136051,M)|0;break a}}else{if((ma|0)<8){switch(ma|0){case 6:{if(!((j[_>>1]|0)==1&(j[$>>1]|0)==7))break e;k[L>>2]=1;Ob(b,65538,L)|0;j[ka>>1]=2;break e;break}case 5:break;default:{pa=49;break e}}k[J>>2]=da;Ge(b,332,J)|0;ua=j[da>>1]|0;if(ua<<16>>16!=1){k[I>>2]=136251;k[I+4>>2]=ua&65535;Bq(d,136202,I)|0;break a}ua=j[ja>>1]|0;if((ua&65535)>=4)break;k[H>>2]=136130;k[H+4>>2]=ua&65535;Bq(d,136202,H)|0;break a}if((ma|0)<32844)switch(ma|0){case 8:{break e;break}default:{pa=49;break e}}switch(ma|0){case 32844:{if((j[$>>1]|0)==-30860){k[F>>2]=3;Ob(b,65560,F)|0;j[ka>>1]=1;j[c>>1]=8;break e}else{k[G>>2]=136291;k[G+4>>2]=34676;Bq(d,136258,G)|0;break a}break}case 32845:break;default:{pa=49;break e}}if((j[$>>1]&-2)<<16>>16!=-30860){k[E>>2]=136291;k[E+4>>2]=34676;k[E+8>>2]=34677;Bq(d,136303,E)|0;break a}ua=j[_>>1]|0;if(ua<<16>>16==1){k[C>>2]=3;Ob(b,65560,C)|0;j[ka>>1]=2;j[c>>1]=8;break}k[D>>2]=136391;k[D+4>>2]=ua&65535;Bq(d,136344,D)|0;xa=0;r=e;return xa|0}while(0);if((pa|0)==49){k[B>>2]=130805;k[B+4>>2]=ma;Bq(d,136411,B)|0;break a}la=a+56|0;ua=a+72|0;wa=a+76|0;va=a+80|0;k[la>>2]=0;k[la+4>>2]=0;k[la+8>>2]=0;k[la+12>>2]=0;k[la+16>>2]=0;k[la+20>>2]=0;k[la+24>>2]=0;k[A>>2]=a+16;Pb(b,256,A)|0;k[z>>2]=a+20;Pb(b,257,z)|0;k[y>>2]=a+28;Ge(b,274,y)|0;if((j[_>>1]|0)==2){ya=(m[ja>>1]|0)<2;k[a+8>>2]=ya&1;if(!ya){ya=(rd(k[a>>2]|0)|0)!=0;za=a+48|0;k[za>>2]=ya?3:4;ya=a+52|0;k[ya>>2]=0;f:do switch(m[ka>>1]|0){case 2:case 1:case 0:{switch(m[c>>1]|0){case 8:{switch(k[ia>>2]|0){case 1:{k[ya>>2]=1;break f;break}case 2:{if(k[wa>>2]|0)Ja(136575,136593,2728,136608);Aa=me(65536)|0;k[wa>>2]=Aa;if(!Aa){vc(k[(k[a>>2]|0)+628>>2]|0,136608,150005,n);break f}else{Ba=0;Ca=Aa}while(1){Aa=0;Da=Ca;while(1){Ea=((((ha(Aa,Ba)|0)+127|0)>>>0)/255|0)&255;i[Da>>0]=Ea;Aa=Aa+1|0;if((Aa|0)==256)break;else Da=Da+1|0}Ba=Ba+1|0;if((Ba|0)==256)break;else Ca=Ca+256|0}k[ya>>2]=2;break f;break}default:{k[ya>>2]=3;break f}}break}case 16:break;default:break f}Da=k[ia>>2]|0;if((Da|0)==1){if(k[va>>2]|0)Ja(136623,136593,2750,136648);Aa=me(65536)|0;k[va>>2]=Aa;if(!Aa){vc(k[(k[a>>2]|0)+628>>2]|0,136648,150005,l);break f}else{Fa=Aa;Ga=0}while(1){i[Fa>>0]=((Ga+128|0)>>>0)/257|0;Ga=Ga+1|0;if((Ga|0)==65536)break;else Fa=Fa+1|0}k[ya>>2]=4;break f}Aa=(Da|0)==2;if(k[va>>2]|0)Ja(136623,136593,2750,136648);Ea=me(65536)|0;k[va>>2]=Ea;if(!Ea){vc(k[(k[a>>2]|0)+628>>2]|0,136648,150005,h);Ha=0}else{Ia=Ea;Ea=0;while(1){i[Ia>>0]=((Ea+128|0)>>>0)/257|0;Ea=Ea+1|0;if((Ea|0)==65536){Ha=1;break}else Ia=Ia+1|0}}if(!Aa){if(!Ha)break f;k[ya>>2]=6;break f}if(Ha){if(k[wa>>2]|0)Ja(136575,136593,2728,136608);Ia=me(65536)|0;k[wa>>2]=Ia;if(!Ia){vc(k[(k[a>>2]|0)+628>>2]|0,136608,150005,g);break f}else{Ka=0;La=Ia}while(1){Ia=0;Ea=La;while(1){Da=((((ha(Ia,Ka)|0)+127|0)>>>0)/255|0)&255;i[Ea>>0]=Da;Ia=Ia+1|0;if((Ia|0)==256)break;else Ea=Ea+1|0}Ka=Ka+1|0;if((Ka|0)==256)break;else La=La+256|0}k[ya>>2]=5}break}case 5:{if((j[c>>1]|0)==8?(j[ja>>1]|0)==4:0){k[ia>>2]=1;k[ya>>2]=7}break}case 6:{if((((j[c>>1]|0)==8?(j[ja>>1]|0)==3:0)?(Xc(a)|0)!=0:0)?(Aa=k[a>>2]|0,k[f>>2]=y,k[f+4>>2]=z,Ge(Aa,530,f)|0,(m[y>>1]<<4|m[z>>1]|0)==17):0)k[ya>>2]=8;break}default:{}}while(0);if(k[za>>2]|0)if(k[ya>>2]|0){xa=1;r=e;return xa|0}ra=d;sa=136793;ta=ra+28|0;do{i[ra>>0]=i[sa>>0]|0;ra=ra+1|0;sa=sa+1|0}while((ra|0)<(ta|0));break a}}else k[a+8>>2]=1;ya=(rd(k[a>>2]|0)|0)!=0;za=a+48|0;k[za>>2]=ya?1:2;ya=a+52|0;k[ya>>2]=0;g:do switch(m[ka>>1]|0){case 2:{switch(m[c>>1]|0){case 8:{switch(k[ia>>2]|0){case 1:{k[ya>>2]=1;break g;break}case 2:{if(k[wa>>2]|0)Ja(136575,136593,2728,136608);ma=me(65536)|0;k[wa>>2]=ma;if(!ma){vc(k[(k[a>>2]|0)+628>>2]|0,136608,150005,x);break g}else{Ma=0;Na=ma}while(1){ma=0;Aa=Na;while(1){Ea=((((ha(ma,Ma)|0)+127|0)>>>0)/255|0)&255;i[Aa>>0]=Ea;ma=ma+1|0;if((ma|0)==256)break;else Aa=Aa+1|0}Ma=Ma+1|0;if((Ma|0)==256)break;else Na=Na+256|0}k[ya>>2]=2;break g;break}default:{k[ya>>2]=3;break g}}break}case 16:break;default:break g}Aa=k[ia>>2]|0;if((Aa|0)==1){if(k[va>>2]|0)Ja(136623,136593,2750,136648);ma=me(65536)|0;k[va>>2]=ma;if(!ma){vc(k[(k[a>>2]|0)+628>>2]|0,136648,150005,w);break g}else{Oa=ma;Pa=0}while(1){i[Oa>>0]=((Pa+128|0)>>>0)/257|0;Pa=Pa+1|0;if((Pa|0)==65536)break;else Oa=Oa+1|0}k[ya>>2]=4;break g}ma=(Aa|0)==2;if(k[va>>2]|0)Ja(136623,136593,2750,136648);Ea=me(65536)|0;k[va>>2]=Ea;if(!Ea){vc(k[(k[a>>2]|0)+628>>2]|0,136648,150005,v);Qa=0}else{Ia=Ea;Ea=0;while(1){i[Ia>>0]=((Ea+128|0)>>>0)/257|0;Ea=Ea+1|0;if((Ea|0)==65536){Qa=1;break}else Ia=Ia+1|0}}if(!ma){if(!Qa)break g;k[ya>>2]=6;break g}if(Qa){if(k[wa>>2]|0)Ja(136575,136593,2728,136608);Ia=me(65536)|0;k[wa>>2]=Ia;if(!Ia){vc(k[(k[a>>2]|0)+628>>2]|0,136608,150005,u);break g}else{Ra=0;Sa=Ia}while(1){Ia=0;Ea=Sa;while(1){Aa=((((ha(Ia,Ra)|0)+127|0)>>>0)/255|0)&255;i[Ea>>0]=Aa;Ia=Ia+1|0;if((Ia|0)==256)break;else Ea=Ea+1|0}Ra=Ra+1|0;if((Ra|0)==256)break;else Sa=Sa+256|0}k[ya>>2]=5}break}case 5:{if((Kc(a)|0)!=0?(j[c>>1]|0)==8:0)if(!(k[la>>2]|0)){k[ya>>2]=7;break g}else{k[ya>>2]=8;break g}break}case 3:{if(Kc(a)|0)switch(m[c>>1]|0){case 8:{k[ya>>2]=9;break g;break}case 4:{k[ya>>2]=10;break g;break}case 2:{k[ya>>2]=11;break g;break}case 1:{k[ya>>2]=12;break g;break}default:break g}break}case 1:case 0:{if(Kc(a)|0)switch(m[c>>1]|0){case 16:{k[ya>>2]=13;break g;break}case 8:{if((k[ia>>2]|0)!=0?(j[ja>>1]|0)==2:0){k[ya>>2]=14;break g}k[ya>>2]=15;break g;break}case 4:{k[ya>>2]=16;break g;break}case 2:{k[ya>>2]=17;break g;break}case 1:{k[ya>>2]=18;break g;break}default:break g}break}case 6:{if(((j[c>>1]|0)==8?(j[ja>>1]|0)==3:0)?(Xc(a)|0)!=0:0){ma=k[a>>2]|0;k[t>>2]=A;k[t+4>>2]=Q;Ge(ma,530,t)|0;switch(m[A>>1]<<4|m[Q>>1]|0){case 68:{k[ya>>2]=19;break g;break}case 66:{k[ya>>2]=20;break g;break}case 65:{k[ya>>2]=21;break g;break}case 34:{k[ya>>2]=22;break g;break}case 33:{k[ya>>2]=23;break g;break}case 18:{k[ya>>2]=24;break g;break}case 17:{k[ya>>2]=25;break g;break}default:break g}}break}case 8:{if((Kc(a)|0)!=0?(j[c>>1]|0)==8:0){if((k[ua>>2]|0)==0?(ma=me(18124)|0,k[ua>>2]=ma,(ma|0)==0):0){vc(k[(k[a>>2]|0)+628>>2]|0,136670,136691,s);Ta=0}else{ma=k[a>>2]|0;k[q>>2]=y;Ge(ma,318,q)|0;o[z+4>>2]=100.0;ma=k[y>>2]|0;Ea=ma+4|0;o[z>>2]=+o[ma>>2]/+o[Ea>>2]*100.0;Ua=+o[Ea>>2];o[z+8>>2]=(1.0-+o[ma>>2]-Ua)/Ua*100.0;if((Je(k[ua>>2]|0,7644,z)|0)<0){vc(k[(k[a>>2]|0)+628>>2]|0,136670,136738,p);ne(k[ua>>2]|0);Ta=0}else Ta=26}k[ya>>2]=Ta}break}default:{}}while(0);if(k[za>>2]|0)if(k[ya>>2]|0){xa=1;r=e;return xa|0}ra=d;sa=136793;ta=ra+28|0;do{i[ra>>0]=i[sa>>0]|0;ra=ra+1|0;sa=sa+1|0}while((ra|0)<(ta|0));break}default:{k[W>>2]=X;Bq(d,135980,W)|0}}while(0);ne(k[ea>>2]|0);ne(k[fa>>2]|0);ne(k[ga>>2]|0);k[ga>>2]=0;k[fa>>2]=0;k[ea>>2]=0;xa=0;r=e;return xa|0}function Ac(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0;g=r;r=r+1136|0;h=g+16|0;i=g+8|0;l=g;m=g+112|0;n=g+20|0;qr(m|0,0,1024)|0;if((xc(a,m)|0)!=0?(zc(n,a,f,m)|0)!=0:0){j[n+30>>1]=e;e=k[n+20>>2]|0;f=d+((ha(c-e|0,b)|0)<<2)|0;c=k[n+48>>2]|0;do if(c)if(!(k[n+52>>2]|0)){d=k[n>>2]|0;o=k[d+628>>2]|0;vc(o,qd(d)|0,136844,i);p=0;break}else{p=xb[c&63](n,f,b,e)|0;break}else{d=k[n>>2]|0;o=k[d+628>>2]|0;vc(o,qd(d)|0,136821,l);p=0}while(0);yc(n);q=p;r=g;return q|0}p=k[a+628>>2]|0;n=qd(a)|0;k[h>>2]=m;vc(p,n,154321,h);q=0;r=g;return q|0}function Bc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ac(a,b,c,d,4,e)|0}function Cc(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,l=0,n=0,o=0,p=0,q=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;e=r;r=r+32|0;f=e+16|0;g=e+8|0;h=e;i=e+24|0;l=e+20|0;n=k[a>>2]|0;o=k[a+52>>2]|0;p=me(ge(n)|0)|0;if(!p){q=k[n+628>>2]|0;s=qd(n)|0;k[h>>2]=136922;vc(q,s,154321,h);t=0;r=e;return t|0}pe(p,0,ge(n)|0);k[g>>2]=i;Pb(n,322,g)|0;k[f>>2]=l;Pb(n,323,f)|0;a:do switch(m[a+28>>1]|0){case 5:case 1:{switch(j[a+30>>1]|0){case 6:case 2:{u=2;v=17;break a;break}case 7:case 3:{w=3;v=16;break a;break}case 8:case 4:{w=1;v=16;break a;break}default:{u=0;v=17;break a}}break}case 6:case 2:{switch(j[a+30>>1]|0){case 5:case 1:{u=2;v=17;break a;break}case 7:case 3:{w=1;v=16;break a;break}case 8:case 4:{w=3;v=16;break a;break}default:{u=0;v=17;break a}}break}case 7:case 3:{switch(j[a+30>>1]|0){case 5:case 1:{w=3;v=16;break a;break}case 8:case 4:{u=2;v=17;break a;break}case 6:case 2:{w=1;v=16;break a;break}default:{u=0;v=17;break a}}break}case 8:case 4:{switch(j[a+30>>1]|0){case 5:case 1:{w=1;v=16;break a;break}case 7:case 3:{u=2;v=17;break a;break}case 6:case 2:{w=3;v=16;break a;break}default:{u=0;v=17;break a}}break}default:{u=0;v=17}}while(0);if((v|0)==16){f=k[i>>2]|0;x=w;y=f;z=1;A=0-(f+c)|0;B=d+-1|0}else if((v|0)==17){v=k[i>>2]|0;x=u;y=v;z=0;A=c-v|0;B=0}v=a+88|0;u=((k[v>>2]|0)>>>0)%(y>>>0)|0;f=y-u|0;y=u+A|0;w=(d|0)==0;if(w)C=1;else{g=a+84|0;h=a+4|0;s=(c|0)==0;q=a+26|0;D=1;E=0;F=B;while(1){B=k[l>>2]|0;G=k[g>>2]|0;H=B-(((G+E|0)>>>0)%(B>>>0)|0)|0;B=(H+E|0)>>>0>d>>>0?d-E|0:H;b:do if(s)I=D;else{H=ha(F,c)|0;J=G;K=k[v>>2]|0;L=u;M=y;N=f;O=0;while(1){if((yd(n,p,K,J+E|0,0,0)|0)==-1?(k[h>>2]|0)!=0:0){I=0;break b}P=(((k[g>>2]|0)+E|0)>>>0)%((k[l>>2]|0)>>>0)|0;Q=ha(de(n)|0,P)|0;P=(ha(m[q>>1]|0,L)|0)+Q|0;if((O+N|0)>>>0>c>>>0){Q=c-O|0;R=(k[i>>2]|0)-Q|0;S=R;T=R+A|0;U=Q}else{S=L;T=M;U=N}wb[o&31](a,b+(O+H<<2)|0,O,F,U,B,S,T,p+P|0);P=U+O|0;if(P>>>0>=c>>>0){I=D;break b}J=k[g>>2]|0;K=U+K|0;L=0;M=A;N=k[i>>2]|0;O=P}}while(0);E=B+E|0;if(E>>>0>=d>>>0){C=I;break}else{D=I;F=(z?0-B|0:B)+F|0}}}ne(p);if((x&2|0)==0|w){t=C;r=e;return t|0}w=c+-1|0;x=0;do{p=ha(x,c)|0;F=w+p|0;if((p|0)<(F|0)){z=b+(p<<2)|0;p=b+(F<<2)|0;do{F=k[z>>2]|0;k[z>>2]=k[p>>2];k[p>>2]=F;z=z+4|0;p=p+-4|0}while(z>>>0<p>>>0)}x=x+1|0}while((x|0)!=(d|0));t=C;r=e;return t|0}function Dc(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,l=0,n=0,o=0,p=0,q=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;e=r;r=r+48|0;f=e+24|0;g=e;h=e+28|0;i=e+32|0;l=k[a>>2]|0;n=k[a+52>>2]|0;o=k[a+16>>2]|0;k[g>>2]=e+34;k[g+4>>2]=i;Ge(l,530,g)|0;if(!(j[i>>1]|0)){g=k[l+628>>2]|0;vc(g,qd(l)|0,137155,e+8|0);p=0;r=e;return p|0}g=me(Nd(l)|0)|0;if(!g){q=k[l+628>>2]|0;vc(q,qd(l)|0,137190,e+16|0);p=0;r=e;return p|0}pe(g,0,Nd(l)|0);a:do switch(m[a+28>>1]|0){case 5:case 1:{switch(j[a+30>>1]|0){case 6:case 2:{s=2;t=0;u=0;v=0;break a;break}case 7:case 3:{w=3;x=18;break a;break}case 8:case 4:{w=1;x=18;break a;break}default:{s=0;t=0;u=0;v=0;break a}}break}case 6:case 2:{switch(j[a+30>>1]|0){case 5:case 1:{s=2;t=0;u=0;v=0;break a;break}case 7:case 3:{w=1;x=18;break a;break}case 8:case 4:{w=3;x=18;break a;break}default:{s=0;t=0;u=0;v=0;break a}}break}case 7:case 3:{switch(j[a+30>>1]|0){case 5:case 1:{w=3;x=18;break a;break}case 8:case 4:{s=2;t=0;u=0;v=0;break a;break}case 6:case 2:{w=1;x=18;break a;break}default:{s=0;t=0;u=0;v=0;break a}}break}case 8:case 4:{switch(j[a+30>>1]|0){case 5:case 1:{w=1;x=18;break a;break}case 7:case 3:{s=2;t=0;u=0;v=0;break a;break}case 6:case 2:{w=3;x=18;break a;break}default:{s=0;t=0;u=0;v=0;break a}}break}default:{s=0;t=0;u=0;v=0}}while(0);if((x|0)==18){s=w;t=1;u=0-(c<<1)|0;v=d+-1|0}k[f>>2]=h;Ge(l,278,f)|0;f=Pd(l)|0;w=o>>>0>c>>>0?o-c|0:0;o=a+4|0;x=(d|0)==0;b:do if(!x){q=a+84|0;y=a+88|0;z=a+26|0;if(t){A=0;B=v;while(1){C=k[h>>2]|0;D=(k[q>>2]|0)+A|0;E=C-((D>>>0)%(C>>>0)|0)|0;C=(E+A|0)>>>0>d>>>0?d-A|0:E;E=m[i>>1]|0;F=(C>>>0)%(E>>>0)|0;G=Id(l,D,0)|0;if((vd(l,G,g,ha(C+((F|0)==0?0:E-F|0)+((((k[q>>2]|0)+A|0)>>>0)%((k[h>>2]|0)>>>0)|0)|0,f)|0)|0)==-1?(k[o>>2]|0)!=0:0){H=0;break b}F=ha((((k[q>>2]|0)+A|0)>>>0)%((k[h>>2]|0)>>>0)|0,f)|0;E=b+((ha(B,c)|0)<<2)|0;G=g+((ha(m[z>>1]|0,k[y>>2]|0)|0)+F)|0;wb[n&31](a,E,0,B,c,C,w,u,G);A=C+A|0;if(A>>>0>=d>>>0){H=1;break}else B=B-C|0}}else{B=0;A=v;while(1){C=k[h>>2]|0;G=(k[q>>2]|0)+B|0;E=C-((G>>>0)%(C>>>0)|0)|0;C=(E+B|0)>>>0>d>>>0?d-B|0:E;E=m[i>>1]|0;F=(C>>>0)%(E>>>0)|0;D=Id(l,G,0)|0;if((vd(l,D,g,ha(C+((F|0)==0?0:E-F|0)+((((k[q>>2]|0)+B|0)>>>0)%((k[h>>2]|0)>>>0)|0)|0,f)|0)|0)==-1?(k[o>>2]|0)!=0:0){H=0;break b}F=ha((((k[q>>2]|0)+B|0)>>>0)%((k[h>>2]|0)>>>0)|0,f)|0;E=b+((ha(A,c)|0)<<2)|0;D=g+((ha(m[z>>1]|0,k[y>>2]|0)|0)+F)|0;wb[n&31](a,E,0,A,c,C,w,u,D);B=C+B|0;if(B>>>0>=d>>>0){H=1;break}else A=C+A|0}}}else H=1;while(0);if(!((s&2|0)==0|x)){x=c+-1|0;s=0;do{u=ha(s,c)|0;w=x+u|0;if((u|0)<(w|0)){a=b+(u<<2)|0;u=b+(w<<2)|0;do{w=k[a>>2]|0;k[a>>2]=k[u>>2];k[u>>2]=w;a=a+4|0;u=u+-4|0}while(a>>>0<u>>>0)}s=s+1|0}while((s|0)!=(d|0))}ne(g);p=H;r=e;return p|0}function Ec(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;var j=0,n=0,o=0,p=0,q=0,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,ia=0,ja=0,ka=0;d=m[a+26>>1]|0;a=ha(d,g)|0;if(!f)return;g=e>>>0>7;c=d+1|0;j=d+2|0;n=d+3|0;o=d<<1;p=o|1;q=o+2|0;r=o+3|0;s=d*3|0;t=s+1|0;u=s+2|0;v=s+3|0;w=d<<2;x=w|1;y=w|2;z=w|3;A=d*5|0;B=A+1|0;C=A+2|0;D=A+3|0;E=d*6|0;F=E|1;G=E+2|0;H=E+3|0;I=d*7|0;J=I+1|0;K=I+2|0;L=I+3|0;M=d<<3;N=e+-8|0;O=N&-8;P=N-O|0;N=O+8|0;O=ha(N,d)|0;Q=i;i=b;b=f;while(1){b=b+-1|0;if(g){f=Q+O|0;R=Q;S=i;T=e;while(1){k[S>>2]=(l[R+1>>0]|0)<<8|(l[R>>0]|0)|(l[R+2>>0]|0)<<16|(l[R+3>>0]|0)<<24;k[S+4>>2]=(l[R+c>>0]|0)<<8|(l[R+d>>0]|0)|(l[R+j>>0]|0)<<16|(l[R+n>>0]|0)<<24;k[S+8>>2]=(l[R+p>>0]|0)<<8|(l[R+o>>0]|0)|(l[R+q>>0]|0)<<16|(l[R+r>>0]|0)<<24;k[S+12>>2]=(l[R+t>>0]|0)<<8|(l[R+s>>0]|0)|(l[R+u>>0]|0)<<16|(l[R+v>>0]|0)<<24;k[S+16>>2]=(l[R+x>>0]|0)<<8|(l[R+w>>0]|0)|(l[R+y>>0]|0)<<16|(l[R+z>>0]|0)<<24;k[S+20>>2]=(l[R+B>>0]|0)<<8|(l[R+A>>0]|0)|(l[R+C>>0]|0)<<16|(l[R+D>>0]|0)<<24;k[S+24>>2]=(l[R+F>>0]|0)<<8|(l[R+E>>0]|0)|(l[R+G>>0]|0)<<16|(l[R+H>>0]|0)<<24;k[S+28>>2]=(l[R+J>>0]|0)<<8|(l[R+I>>0]|0)|(l[R+K>>0]|0)<<16|(l[R+L>>0]|0)<<24;T=T+-8|0;if(T>>>0<=7)break;else{R=R+M|0;S=S+32|0}}U=i+(N<<2)|0;V=f;W=P}else{U=i;V=Q;W=e}switch(W|0){case 1:{X=U;Y=V;Z=14;break}case 7:{k[U>>2]=(l[V+1>>0]|0)<<8|(l[V>>0]|0)|(l[V+2>>0]|0)<<16|(l[V+3>>0]|0)<<24;_=U+4|0;$=V+d|0;Z=9;break}case 6:{_=U;$=V;Z=9;break}case 5:{aa=U;ba=V;Z=10;break}case 4:{ca=U;da=V;Z=11;break}case 3:{ea=U;fa=V;Z=12;break}case 2:{ga=U;ia=V;Z=13;break}default:{ja=U;ka=V}}if((Z|0)==9){Z=0;k[_>>2]=(l[$+1>>0]|0)<<8|(l[$>>0]|0)|(l[$+2>>0]|0)<<16|(l[$+3>>0]|0)<<24;aa=_+4|0;ba=$+d|0;Z=10}if((Z|0)==10){Z=0;k[aa>>2]=(l[ba+1>>0]|0)<<8|(l[ba>>0]|0)|(l[ba+2>>0]|0)<<16|(l[ba+3>>0]|0)<<24;ca=aa+4|0;da=ba+d|0;Z=11}if((Z|0)==11){Z=0;k[ca>>2]=(l[da+1>>0]|0)<<8|(l[da>>0]|0)|(l[da+2>>0]|0)<<16|(l[da+3>>0]|0)<<24;ea=ca+4|0;fa=da+d|0;Z=12}if((Z|0)==12){Z=0;k[ea>>2]=(l[fa+1>>0]|0)<<8|(l[fa>>0]|0)|(l[fa+2>>0]|0)<<16|(l[fa+3>>0]|0)<<24;ga=ea+4|0;ia=fa+d|0;Z=13}if((Z|0)==13){Z=0;k[ga>>2]=(l[ia+1>>0]|0)<<8|(l[ia>>0]|0)|(l[ia+2>>0]|0)<<16|(l[ia+3>>0]|0)<<24;X=ga+4|0;Y=ia+d|0;Z=14}if((Z|0)==14){Z=0;k[X>>2]=(l[Y+1>>0]|0)<<8|(l[Y>>0]|0)|(l[Y+2>>0]|0)<<16|(l[Y+3>>0]|0)<<24;ja=X+4|0;ka=Y+d|0}if(!b)break;else{Q=ka+a|0;i=ja+(h<<2)|0}}return}function Fc(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;var j=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;d=m[a+26>>1]|0;c=ha(d,g)|0;if(!f)return;g=(e|0)==0;j=a+76|0;a=ha(d,e)|0;n=b;b=i;i=f;while(1){i=i+-1|0;if(g){o=n;p=b}else{f=b+a|0;q=k[j>>2]|0;r=e;s=b;t=n;while(1){r=r+-1|0;u=l[s+3>>0]|0;v=u<<8;k[t>>2]=l[q+(l[s>>0]|0|v)>>0]|0|u<<24|(l[q+(l[s+1>>0]|0|v)>>0]|0)<<8|(l[q+(l[s+2>>0]|0|v)>>0]|0)<<16;if(!r)break;else{s=s+d|0;t=t+4|0}}o=n+(e<<2)|0;p=f}if(!i)break;else{n=o+(h<<2)|0;b=p+c|0}}return}function Gc(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;var j=0,n=0,o=0,p=0,q=0,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;d=m[a+26>>1]|0;a=ha(d,g)|0;if(!f)return;g=e>>>0>7;c=d+1|0;j=d+2|0;n=d<<1;o=n|1;p=n+2|0;q=d*3|0;r=q+1|0;s=q+2|0;t=d<<2;u=t|1;v=t|2;w=d*5|0;x=w+1|0;y=w+2|0;z=d*6|0;A=z|1;B=z+2|0;C=d*7|0;D=C+1|0;E=C+2|0;F=d<<3;G=e+-8|0;H=G&-8;I=G-H|0;G=H+8|0;H=ha(G,d)|0;J=i;i=b;b=f;while(1){b=b+-1|0;if(g){f=J+H|0;K=J;L=i;M=e;while(1){k[L>>2]=l[K>>0]|0|(l[K+1>>0]|0)<<8|(l[K+2>>0]|0)<<16|-16777216;k[L+4>>2]=l[K+d>>0]|0|(l[K+c>>0]|0)<<8|(l[K+j>>0]|0)<<16|-16777216;k[L+8>>2]=l[K+n>>0]|0|(l[K+o>>0]|0)<<8|(l[K+p>>0]|0)<<16|-16777216;k[L+12>>2]=l[K+q>>0]|0|(l[K+r>>0]|0)<<8|(l[K+s>>0]|0)<<16|-16777216;k[L+16>>2]=l[K+t>>0]|0|(l[K+u>>0]|0)<<8|(l[K+v>>0]|0)<<16|-16777216;k[L+20>>2]=l[K+w>>0]|0|(l[K+x>>0]|0)<<8|(l[K+y>>0]|0)<<16|-16777216;k[L+24>>2]=l[K+z>>0]|0|(l[K+A>>0]|0)<<8|(l[K+B>>0]|0)<<16|-16777216;k[L+28>>2]=l[K+C>>0]|0|(l[K+D>>0]|0)<<8|(l[K+E>>0]|0)<<16|-16777216;M=M+-8|0;if(M>>>0<=7)break;else{K=K+F|0;L=L+32|0}}N=i+(G<<2)|0;O=f;P=I}else{N=i;O=J;P=e}switch(P|0){case 1:{Q=N;R=O;S=14;break}case 7:{k[N>>2]=l[O>>0]|0|(l[O+1>>0]|0)<<8|(l[O+2>>0]|0)<<16|-16777216;T=N+4|0;U=O+d|0;S=9;break}case 6:{T=N;U=O;S=9;break}case 5:{V=N;W=O;S=10;break}case 4:{X=N;Y=O;S=11;break}case 3:{Z=N;_=O;S=12;break}case 2:{$=N;aa=O;S=13;break}default:{ba=N;ca=O}}if((S|0)==9){S=0;k[T>>2]=l[U>>0]|0|(l[U+1>>0]|0)<<8|(l[U+2>>0]|0)<<16|-16777216;V=T+4|0;W=U+d|0;S=10}if((S|0)==10){S=0;k[V>>2]=l[W>>0]|0|(l[W+1>>0]|0)<<8|(l[W+2>>0]|0)<<16|-16777216;X=V+4|0;Y=W+d|0;S=11}if((S|0)==11){S=0;k[X>>2]=l[Y>>0]|0|(l[Y+1>>0]|0)<<8|(l[Y+2>>0]|0)<<16|-16777216;Z=X+4|0;_=Y+d|0;S=12}if((S|0)==12){S=0;k[Z>>2]=l[_>>0]|0|(l[_+1>>0]|0)<<8|(l[_+2>>0]|0)<<16|-16777216;$=Z+4|0;aa=_+d|0;S=13}if((S|0)==13){S=0;k[$>>2]=l[aa>>0]|0|(l[aa+1>>0]|0)<<8|(l[aa+2>>0]|0)<<16|-16777216;Q=$+4|0;R=aa+d|0;S=14}if((S|0)==14){S=0;k[Q>>2]=l[R>>0]|0|(l[R+1>>0]|0)<<8|(l[R+2>>0]|0)<<16|-16777216;ba=Q+4|0;ca=R+d|0}if(!b)break;else{J=ca+a|0;i=ba+(h<<2)|0}}return}function Hc(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;var j=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=m[a+26>>1]|0;c=ha(d,g)|0;if(!f)return;g=(e|0)==0;j=a+80|0;a=ha(d,e)|0;n=b;b=f;f=i;while(1){b=b+-1|0;if(g){o=n;p=f}else{i=f+(a<<1)|0;q=k[j>>2]|0;r=e;s=n;t=f;while(1){r=r+-1|0;k[s>>2]=(l[q+(m[t+2>>1]|0)>>0]|0)<<8|(l[q+(m[t>>1]|0)>>0]|0)|(l[q+(m[t+4>>1]|0)>>0]|0)<<16|(l[q+(m[t+6>>1]|0)>>0]|0)<<24;if(!r)break;else{s=s+4|0;t=t+(d<<1)|0}}o=n+(e<<2)|0;p=i}if(!b)break;else{n=o+(h<<2)|0;f=p+(c<<1)|0}}return}function Ic(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;var j=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;d=m[a+26>>1]|0;c=ha(d,g)|0;if(!f)return;g=(e|0)==0;j=a+80|0;n=a+76|0;a=ha(d,e)|0;o=b;b=f;f=i;while(1){b=b+-1|0;if(g){p=o;q=f}else{i=f+(a<<1)|0;r=k[j>>2]|0;s=k[n>>2]|0;t=e;u=o;v=f;while(1){t=t+-1|0;w=l[r+(m[v+6>>1]|0)>>0]|0;x=w<<8;k[u>>2]=l[s+(l[r+(m[v>>1]|0)>>0]|0|x)>>0]|0|w<<24|(l[s+(l[r+(m[v+2>>1]|0)>>0]|0|x)>>0]|0)<<8|(l[s+(l[r+(m[v+4>>1]|0)>>0]|0|x)>>0]|0)<<16;if(!t)break;else{u=u+4|0;v=v+(d<<1)|0}}p=o+(e<<2)|0;q=i}if(!b)break;else{o=p+(h<<2)|0;f=q+(c<<1)|0}}return}function Jc(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;var j=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=m[a+26>>1]|0;c=ha(d,g)|0;if(!f)return;g=(e|0)==0;j=a+80|0;a=ha(d,e)|0;n=b;b=f;f=i;while(1){b=b+-1|0;if(g){o=n;p=f}else{i=f+(a<<1)|0;q=k[j>>2]|0;r=e;s=n;t=f;while(1){r=r+-1|0;k[s>>2]=l[q+(m[t>>1]|0)>>0]|0|(l[q+(m[t+2>>1]|0)>>0]|0)<<8|(l[q+(m[t+4>>1]|0)>>0]|0)<<16|-16777216;if(!r)break;else{s=s+4|0;t=t+(d<<1)|0}}o=n+(e<<2)|0;p=i}if(!b)break;else{n=o+(h<<2)|0;f=p+(c<<1)|0}}return}function Kc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=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;b=r;r=r+32|0;c=b+24|0;d=b+16|0;e=b+8|0;f=b;g=a+32|0;switch(m[g>>1]|0){case 5:case 6:case 2:{if((j[a+24>>1]|0)==8){h=1;r=b;return h|0}break}case 0:case 1:break;case 3:{n=a+36|0;o=k[n>>2]|0;p=a+40|0;q=k[p>>2]|0;s=a+44|0;t=k[s>>2]|0;u=a+24|0;v=j[u>>1]|0;w=1<<(v&65535);x=t;y=q;z=w;A=o;while(1){if((z|0)<=0){B=36;break}if((m[A>>1]|0)>255){B=34;break}if((m[y>>1]|0)>255){B=34;break}if((m[x>>1]|0)>255){B=34;break}else{x=x+2|0;y=y+2|0;z=z+-1|0;A=A+2|0}}if((B|0)==34)if(v<<16>>16==31){h=1;r=b;return h|0}else{v=w;do{w=v;v=v+-1|0;A=o+(v<<1)|0;j[A>>1]=(m[A>>1]|0)>>>8;A=q+(v<<1)|0;j[A>>1]=(m[A>>1]|0)>>>8;A=t+(v<<1)|0;j[A>>1]=(m[A>>1]|0)>>>8}while((w|0)>1)}else if((B|0)==36){B=k[a>>2]|0;v=k[B+628>>2]|0;ie(v,qd(B)|0,137096,d)}d=j[u>>1]|0;if((d&65535)>=9){h=1;r=b;return h|0}u=d&65535;d=k[n>>2]|0;n=k[p>>2]|0;p=k[s>>2]|0;s=me(((8/(u>>>0)|0)<<10)+1024|0)|0;B=a+64|0;k[B>>2]=s;if(!s){v=k[a>>2]|0;t=k[v+628>>2]|0;vc(t,qd(v)|0,137120,c);h=0;r=b;return h|0}c=s;v=0;t=s+1024|0;while(1){k[c+(v<<2)>>2]=t;switch(u|0){case 1:{s=v>>>7&1;k[t>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v>>>6&1;k[t+4>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v>>>5&1;k[t+8>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v>>>4&1;k[t+12>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v>>>3&1;k[t+16>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v>>>2&1;k[t+20>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v>>>1&1;k[t+24>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v&1;k[t+28>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;C=t+32|0;break}case 2:{s=v>>>6&3;k[t>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v>>>4&3;k[t+4>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v>>>2&3;k[t+8>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v&3;k[t+12>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;C=t+16|0;break}case 4:{s=v>>>4&15;k[t>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;s=v&15;k[t+4>>2]=m[d+(s<<1)>>1]&255|m[n+(s<<1)>>1]<<8&65280|m[p+(s<<1)>>1]<<16|-16777216;C=t+8|0;break}case 8:{k[t>>2]=m[d+(v<<1)>>1]&255|m[n+(v<<1)>>1]<<8&65280|m[p+(v<<1)>>1]<<16|-16777216;C=t+4|0;break}default:C=t}s=v+1|0;if((s|0)==256){h=1;break}c=k[B>>2]|0;v=s;t=C}r=b;return h|0}default:{h=1;r=b;return h|0}}C=a+24|0;t=j[C>>1]|0;v=t<<16>>16==16?255:(1<<(t&65535))+-1|0;t=v+1|0;B=me(t)|0;c=a+56|0;k[c>>2]=B;if(!B){p=k[a>>2]|0;n=k[p+628>>2]|0;vc(n,qd(p)|0,137023,f);h=0;r=b;return h|0}f=(v|0)<0;if(!(j[g>>1]|0)){if(!f?(i[B>>0]=-1,(v|0)!=0):0){p=1;do{i[(k[c>>2]|0)+p>>0]=((v-p|0)*255|0)/(v|0)|0;p=p+1|0}while((p|0)!=(t|0))}}else if(!f?(i[B>>0]=0,(v|0)!=0):0){B=1;do{i[(k[c>>2]|0)+B>>0]=(B*255|0)/(v|0)|0;B=B+1|0}while((B|0)!=(t|0))}t=j[C>>1]|0;if((t&65535)>=17){h=1;r=b;return h|0}if((m[g>>1]|0)>=2){h=1;r=b;return h|0}g=k[c>>2]|0;C=t&65535;B=8/(C>>>0)|0;v=me((B|0)==0?2048:(B<<10)+1024|0)|0;B=a+60|0;k[B>>2]=v;if(!v){f=k[a>>2]|0;a=k[f+628>>2]|0;vc(a,qd(f)|0,137065,e);h=0;r=b;return h|0}e=v+1024|0;a:do switch(t<<16>>16){case 1:{f=v;a=0;p=e;while(1){k[f+(a<<2)>>2]=p;n=l[g+(a>>7)>>0]|0;k[p>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a>>>6&1)>>0]|0;k[p+4>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a>>>5&1)>>0]|0;k[p+8>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a>>>4&1)>>0]|0;k[p+12>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a>>>3&1)>>0]|0;k[p+16>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a>>>2&1)>>0]|0;k[p+20>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a>>>1&1)>>0]|0;k[p+24>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a&1)>>0]|0;k[p+28>>2]=n|n<<8|n<<16|-16777216;n=a+1|0;if((n|0)==256)break a;f=k[B>>2]|0;a=n;p=p+32|0}break}case 2:{p=v;a=0;f=e;while(1){k[p+(a<<2)>>2]=f;n=l[g+(a>>6)>>0]|0;k[f>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a>>>4&3)>>0]|0;k[f+4>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a>>>2&3)>>0]|0;k[f+8>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a&3)>>0]|0;k[f+12>>2]=n|n<<8|n<<16|-16777216;if((a|0)==255)break a;p=k[B>>2]|0;a=a+1|0;f=f+16|0}break}case 16:{k[v>>2]=e;f=l[g>>0]|0;k[e>>2]=f|f<<8|f<<16|-16777216;f=1;a=e;do{a=a+4|0;k[(k[B>>2]|0)+(f<<2)>>2]=a;p=l[g+f>>0]|0;k[a>>2]=p|p<<8|p<<16|-16777216;f=f+1|0}while((f|0)!=256);break}default:{f=v;a=0;p=e;while(1){k[f+(a<<2)>>2]=p;switch(C|0){case 8:case 16:{n=l[g+a>>0]|0;k[p>>2]=n|n<<8|n<<16|-16777216;D=p+4|0;break}case 4:{n=l[g+(a>>4)>>0]|0;k[p>>2]=n|n<<8|n<<16|-16777216;n=l[g+(a&15)>>0]|0;k[p+4>>2]=n|n<<8|n<<16|-16777216;D=p+8|0;break}default:D=p}n=a+1|0;if((n|0)>=256)break a;f=k[B>>2]|0;a=n;p=D}}}while(0);ne(k[c>>2]|0);k[c>>2]=0;h=1;r=b;return h|0}function Lc(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;var j=0,n=0,o=0,p=0,q=0,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,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;d=m[a+26>>1]|0;a=ha(d,g)|0;if(!f)return;g=e>>>0>7;c=d+3|0;j=d+1|0;n=d+2|0;o=d<<1;p=o+3|0;q=o|1;r=o+2|0;s=d*3|0;t=s+3|0;u=s+1|0;v=s+2|0;w=d<<2;x=w|3;y=w|1;z=w|2;A=d*5|0;B=A+3|0;C=A+1|0;D=A+2|0;E=d*6|0;F=E+3|0;G=E|1;H=E+2|0;I=d*7|0;J=I+3|0;K=I+1|0;L=I+2|0;M=d<<3;N=e+-8|0;O=N&-8;P=N-O|0;N=O+8|0;O=ha(N,d)|0;Q=i;i=b;b=f;while(1){b=b+-1|0;if(g){f=Q+O|0;R=Q;S=i;T=e;while(1){U=(l[R+3>>0]|0)^255;V=((ha((l[R>>0]|0)^255,U)|0)>>>0)/255|0;W=((ha((l[R+1>>0]|0)^255,U)|0)>>>0)/255|0;X=V|W<<8|(((ha((l[R+2>>0]|0)^255,U)|0)>>>0)/255|0)<<16|-16777216;k[S>>2]=X;X=(l[R+c>>0]|0)^255;U=((ha((l[R+d>>0]|0)^255,X)|0)>>>0)/255|0;W=((ha((l[R+j>>0]|0)^255,X)|0)>>>0)/255|0;V=U|W<<8|(((ha((l[R+n>>0]|0)^255,X)|0)>>>0)/255|0)<<16|-16777216;k[S+4>>2]=V;V=(l[R+p>>0]|0)^255;X=((ha((l[R+o>>0]|0)^255,V)|0)>>>0)/255|0;W=((ha((l[R+q>>0]|0)^255,V)|0)>>>0)/255|0;U=X|W<<8|(((ha((l[R+r>>0]|0)^255,V)|0)>>>0)/255|0)<<16|-16777216;k[S+8>>2]=U;U=(l[R+t>>0]|0)^255;V=((ha((l[R+s>>0]|0)^255,U)|0)>>>0)/255|0;W=((ha((l[R+u>>0]|0)^255,U)|0)>>>0)/255|0;X=V|W<<8|(((ha((l[R+v>>0]|0)^255,U)|0)>>>0)/255|0)<<16|-16777216;k[S+12>>2]=X;X=(l[R+x>>0]|0)^255;U=((ha((l[R+w>>0]|0)^255,X)|0)>>>0)/255|0;W=((ha((l[R+y>>0]|0)^255,X)|0)>>>0)/255|0;V=U|W<<8|(((ha((l[R+z>>0]|0)^255,X)|0)>>>0)/255|0)<<16|-16777216;k[S+16>>2]=V;V=(l[R+B>>0]|0)^255;X=((ha((l[R+A>>0]|0)^255,V)|0)>>>0)/255|0;W=((ha((l[R+C>>0]|0)^255,V)|0)>>>0)/255|0;U=X|W<<8|(((ha((l[R+D>>0]|0)^255,V)|0)>>>0)/255|0)<<16|-16777216;k[S+20>>2]=U;U=(l[R+F>>0]|0)^255;V=((ha((l[R+E>>0]|0)^255,U)|0)>>>0)/255|0;W=((ha((l[R+G>>0]|0)^255,U)|0)>>>0)/255|0;X=V|W<<8|(((ha((l[R+H>>0]|0)^255,U)|0)>>>0)/255|0)<<16|-16777216;k[S+24>>2]=X;X=(l[R+J>>0]|0)^255;U=((ha((l[R+I>>0]|0)^255,X)|0)>>>0)/255|0;W=((ha((l[R+K>>0]|0)^255,X)|0)>>>0)/255|0;V=U|W<<8|(((ha((l[R+L>>0]|0)^255,X)|0)>>>0)/255|0)<<16|-16777216;k[S+28>>2]=V;T=T+-8|0;if(T>>>0<=7)break;else{R=R+M|0;S=S+32|0}}Y=i+(N<<2)|0;Z=f;_=P}else{Y=i;Z=Q;_=e}switch(_|0){case 1:{$=Y;aa=Z;ba=14;break}case 7:{S=(l[Z+3>>0]|0)^255;R=((ha((l[Z>>0]|0)^255,S)|0)>>>0)/255|0;T=R|(((ha((l[Z+1>>0]|0)^255,S)|0)>>>0)/255|0)<<8|(((ha((l[Z+2>>0]|0)^255,S)|0)>>>0)/255|0)<<16|-16777216;k[Y>>2]=T;ca=Y+4|0;da=Z+d|0;ba=9;break}case 6:{ca=Y;da=Z;ba=9;break}case 5:{ea=Y;fa=Z;ba=10;break}case 4:{ga=Y;ia=Z;ba=11;break}case 3:{ja=Y;ka=Z;ba=12;break}case 2:{la=Y;ma=Z;ba=13;break}default:{na=Y;oa=Z}}if((ba|0)==9){ba=0;T=(l[da+3>>0]|0)^255;S=((ha((l[da>>0]|0)^255,T)|0)>>>0)/255|0;R=((ha((l[da+1>>0]|0)^255,T)|0)>>>0)/255|0;V=S|R<<8|(((ha((l[da+2>>0]|0)^255,T)|0)>>>0)/255|0)<<16|-16777216;k[ca>>2]=V;ea=ca+4|0;fa=da+d|0;ba=10}if((ba|0)==10){ba=0;V=(l[fa+3>>0]|0)^255;T=((ha((l[fa>>0]|0)^255,V)|0)>>>0)/255|0;R=((ha((l[fa+1>>0]|0)^255,V)|0)>>>0)/255|0;S=T|R<<8|(((ha((l[fa+2>>0]|0)^255,V)|0)>>>0)/255|0)<<16|-16777216;k[ea>>2]=S;ga=ea+4|0;ia=fa+d|0;ba=11}if((ba|0)==11){ba=0;S=(l[ia+3>>0]|0)^255;V=((ha((l[ia>>0]|0)^255,S)|0)>>>0)/255|0;R=((ha((l[ia+1>>0]|0)^255,S)|0)>>>0)/255|0;T=V|R<<8|(((ha((l[ia+2>>0]|0)^255,S)|0)>>>0)/255|0)<<16|-16777216;k[ga>>2]=T;ja=ga+4|0;ka=ia+d|0;ba=12}if((ba|0)==12){ba=0;T=(l[ka+3>>0]|0)^255;S=((ha((l[ka>>0]|0)^255,T)|0)>>>0)/255|0;R=((ha((l[ka+1>>0]|0)^255,T)|0)>>>0)/255|0;V=S|R<<8|(((ha((l[ka+2>>0]|0)^255,T)|0)>>>0)/255|0)<<16|-16777216;k[ja>>2]=V;la=ja+4|0;ma=ka+d|0;ba=13}if((ba|0)==13){ba=0;V=(l[ma+3>>0]|0)^255;T=((ha((l[ma>>0]|0)^255,V)|0)>>>0)/255|0;R=((ha((l[ma+1>>0]|0)^255,V)|0)>>>0)/255|0;S=T|R<<8|(((ha((l[ma+2>>0]|0)^255,V)|0)>>>0)/255|0)<<16|-16777216;k[la>>2]=S;$=la+4|0;aa=ma+d|0;ba=14}if((ba|0)==14){ba=0;S=(l[aa+3>>0]|0)^255;V=((ha((l[aa>>0]|0)^255,S)|0)>>>0)/255|0;R=((ha((l[aa+1>>0]|0)^255,S)|0)>>>0)/255|0;T=V|R<<8|(((ha((l[aa+2>>0]|0)^255,S)|0)>>>0)/255|0)<<16|-16777216;k[$>>2]=T;na=$+4|0;oa=aa+d|0}if(!b)break;else{Q=oa+a|0;i=na+(h<<2)|0}}return}function Mc(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;var j=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;d=m[a+26>>1]|0;c=k[a+56>>2]|0;a=ha(d,g)|0;if(!f)return;g=(e|0)==0;j=ha(d,e)|0;n=b;b=i;i=f;while(1){i=i+-1|0;if(g){o=n;p=b}else{f=b+j|0;q=e;r=b;s=n;while(1){q=q+-1|0;t=(l[r+3>>0]|0)^255;u=((ha((l[r>>0]|0)^255,t)|0)>>>0)/255|0;v=((ha((l[r+1>>0]|0)^255,t)|0)>>>0)/255|0;w=((ha((l[r+2>>0]|0)^255,t)|0)>>>0)/255|0;k[s>>2]=l[c+u>>0]|0|(l[c+v>>0]|0)<<8|(l[c+w>>0]|0)<<16|-16777216;if(!q)break;else{r=r+d|0;s=s+4|0}}o=n+(e<<2)|0;p=f}if(!i)break;else{n=o+(h<<2)|0;b=p+a|0}}return}function Nc(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;var j=0,n=0,o=0,p=0,q=0,r=0,s=0;d=k[a+64>>2]|0;c=m[a+26>>1]|0;if(!f)return;a=(e|0)==0;j=ha(c,e)|0;n=b;b=i;i=f;while(1){i=i+-1|0;if(a){o=n;p=b}else{f=b+j|0;q=e;r=b;s=n;while(1){q=q+-1|0;k[s>>2]=k[k[d+((l[r>>0]|0)<<2)>>2]>>2];if(!q)break;else{r=r+c|0;s=s+4|0}}o=n+(e<<2)|0;p=f}if(!i)break;else{n=o+(h<<2)|0;b=p+g|0}}return}function Oc(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;var j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;d=k[a+64>>2]|0;a=(g|0)/2|0;if(!f)return;g=e>>>0>1;c=e+-2|0;j=c>>>1;m=j<<1;n=c-m|0;c=m+2|0;m=j+1|0;j=b;b=i;i=f;while(1){i=i+-1|0;if(g){f=j+(c<<2)|0;o=b;p=j;q=e;while(1){r=k[d+((l[o>>0]|0)<<2)>>2]|0;k[p>>2]=k[r>>2];k[p+4>>2]=k[r+4>>2];q=q+-2|0;if(q>>>0<=1)break;else{o=o+1|0;p=p+8|0}}s=f;t=b+m|0;u=n}else{s=j;t=b;u=e}if(!u){v=s;w=t}else{k[s>>2]=k[k[d+((l[t>>0]|0)<<2)>>2]>>2];v=s+4|0;w=t+1|0}if(!i)break;else{j=v+(h<<2)|0;b=w+a|0}}return}function Pc(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;var j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;d=k[a+64>>2]|0;a=(g|0)/4|0;if(!f)return;g=e>>>0>3;c=e+-4|0;j=c>>>2;m=j<<2;n=c-m|0;c=m+4|0;m=j+1|0;j=b;b=i;i=f;while(1){i=i+-1|0;if(g){f=j+(c<<2)|0;o=b;p=j;q=e;while(1){r=k[d+((l[o>>0]|0)<<2)>>2]|0;k[p>>2]=k[r>>2];k[p+4>>2]=k[r+4>>2];k[p+8>>2]=k[r+8>>2];k[p+12>>2]=k[r+12>>2];q=q+-4|0;if(q>>>0<=3)break;else{o=o+1|0;p=p+16|0}}s=f;t=b+m|0;u=n}else{s=j;t=b;u=e}a:do if(!u){v=t;w=s}else{p=t+1|0;o=k[d+((l[t>>0]|0)<<2)>>2]|0;switch(u|0){case 3:{k[s>>2]=k[o>>2];x=s+4|0;y=o+4|0;z=10;break}case 2:{x=s;y=o;z=10;break}case 1:{A=s;B=o;break}default:{v=p;w=s;break a}}if((z|0)==10){z=0;k[x>>2]=k[y>>2];A=x+4|0;B=y+4|0}k[A>>2]=k[B>>2];v=p;w=A+4|0}while(0);if(!i)break;else{j=w+(h<<2)|0;b=v+a|0}}return}function Qc(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;var j=0,m=0,n=0,o=0,p=0,q=0,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;d=k[a+64>>2]|0;a=(g|0)/8|0;if(!f)return;g=e>>>0>7;c=e+-8|0;j=c>>>3;m=j<<3;n=c-m|0;c=m+8|0;m=j+1|0;j=b;b=i;i=f;while(1){i=i+-1|0;if(g){f=j+(c<<2)|0;o=b;p=j;q=e;while(1){r=k[d+((l[o>>0]|0)<<2)>>2]|0;k[p>>2]=k[r>>2];k[p+4>>2]=k[r+4>>2];k[p+8>>2]=k[r+8>>2];k[p+12>>2]=k[r+12>>2];k[p+16>>2]=k[r+16>>2];k[p+20>>2]=k[r+20>>2];k[p+24>>2]=k[r+24>>2];k[p+28>>2]=k[r+28>>2];q=q+-8|0;if(q>>>0<=7)break;else{o=o+1|0;p=p+32|0}}s=f;t=b+m|0;u=n}else{s=j;t=b;u=e}a:do if(!u){v=t;w=s}else{p=t+1|0;o=k[d+((l[t>>0]|0)<<2)>>2]|0;switch(u|0){case 7:{k[s>>2]=k[o>>2];x=s+4|0;y=o+4|0;z=10;break}case 6:{x=s;y=o;z=10;break}case 5:{A=s;B=o;z=11;break}case 4:{C=s;D=o;z=12;break}case 3:{E=s;F=o;z=13;break}case 2:{G=s;H=o;z=14;break}case 1:{I=s;J=o;break}default:{v=p;w=s;break a}}if((z|0)==10){z=0;k[x>>2]=k[y>>2];A=x+4|0;B=y+4|0;z=11}if((z|0)==11){z=0;k[A>>2]=k[B>>2];C=A+4|0;D=B+4|0;z=12}if((z|0)==12){z=0;k[C>>2]=k[D>>2];E=C+4|0;F=D+4|0;z=13}if((z|0)==13){z=0;k[E>>2]=k[F>>2];G=E+4|0;H=F+4|0;z=14}if((z|0)==14){z=0;k[G>>2]=k[H>>2];I=G+4|0;J=H+4|0}k[I>>2]=k[J>>2];v=p;w=I+4|0}while(0);if(!i)break;else{j=w+(h<<2)|0;b=v+a|0}}return}function Rc(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;var j=0,l=0,n=0,o=0,p=0,q=0,r=0;d=m[a+26>>1]|0;c=k[a+60>>2]|0;if(!f)return;a=(e|0)==0;j=(ha(d,e)|0)<<1;l=b;b=i;i=f;while(1){i=i+-1|0;if(a){n=l;o=b}else{f=b+j|0;p=e;q=l;r=b;while(1){p=p+-1|0;k[q>>2]=k[k[c+((m[r>>1]|0)>>>8<<2)>>2]>>2];if(!p)break;else{q=q+4|0;r=r+(d<<1)|0}}n=l+(e<<2)|0;o=f}if(!i)break;else{l=n+(h<<2)|0;b=o+g|0}}return}function Sc(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;var j=0,n=0,o=0,p=0,q=0,r=0,s=0;d=m[a+26>>1]|0;c=k[a+60>>2]|0;if(!f)return;a=(e|0)==0;j=ha(d,e)|0;n=b;b=i;i=f;while(1){i=i+-1|0;if(a){o=n;p=b}else{f=b+j|0;q=e;r=b;s=n;while(1){q=q+-1|0;k[s>>2]=((l[r+1>>0]|0)<<24|16777215)&k[k[c+((l[r>>0]|0)<<2)>>2]>>2];if(!q)break;else{r=r+d|0;s=s+4|0}}o=n+(e<<2)|0;p=f}if(!i)break;else{n=o+(h<<2)|0;b=p+g|0}}return}function Tc(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;var j=0,n=0,o=0,p=0,q=0,r=0,s=0;d=m[a+26>>1]|0;c=k[a+60>>2]|0;if(!f)return;a=(e|0)==0;j=ha(d,e)|0;n=b;b=i;i=f;while(1){i=i+-1|0;if(a){o=n;p=b}else{f=b+j|0;q=e;r=b;s=n;while(1){q=q+-1|0;k[s>>2]=k[k[c+((l[r>>0]|0)<<2)>>2]>>2];if(!q)break;else{r=r+d|0;s=s+4|0}}o=n+(e<<2)|0;p=f}if(!i)break;else{n=o+(h<<2)|0;b=p+g|0}}return}function Uc(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;var j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;d=k[a+60>>2]|0;a=(g|0)/2|0;if(!f)return;g=e>>>0>1;c=e+-2|0;j=c>>>1;m=j<<1;n=c-m|0;c=m+2|0;m=j+1|0;j=b;b=i;i=f;while(1){i=i+-1|0;if(g){f=j+(c<<2)|0;o=b;p=j;q=e;while(1){r=k[d+((l[o>>0]|0)<<2)>>2]|0;k[p>>2]=k[r>>2];k[p+4>>2]=k[r+4>>2];q=q+-2|0;if(q>>>0<=1)break;else{o=o+1|0;p=p+8|0}}s=f;t=b+m|0;u=n}else{s=j;t=b;u=e}if(!u){v=s;w=t}else{k[s>>2]=k[k[d+((l[t>>0]|0)<<2)>>2]>>2];v=s+4|0;w=t+1|0}if(!i)break;else{j=v+(h<<2)|0;b=w+a|0}}return}function Vc(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;var j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;d=k[a+60>>2]|0;a=(g|0)/4|0;if(!f)return;g=e>>>0>3;c=e+-4|0;j=c>>>2;m=j<<2;n=c-m|0;c=m+4|0;m=j+1|0;j=b;b=i;i=f;while(1){i=i+-1|0;if(g){f=j+(c<<2)|0;o=b;p=j;q=e;while(1){r=k[d+((l[o>>0]|0)<<2)>>2]|0;k[p>>2]=k[r>>2];k[p+4>>2]=k[r+4>>2];k[p+8>>2]=k[r+8>>2];k[p+12>>2]=k[r+12>>2];q=q+-4|0;if(q>>>0<=3)break;else{o=o+1|0;p=p+16|0}}s=f;t=b+m|0;u=n}else{s=j;t=b;u=e}a:do if(!u){v=t;w=s}else{p=t+1|0;o=k[d+((l[t>>0]|0)<<2)>>2]|0;switch(u|0){case 3:{k[s>>2]=k[o>>2];x=s+4|0;y=o+4|0;z=10;break}case 2:{x=s;y=o;z=10;break}case 1:{A=s;B=o;break}default:{v=p;w=s;break a}}if((z|0)==10){z=0;k[x>>2]=k[y>>2];A=x+4|0;B=y+4|0}k[A>>2]=k[B>>2];v=p;w=A+4|0}while(0);if(!i)break;else{j=w+(h<<2)|0;b=v+a|0}}return}function Wc(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;var j=0,m=0,n=0,o=0,p=0,q=0,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;d=k[a+60>>2]|0;a=(g|0)/8|0;if(!f)return;g=e>>>0>7;c=e+-8|0;j=c>>>3;m=j<<3;n=c-m|0;c=m+8|0;m=j+1|0;j=b;b=i;i=f;while(1){i=i+-1|0;if(g){f=j+(c<<2)|0;o=b;p=j;q=e;while(1){r=k[d+((l[o>>0]|0)<<2)>>2]|0;k[p>>2]=k[r>>2];k[p+4>>2]=k[r+4>>2];k[p+8>>2]=k[r+8>>2];k[p+12>>2]=k[r+12>>2];k[p+16>>2]=k[r+16>>2];k[p+20>>2]=k[r+20>>2];k[p+24>>2]=k[r+24>>2];k[p+28>>2]=k[r+28>>2];q=q+-8|0;if(q>>>0<=7)break;else{o=o+1|0;p=p+32|0}}s=f;t=b+m|0;u=n}else{s=j;t=b;u=e}a:do if(!u){v=t;w=s}else{p=t+1|0;o=k[d+((l[t>>0]|0)<<2)>>2]|0;switch(u|0){case 7:{k[s>>2]=k[o>>2];x=s+4|0;y=o+4|0;z=10;break}case 6:{x=s;y=o;z=10;break}case 5:{A=s;B=o;z=11;break}case 4:{C=s;D=o;z=12;break}case 3:{E=s;F=o;z=13;break}case 2:{G=s;H=o;z=14;break}case 1:{I=s;J=o;break}default:{v=p;w=s;break a}}if((z|0)==10){z=0;k[x>>2]=k[y>>2];A=x+4|0;B=y+4|0;z=11}if((z|0)==11){z=0;k[A>>2]=k[B>>2];C=A+4|0;D=B+4|0;z=12}if((z|0)==12){z=0;k[C>>2]=k[D>>2];E=C+4|0;F=D+4|0;z=13}if((z|0)==13){z=0;k[E>>2]=k[F>>2];G=E+4|0;H=F+4|0;z=14}if((z|0)==14){z=0;k[G>>2]=k[H>>2];I=G+4|0;J=H+4|0}k[I>>2]=k[J>>2];v=p;w=I+4|0}while(0);if(!i)break;else{j=w+(h<<2)|0;b=v+a|0}}return}function Xc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=r;r=r+32|0;c=b+16|0;d=b+8|0;e=b;f=b+24|0;g=b+20|0;h=a+68|0;if((k[h>>2]|0)==0?(i=me(6168)|0,k[h>>2]=i,(i|0)==0):0){vc(k[(k[a>>2]|0)+628>>2]|0,136962,136982,e);j=0;r=b;return j|0}e=k[a>>2]|0;k[d>>2]=f;Ge(e,529,d)|0;d=k[a>>2]|0;k[c>>2]=g;Ge(d,532,c)|0;j=(Le(k[h>>2]|0,k[f>>2]|0,k[g>>2]|0)|0)>>>31^1;r=b;return j|0}function Yc(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;var j=0,m=0,n=0,o=0,p=0,q=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,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,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0;d=r;r=r+384|0;c=d+380|0;j=d+376|0;m=d+372|0;n=d+368|0;o=d+364|0;p=d+360|0;q=d+356|0;s=d+352|0;t=d+348|0;u=d+344|0;v=d+340|0;w=d+336|0;x=d+332|0;y=d+328|0;z=d+324|0;A=d+320|0;B=d+316|0;C=d+312|0;D=d+308|0;E=d+304|0;F=d+300|0;G=d+296|0;H=d+292|0;I=d+288|0;J=d+284|0;K=d+280|0;L=d+276|0;M=d+272|0;N=d+268|0;O=d+264|0;P=d+260|0;Q=d+256|0;R=d+252|0;S=d+248|0;T=d+244|0;U=d+240|0;V=d+236|0;W=d+232|0;X=d+228|0;Y=d+224|0;Z=d+220|0;_=d+216|0;$=d+212|0;aa=d+208|0;ba=d+204|0;ca=d+200|0;da=d+196|0;ea=d+192|0;fa=d+188|0;ga=d+184|0;ha=d+180|0;ia=d+176|0;ja=d+172|0;ka=d+168|0;la=d+164|0;ma=d+160|0;na=d+156|0;oa=d+152|0;pa=d+148|0;qa=d+144|0;ra=d+140|0;sa=d+136|0;ta=d+132|0;ua=d+128|0;va=d+124|0;wa=d+120|0;xa=d+116|0;ya=d+112|0;za=d+108|0;Aa=d+104|0;Ba=d+100|0;Ca=d+96|0;Da=d+92|0;Ea=d+88|0;Fa=d+84|0;Ga=d+80|0;Ha=d+76|0;Ia=d+72|0;Ja=d+68|0;Ka=d+64|0;La=d+60|0;Ma=d+56|0;Na=d+52|0;Oa=d+48|0;Pa=d+44|0;Qa=d+40|0;Ra=d+36|0;Sa=d+32|0;Ta=d+28|0;Ua=d+24|0;Va=d+20|0;Wa=d+16|0;Xa=d+12|0;Ya=d+8|0;Za=d+4|0;_a=d;$a=h+e|0;ab=b+($a<<2)|0;bb=b+($a<<1<<2)|0;cb=b+($a*3<<2)|0;$a=(h<<2)+(e*3|0)|0;h=(g*18|0)/4|0;if(!((f|e)&3)){if(f>>>0<=3){r=d;return}g=e>>>2;db=a+68|0;eb=g<<2;fb=eb+$a|0;gb=eb+$a|0;hb=eb+$a|0;ib=eb+$a|0;eb=(g*18|0)+h|0;jb=b;kb=f;lb=i;mb=ab;nb=bb;ob=cb;while(1){pb=g;qb=jb;rb=lb;sb=mb;tb=nb;ub=ob;while(1){vb=l[rb+16>>0]|0;wb=l[rb+17>>0]|0;Ke(k[db>>2]|0,l[rb>>0]|0,vb,wb,c,j,m);k[qb>>2]=k[c>>2]|k[j>>2]<<8|k[m>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+1>>0]|0,vb,wb,n,o,p);k[qb+4>>2]=k[n>>2]|k[o>>2]<<8|k[p>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+2>>0]|0,vb,wb,q,s,t);k[qb+8>>2]=k[q>>2]|k[s>>2]<<8|k[t>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+3>>0]|0,vb,wb,u,v,w);k[qb+12>>2]=k[u>>2]|k[v>>2]<<8|k[w>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+4>>0]|0,vb,wb,x,y,z);k[sb>>2]=k[x>>2]|k[y>>2]<<8|k[z>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+5>>0]|0,vb,wb,A,B,C);k[sb+4>>2]=k[A>>2]|k[B>>2]<<8|k[C>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+6>>0]|0,vb,wb,D,E,F);k[sb+8>>2]=k[D>>2]|k[E>>2]<<8|k[F>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+7>>0]|0,vb,wb,G,H,I);k[sb+12>>2]=k[G>>2]|k[H>>2]<<8|k[I>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+8>>0]|0,vb,wb,J,K,L);k[tb>>2]=k[J>>2]|k[K>>2]<<8|k[L>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+9>>0]|0,vb,wb,M,N,O);k[tb+4>>2]=k[M>>2]|k[N>>2]<<8|k[O>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+10>>0]|0,vb,wb,P,Q,R);k[tb+8>>2]=k[P>>2]|k[Q>>2]<<8|k[R>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+11>>0]|0,vb,wb,S,T,U);k[tb+12>>2]=k[S>>2]|k[T>>2]<<8|k[U>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+12>>0]|0,vb,wb,V,W,X);k[ub>>2]=k[V>>2]|k[W>>2]<<8|k[X>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+13>>0]|0,vb,wb,Y,Z,_);k[ub+4>>2]=k[Y>>2]|k[Z>>2]<<8|k[_>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+14>>0]|0,vb,wb,$,aa,ba);k[ub+8>>2]=k[$>>2]|k[aa>>2]<<8|k[ba>>2]<<16|-16777216;Ke(k[db>>2]|0,l[rb+15>>0]|0,vb,wb,ca,da,ea);k[ub+12>>2]=k[ca>>2]|k[da>>2]<<8|k[ea>>2]<<16|-16777216;pb=pb+-1|0;if(!pb)break;else{qb=qb+16|0;rb=rb+18|0;sb=sb+16|0;tb=tb+16|0;ub=ub+16|0}}kb=kb+-4|0;if(kb>>>0<=3)break;else{jb=jb+(fb<<2)|0;lb=lb+eb|0;mb=mb+(gb<<2)|0;nb=nb+(hb<<2)|0;ob=ob+(ib<<2)|0}}r=d;return}if(!f){r=d;return}ib=(e|0)==0;ob=a+68|0;a=f;f=b;b=i;i=ab;ab=bb;bb=cb;while(1){a:do if(ib){xb=f;yb=b;zb=i;Ab=ab;Bb=bb}else{cb=e;hb=f;nb=b;gb=i;mb=ab;eb=bb;while(1){lb=l[nb+16>>0]|0;fb=l[nb+17>>0]|0;switch(cb|0){case 3:{Cb=16;break}case 2:{Cb=21;break}case 1:break;default:{switch(a|0){case 3:{Cb=13;break}case 2:{Cb=14;break}case 1:break;default:{Ke(k[ob>>2]|0,l[nb+15>>0]|0,lb,fb,fa,ga,ha);k[eb+12>>2]=k[fa>>2]|k[ga>>2]<<8|k[ha>>2]<<16|-16777216;Cb=13}}if((Cb|0)==13){Cb=0;Ke(k[ob>>2]|0,l[nb+11>>0]|0,lb,fb,ia,ja,ka);k[mb+12>>2]=k[ia>>2]|k[ja>>2]<<8|k[ka>>2]<<16|-16777216;Cb=14}if((Cb|0)==14){Cb=0;Ke(k[ob>>2]|0,l[nb+7>>0]|0,lb,fb,la,ma,na);k[gb+12>>2]=k[la>>2]|k[ma>>2]<<8|k[na>>2]<<16|-16777216}Ke(k[ob>>2]|0,l[nb+3>>0]|0,lb,fb,oa,pa,qa);k[hb+12>>2]=k[oa>>2]|k[pa>>2]<<8|k[qa>>2]<<16|-16777216;Cb=16}}if((Cb|0)==16){Cb=0;switch(a|0){case 3:{Cb=18;break}case 2:{Cb=19;break}case 1:break;default:{Ke(k[ob>>2]|0,l[nb+14>>0]|0,lb,fb,ra,sa,ta);k[eb+8>>2]=k[ra>>2]|k[sa>>2]<<8|k[ta>>2]<<16|-16777216;Cb=18}}if((Cb|0)==18){Cb=0;Ke(k[ob>>2]|0,l[nb+10>>0]|0,lb,fb,ua,va,wa);k[mb+8>>2]=k[ua>>2]|k[va>>2]<<8|k[wa>>2]<<16|-16777216;Cb=19}if((Cb|0)==19){Cb=0;Ke(k[ob>>2]|0,l[nb+6>>0]|0,lb,fb,xa,ya,za);k[gb+8>>2]=k[xa>>2]|k[ya>>2]<<8|k[za>>2]<<16|-16777216}Ke(k[ob>>2]|0,l[nb+2>>0]|0,lb,fb,Aa,Ba,Ca);k[hb+8>>2]=k[Aa>>2]|k[Ba>>2]<<8|k[Ca>>2]<<16|-16777216;Cb=21}if((Cb|0)==21){Cb=0;switch(a|0){case 3:{Cb=23;break}case 2:{Cb=24;break}case 1:break;default:{Ke(k[ob>>2]|0,l[nb+13>>0]|0,lb,fb,Da,Ea,Fa);k[eb+4>>2]=k[Da>>2]|k[Ea>>2]<<8|k[Fa>>2]<<16|-16777216;Cb=23}}if((Cb|0)==23){Cb=0;Ke(k[ob>>2]|0,l[nb+9>>0]|0,lb,fb,Ga,Ha,Ia);k[mb+4>>2]=k[Ga>>2]|k[Ha>>2]<<8|k[Ia>>2]<<16|-16777216;Cb=24}if((Cb|0)==24){Cb=0;Ke(k[ob>>2]|0,l[nb+5>>0]|0,lb,fb,Ja,Ka,La);k[gb+4>>2]=k[Ja>>2]|k[Ka>>2]<<8|k[La>>2]<<16|-16777216}Ke(k[ob>>2]|0,l[nb+1>>0]|0,lb,fb,Ma,Na,Oa);k[hb+4>>2]=k[Ma>>2]|k[Na>>2]<<8|k[Oa>>2]<<16|-16777216}switch(a|0){case 3:{Cb=28;break}case 2:{Cb=29;break}case 1:break;default:{Ke(k[ob>>2]|0,l[nb+12>>0]|0,lb,fb,Pa,Qa,Ra);k[eb>>2]=k[Pa>>2]|k[Qa>>2]<<8|k[Ra>>2]<<16|-16777216;Cb=28}}if((Cb|0)==28){Cb=0;Ke(k[ob>>2]|0,l[nb+8>>0]|0,lb,fb,Sa,Ta,Ua);k[mb>>2]=k[Sa>>2]|k[Ta>>2]<<8|k[Ua>>2]<<16|-16777216;Cb=29}if((Cb|0)==29){Cb=0;Ke(k[ob>>2]|0,l[nb+4>>0]|0,lb,fb,Va,Wa,Xa);k[gb>>2]=k[Va>>2]|k[Wa>>2]<<8|k[Xa>>2]<<16|-16777216}Ke(k[ob>>2]|0,l[nb>>0]|0,lb,fb,Ya,Za,_a);k[hb>>2]=k[Ya>>2]|k[Za>>2]<<8|k[_a>>2]<<16|-16777216;if(cb>>>0<4){Db=cb;Eb=hb;Fb=nb;Gb=gb;Hb=mb;Ib=eb;break}fb=hb+16|0;lb=gb+16|0;jb=mb+16|0;kb=eb+16|0;cb=cb+-4|0;ea=nb+18|0;if(!cb){xb=fb;yb=ea;zb=lb;Ab=jb;Bb=kb;break a}else{hb=fb;nb=ea;gb=lb;mb=jb;eb=kb}}xb=Eb+(Db<<2)|0;yb=Fb+18|0;zb=Gb+(Db<<2)|0;Ab=Hb+(Db<<2)|0;Bb=Ib+(Db<<2)|0}while(0);if(a>>>0<5){Cb=35;break}a=a+-4|0;if(!a){Cb=35;break}else{f=xb+($a<<2)|0;b=yb+h|0;i=zb+($a<<2)|0;ab=Ab+($a<<2)|0;bb=Bb+($a<<2)|0}}if((Cb|0)==35){r=d;return}}function Zc(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;var j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+192|0;c=d+188|0;j=d+184|0;m=d+180|0;n=d+176|0;o=d+172|0;p=d+168|0;q=d+164|0;s=d+160|0;t=d+156|0;u=d+152|0;v=d+148|0;w=d+144|0;x=d+140|0;y=d+136|0;z=d+132|0;A=d+128|0;B=d+124|0;C=d+120|0;D=d+116|0;E=d+112|0;F=d+108|0;G=d+104|0;H=d+100|0;I=d+96|0;J=d+92|0;K=d+88|0;L=d+84|0;M=d+80|0;N=d+76|0;O=d+72|0;P=d+68|0;Q=d+64|0;R=d+60|0;S=d+56|0;T=d+52|0;U=d+48|0;V=d+44|0;W=d+40|0;X=d+36|0;Y=d+32|0;Z=d+28|0;_=d+24|0;$=d+20|0;aa=d+16|0;ba=d+12|0;ca=d+8|0;da=d+4|0;ea=d;fa=b+(h+e<<2)|0;ga=(h<<1)+e|0;h=(g*10|0)/4|0;if(!(f&1|e&3)){if(f>>>0<=1){r=d;return}g=e>>>2;ha=a+68|0;ia=g<<2;ja=ia+ga|0;ka=ia+ga|0;ia=(g*10|0)+h|0;la=b;ma=f;na=i;oa=fa;while(1){pa=g;qa=la;ra=na;sa=oa;while(1){ta=l[ra+8>>0]|0;ua=l[ra+9>>0]|0;Ke(k[ha>>2]|0,l[ra>>0]|0,ta,ua,c,j,m);k[qa>>2]=k[c>>2]|k[j>>2]<<8|k[m>>2]<<16|-16777216;Ke(k[ha>>2]|0,l[ra+1>>0]|0,ta,ua,n,o,p);k[qa+4>>2]=k[n>>2]|k[o>>2]<<8|k[p>>2]<<16|-16777216;Ke(k[ha>>2]|0,l[ra+2>>0]|0,ta,ua,q,s,t);k[qa+8>>2]=k[q>>2]|k[s>>2]<<8|k[t>>2]<<16|-16777216;Ke(k[ha>>2]|0,l[ra+3>>0]|0,ta,ua,u,v,w);k[qa+12>>2]=k[u>>2]|k[v>>2]<<8|k[w>>2]<<16|-16777216;Ke(k[ha>>2]|0,l[ra+4>>0]|0,ta,ua,x,y,z);k[sa>>2]=k[x>>2]|k[y>>2]<<8|k[z>>2]<<16|-16777216;Ke(k[ha>>2]|0,l[ra+5>>0]|0,ta,ua,A,B,C);k[sa+4>>2]=k[A>>2]|k[B>>2]<<8|k[C>>2]<<16|-16777216;Ke(k[ha>>2]|0,l[ra+6>>0]|0,ta,ua,D,E,F);k[sa+8>>2]=k[D>>2]|k[E>>2]<<8|k[F>>2]<<16|-16777216;Ke(k[ha>>2]|0,l[ra+7>>0]|0,ta,ua,G,H,I);k[sa+12>>2]=k[G>>2]|k[H>>2]<<8|k[I>>2]<<16|-16777216;pa=pa+-1|0;if(!pa)break;else{qa=qa+16|0;ra=ra+10|0;sa=sa+16|0}}ma=ma+-2|0;if(ma>>>0<=1)break;else{la=la+(ja<<2)|0;na=na+ia|0;oa=oa+(ka<<2)|0}}r=d;return}if(!f){r=d;return}ka=(e|0)==0;oa=a+68|0;a=f;f=i;i=b;b=fa;while(1){a:do if(ka){va=i;wa=f;xa=b}else{fa=(a|0)==1;ia=e;na=f;ja=i;la=b;while(1){ma=l[na+8>>0]|0;I=l[na+9>>0]|0;switch(ia|0){case 3:{ya=15;break}case 2:{ya=18;break}case 1:break;default:{if(!fa){Ke(k[oa>>2]|0,l[na+7>>0]|0,ma,I,J,K,L);k[la+12>>2]=k[J>>2]|k[K>>2]<<8|k[L>>2]<<16|-16777216}Ke(k[oa>>2]|0,l[na+3>>0]|0,ma,I,M,N,O);k[ja+12>>2]=k[M>>2]|k[N>>2]<<8|k[O>>2]<<16|-16777216;ya=15}}if((ya|0)==15){ya=0;if(!fa){Ke(k[oa>>2]|0,l[na+6>>0]|0,ma,I,P,Q,R);k[la+8>>2]=k[P>>2]|k[Q>>2]<<8|k[R>>2]<<16|-16777216}Ke(k[oa>>2]|0,l[na+2>>0]|0,ma,I,S,T,U);k[ja+8>>2]=k[S>>2]|k[T>>2]<<8|k[U>>2]<<16|-16777216;ya=18}if((ya|0)==18){ya=0;if(!fa){Ke(k[oa>>2]|0,l[na+5>>0]|0,ma,I,V,W,X);k[la+4>>2]=k[V>>2]|k[W>>2]<<8|k[X>>2]<<16|-16777216}Ke(k[oa>>2]|0,l[na+1>>0]|0,ma,I,Y,Z,_);k[ja+4>>2]=k[Y>>2]|k[Z>>2]<<8|k[_>>2]<<16|-16777216}if(!fa){Ke(k[oa>>2]|0,l[na+4>>0]|0,ma,I,$,aa,ba);k[la>>2]=k[$>>2]|k[aa>>2]<<8|k[ba>>2]<<16|-16777216}Ke(k[oa>>2]|0,l[na>>0]|0,ma,I,ca,da,ea);k[ja>>2]=k[ca>>2]|k[da>>2]<<8|k[ea>>2]<<16|-16777216;I=ia>>>0<4;ma=I?la+(ia<<2)|0:la+16|0;H=I?ja+(ia<<2)|0:ja+16|0;G=na+10|0;ia=I?0:ia+-4|0;if(!ia){va=H;wa=G;xa=ma;break a}else{na=G;ja=H;la=ma}}}while(0);if(a>>>0<3){ya=26;break}a=a+-2|0;if(!a){ya=26;break}else{f=wa+h|0;i=va+(ga<<2)|0;b=xa+(ga<<2)|0}}if((ya|0)==26){r=d;return}}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;var j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+96|0;c=d+80|0;j=d+76|0;m=d+72|0;n=d+68|0;o=d+64|0;p=d+60|0;q=d+56|0;s=d+52|0;t=d+48|0;u=d+44|0;v=d+40|0;w=d+36|0;x=d+32|0;y=d+28|0;z=d+24|0;A=d+20|0;B=d+16|0;C=d+12|0;D=d+8|0;E=d+4|0;F=d;G=e>>>2;H=(G|0)==0;I=e&3;e=(I|0)==0;J=a+68|0;a=G*6|0;K=G<<2;L=b;b=f;f=i;while(1){if(H){M=L;N=f}else{i=f+a|0;O=G;P=L;Q=f;while(1){R=l[Q+4>>0]|0;S=l[Q+5>>0]|0;Ke(k[J>>2]|0,l[Q>>0]|0,R,S,c,j,m);k[P>>2]=k[c>>2]|k[j>>2]<<8|k[m>>2]<<16|-16777216;Ke(k[J>>2]|0,l[Q+1>>0]|0,R,S,n,o,p);k[P+4>>2]=k[n>>2]|k[o>>2]<<8|k[p>>2]<<16|-16777216;Ke(k[J>>2]|0,l[Q+2>>0]|0,R,S,q,s,t);k[P+8>>2]=k[q>>2]|k[s>>2]<<8|k[t>>2]<<16|-16777216;Ke(k[J>>2]|0,l[Q+3>>0]|0,R,S,u,v,w);k[P+12>>2]=k[u>>2]|k[v>>2]<<8|k[w>>2]<<16|-16777216;O=O+-1|0;if(!O)break;else{P=P+16|0;Q=Q+6|0}}M=L+(K<<2)|0;N=i}if(e){T=M;U=N}else{Q=l[N+4>>0]|0;P=l[N+5>>0]|0;switch(I|0){case 3:{Ke(k[J>>2]|0,l[N+2>>0]|0,Q,P,x,y,z);k[M+8>>2]=k[x>>2]|k[y>>2]<<8|k[z>>2]<<16|-16777216;V=9;break}case 2:{V=9;break}case 1:{V=10;break}default:{}}if((V|0)==9){V=0;Ke(k[J>>2]|0,l[N+1>>0]|0,Q,P,A,B,C);k[M+4>>2]=k[A>>2]|k[B>>2]<<8|k[C>>2]<<16|-16777216;V=10}if((V|0)==10){V=0;Ke(k[J>>2]|0,l[N>>0]|0,Q,P,D,E,F);k[M>>2]=k[D>>2]|k[E>>2]<<8|k[F>>2]<<16|-16777216}T=M+(I<<2)|0;U=N+6|0}b=b+-1|0;if(!b)break;else{L=T+(h<<2)|0;f=U+g|0}}r=d;return}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;var j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+112|0;c=d+104|0;j=d+100|0;m=d+96|0;n=d+92|0;o=d+88|0;p=d+84|0;q=d+80|0;s=d+76|0;t=d+72|0;u=d+68|0;v=d+64|0;w=d+60|0;x=d+56|0;y=d+52|0;z=d+48|0;A=d+44|0;B=d+40|0;C=d+36|0;D=d+32|0;E=d+28|0;F=d+24|0;G=d+20|0;H=d+16|0;I=d+12|0;J=d+8|0;K=d+4|0;L=d;M=(h<<1)+e|0;N=((g|0)/2|0)*6|0;if(f>>>0>1){g=e>>>0>1;O=a+68|0;P=e+-2|0;Q=P>>>1;R=Q<<1;S=P-R|0;P=(Q*6|0)+6|0;Q=R+2|0;R=b;T=f;U=i;V=b+(h+e<<2)|0;while(1){if(g){h=V+(Q<<2)|0;W=e;X=R;Y=U;Z=V;while(1){_=l[Y+4>>0]|0;$=l[Y+5>>0]|0;Ke(k[O>>2]|0,l[Y>>0]|0,_,$,c,j,m);k[X>>2]=k[c>>2]|k[j>>2]<<8|k[m>>2]<<16|-16777216;Ke(k[O>>2]|0,l[Y+1>>0]|0,_,$,n,o,p);k[X+4>>2]=k[n>>2]|k[o>>2]<<8|k[p>>2]<<16|-16777216;Ke(k[O>>2]|0,l[Y+2>>0]|0,_,$,q,s,t);k[Z>>2]=k[q>>2]|k[s>>2]<<8|k[t>>2]<<16|-16777216;Ke(k[O>>2]|0,l[Y+3>>0]|0,_,$,u,v,w);k[Z+4>>2]=k[u>>2]|k[v>>2]<<8|k[w>>2]<<16|-16777216;W=W+-2|0;if(W>>>0<=1)break;else{X=X+8|0;Y=Y+6|0;Z=Z+8|0}}aa=S;ba=R+(Q<<2)|0;ca=U+P|0;da=h}else{aa=e;ba=R;ca=U;da=V}if((aa|0)==1){Z=l[ca+4>>0]|0;Y=l[ca+5>>0]|0;Ke(k[O>>2]|0,l[ca>>0]|0,Z,Y,x,y,z);k[ba>>2]=k[x>>2]|k[y>>2]<<8|k[z>>2]<<16|-16777216;Ke(k[O>>2]|0,l[ca+2>>0]|0,Z,Y,A,B,C);k[da>>2]=k[A>>2]|k[B>>2]<<8|k[C>>2]<<16|-16777216;ea=ba+4|0;fa=ca+6|0;ga=da+4|0}else{ea=ba;fa=ca;ga=da}Y=ea+(M<<2)|0;Z=fa+N|0;T=T+-2|0;if(T>>>0<=1){ha=Y;ia=Z;break}else{R=Y;U=Z;V=ga+(M<<2)|0}}ja=ha;ka=f&1;la=ia}else{ja=b;ka=f;la=i}if((ka|0)!=1){r=d;return}if(e>>>0>1){ka=a+68|0;i=e+-2|0;f=i>>>1;b=f<<1;ia=(f*6|0)+6|0;f=b+2|0;ha=e;M=ja;ga=la;while(1){V=l[ga+4>>0]|0;U=l[ga+5>>0]|0;Ke(k[ka>>2]|0,l[ga>>0]|0,V,U,D,E,F);k[M>>2]=k[D>>2]|k[E>>2]<<8|k[F>>2]<<16|-16777216;Ke(k[ka>>2]|0,l[ga+1>>0]|0,V,U,G,H,I);k[M+4>>2]=k[G>>2]|k[H>>2]<<8|k[I>>2]<<16|-16777216;ha=ha+-2|0;if(ha>>>0<=1)break;else{M=M+8|0;ga=ga+6|0}}ma=i-b|0;na=ja+(f<<2)|0;oa=la+ia|0}else{ma=e;na=ja;oa=la}if((ma|0)!=1){r=d;return}Ke(k[a+68>>2]|0,l[oa>>0]|0,l[oa+4>>0]|0,l[oa+5>>0]|0,J,K,L);k[na>>2]=k[J>>2]|k[K>>2]<<8|k[L>>2]<<16|-16777216;r=d;return}function ad(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;var j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+48|0;c=d+32|0;j=d+28|0;m=d+24|0;n=d+20|0;o=d+16|0;p=d+12|0;q=d+8|0;s=d+4|0;t=d;u=g<<1;g=e>>>1;v=(g|0)==0;w=(e&1|0)==0;e=a+68|0;a=g<<2;x=g<<1;y=b;b=f;f=i;while(1){if(v){z=y;A=f}else{i=f+a|0;B=g;C=f;D=y;while(1){E=l[C+2>>0]|0;F=l[C+3>>0]|0;Ke(k[e>>2]|0,l[C>>0]|0,E,F,c,j,m);k[D>>2]=k[c>>2]|k[j>>2]<<8|k[m>>2]<<16|-16777216;Ke(k[e>>2]|0,l[C+1>>0]|0,E,F,n,o,p);k[D+4>>2]=k[n>>2]|k[o>>2]<<8|k[p>>2]<<16|-16777216;B=B+-1|0;if(!B)break;else{C=C+4|0;D=D+8|0}}z=y+(x<<2)|0;A=i}if(w){G=z;H=A}else{Ke(k[e>>2]|0,l[A>>0]|0,l[A+2>>0]|0,l[A+3>>0]|0,q,s,t);k[z>>2]=k[q>>2]|k[s>>2]<<8|k[t>>2]<<16|-16777216;G=z+4|0;H=A+4|0}b=b+-1|0;if(!b)break;else{y=G+(h<<2)|0;f=H+u|0}}r=d;return}function bd(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;var j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+48|0;c=d+32|0;j=d+28|0;m=d+24|0;n=d+20|0;o=d+16|0;p=d+12|0;q=d+8|0;s=d+4|0;t=d;if(f>>>0>1){u=h+e|0;v=(g|0)/2|0;g=a+68|0;w=e+1+(h<<1)|0;x=e+-1|0;y=e<<2;z=f+-2|0;A=z>>>1;B=A<<1;C=v<<2;D=(ha(A,C+y|0)|0)+C+y|0;C=(ha(A,u)|0)+h+e<<1;h=x+w|0;A=x+w|0;w=y+(v<<2)|0;v=b;y=f;x=i;E=b+(u<<2)|0;while(1){u=e;F=v;G=x;H=E;while(1){I=l[G+2>>0]|0;J=l[G+3>>0]|0;Ke(k[g>>2]|0,l[G>>0]|0,I,J,c,j,m);k[F>>2]=k[c>>2]|k[j>>2]<<8|k[m>>2]<<16|-16777216;Ke(k[g>>2]|0,l[G+1>>0]|0,I,J,n,o,p);k[H>>2]=k[n>>2]|k[o>>2]<<8|k[p>>2]<<16|-16777216;u=u+-1|0;if(!u)break;else{F=F+4|0;G=G+4|0;H=H+4|0}}y=y+-2|0;if(y>>>0<=1)break;else{v=v+(h<<2)|0;x=x+w|0;E=E+(A<<2)|0}}K=b+(C<<2)|0;L=z-B|0;M=i+D|0}else{K=b;L=f;M=i}if((L|0)!=1){r=d;return}L=a+68|0;a=e;e=K;K=M;while(1){Ke(k[L>>2]|0,l[K>>0]|0,l[K+2>>0]|0,l[K+3>>0]|0,q,s,t);k[e>>2]=k[q>>2]|k[s>>2]<<8|k[t>>2]<<16|-16777216;a=a+-1|0;if(!a)break;else{e=e+4|0;K=K+4|0}}r=d;return}function cd(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;var j=0,m=0,n=0,o=0,p=0;d=r;r=r+16|0;c=d+8|0;j=d+4|0;m=d;n=a+68|0;a=e+h|0;h=(e+g|0)*3|0;g=b;b=i;i=f;while(1){f=e;o=g;p=b;while(1){Ke(k[n>>2]|0,l[p>>0]|0,l[p+1>>0]|0,l[p+2>>0]|0,c,j,m);k[o>>2]=k[c>>2]|k[j>>2]<<8|k[m>>2]<<16|-16777216;f=f+-1|0;if(!f)break;else{o=o+4|0;p=p+3|0}}i=i+-1|0;if(!i)break;else{g=g+(a<<2)|0;b=b+h|0}}r=d;return}function dd(a,b,c,d,e,f,g,h,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;j=j|0;var m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;d=r;r=r+32|0;c=d+20|0;m=d+16|0;n=d+12|0;p=d+8|0;q=d+4|0;s=d;t=g*3|0;if(!f){r=d;return}g=(e|0)==0;u=a+72|0;a=e*3|0;v=j;j=b;b=f;while(1){b=b+-1|0;if(g){w=v;x=j}else{f=v+a|0;y=e;z=j;A=v;while(1){y=y+-1|0;He(k[u>>2]|0,l[A>>0]|0,i[A+1>>0]|0,i[A+2>>0]|0,c,m,n);Ie(k[u>>2]|0,+o[c>>2],+o[m>>2],+o[n>>2],p,q,s);k[z>>2]=k[p>>2]|k[q>>2]<<8|k[s>>2]<<16|-16777216;if(!y)break;else{z=z+4|0;A=A+3|0}}w=f;x=j+(e<<2)|0}if(!b)break;else{v=w+t|0;j=x+(h<<2)|0}}r=d;return}function ed(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,l=0,n=0,o=0,p=0,q=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;e=r;r=r+48|0;f=e+24|0;g=e+16|0;h=e+8|0;i=e;l=e+32|0;n=e+28|0;o=k[a>>2]|0;p=k[a+52>>2]|0;q=k[a+12>>2]|0;s=ge(o)|0;if((s|0)!=0?(t=(q|0)!=0,q=ha(t?4:3,s)|0,(q|0)!=0):0){u=me(q)|0;if(!u){v=k[o+628>>2]|0;w=qd(o)|0;k[h>>2]=136922;vc(v,w,154321,h);x=0;r=e;return x|0}pe(u,0,q);q=u+s|0;h=u+(s<<1)|0;w=t?u+(s*3|0)|0:0;k[g>>2]=l;Pb(o,322,g)|0;k[f>>2]=n;Pb(o,323,f)|0;a:do switch(m[a+28>>1]|0){case 5:case 1:{switch(j[a+30>>1]|0){case 6:case 2:{y=2;z=20;break a;break}case 7:case 3:{A=3;z=19;break a;break}case 8:case 4:{A=1;z=19;break a;break}default:{y=0;z=20;break a}}break}case 6:case 2:{switch(j[a+30>>1]|0){case 5:case 1:{y=2;z=20;break a;break}case 7:case 3:{A=1;z=19;break a;break}case 8:case 4:{A=3;z=19;break a;break}default:{y=0;z=20;break a}}break}case 7:case 3:{switch(j[a+30>>1]|0){case 5:case 1:{A=3;z=19;break a;break}case 8:case 4:{y=2;z=20;break a;break}case 6:case 2:{A=1;z=19;break a;break}default:{y=0;z=20;break a}}break}case 8:case 4:{switch(j[a+30>>1]|0){case 5:case 1:{A=1;z=19;break a;break}case 7:case 3:{y=2;z=20;break a;break}case 6:case 2:{A=3;z=19;break a;break}default:{y=0;z=20;break a}}break}default:{y=0;z=20}}while(0);if((z|0)==19){f=k[l>>2]|0;B=A;C=1;D=f;E=0-(f+c)|0;F=d+-1|0}else if((z|0)==20){z=k[l>>2]|0;B=y;C=0;D=z;E=c-z|0;F=0}switch(m[a+32>>1]|0){case 3:case 1:case 0:{G=1;H=u;I=u;break}default:{G=3;H=q;I=h}}h=a+88|0;q=((k[h>>2]|0)>>>0)%(D>>>0)|0;z=D-q|0;D=q+E|0;y=(d|0)==0;if(y)J=1;else{f=a+84|0;A=a+4|0;g=(c|0)==0;s=(G|0)==1;v=G&65535;G=a+26|0;K=1;L=0;M=F;while(1){F=k[n>>2]|0;N=k[f>>2]|0;O=F-(((N+L|0)>>>0)%(F>>>0)|0)|0;F=(O+L|0)>>>0>d>>>0?d-L|0:O;b:do if(g)P=K;else{O=ha(M,c)|0;Q=N;R=k[h>>2]|0;S=q;T=D;U=z;V=0;while(1){if((yd(o,u,R,Q+L|0,0,0)|0)==-1?(k[A>>2]|0)!=0:0){P=0;break b}if(!s){if((yd(o,H,R,(k[f>>2]|0)+L|0,0,1)|0)==-1?(k[A>>2]|0)!=0:0){P=0;break b}if((yd(o,I,R,(k[f>>2]|0)+L|0,0,2)|0)==-1?(k[A>>2]|0)!=0:0){P=0;break b}}if((t?(yd(o,w,R,(k[f>>2]|0)+L|0,0,v)|0)==-1:0)?(k[A>>2]|0)!=0:0){P=0;break b}W=(((k[f>>2]|0)+L|0)>>>0)%((k[n>>2]|0)>>>0)|0;X=ha(de(o)|0,W)|0;W=(ha(m[G>>1]|0,S)|0)+X|0;if((V+U|0)>>>0>c>>>0){X=c-V|0;Y=(k[l>>2]|0)-X|0;Z=Y;_=Y+E|0;$=X}else{Z=S;_=T;$=U}tb[p&15](a,b+(V+O<<2)|0,V,M,$,F,Z,_,u+W|0,H+W|0,I+W|0,t?w+W|0:0);W=$+V|0;if(W>>>0>=c>>>0){P=K;break b}Q=k[f>>2]|0;R=$+R|0;S=0;T=E;U=k[l>>2]|0;V=W}}while(0);L=F+L|0;if(L>>>0>=d>>>0){J=P;break}else{K=P;M=(C?0-F|0:F)+M|0}}}if(!((B&2|0)==0|y)){y=c+-1|0;B=0;do{M=ha(B,c)|0;C=y+M|0;if((M|0)<(C|0)){P=b+(M<<2)|0;M=b+(C<<2)|0;do{C=k[P>>2]|0;k[P>>2]=k[M>>2];k[M>>2]=C;P=P+4|0;M=M+-4|0}while(P>>>0<M>>>0)}B=B+1|0}while((B|0)!=(d|0))}ne(u);x=J;r=e;return x|0}J=k[o+628>>2]|0;u=qd(o)|0;k[i>>2]=136947;vc(J,u,139955,i);x=0;r=e;return x|0}function fd(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,l=0,n=0,o=0,p=0,q=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;e=r;r=r+32|0;f=e+16|0;g=e+8|0;h=e;i=e+20|0;l=k[a>>2]|0;n=k[a+52>>2]|0;o=k[a+16>>2]|0;p=k[a+12>>2]|0;q=Nd(l)|0;if((q|0)!=0?(s=(p|0)!=0,p=ha(s?4:3,q)|0,(p|0)!=0):0){t=me(p)|0;if(!t){u=k[l+628>>2]|0;vc(u,qd(l)|0,136922,g);v=0;r=e;return v|0}pe(t,0,p);p=t+q|0;g=t+(q<<1)|0;u=s?t+(q*3|0)|0:0;a:do switch(m[a+28>>1]|0){case 5:case 1:{switch(j[a+30>>1]|0){case 6:case 2:{w=2;x=0;y=0;z=0;break a;break}case 7:case 3:{A=3;B=19;break a;break}case 8:case 4:{A=1;B=19;break a;break}default:{w=0;x=0;y=0;z=0;break a}}break}case 6:case 2:{switch(j[a+30>>1]|0){case 5:case 1:{w=2;x=0;y=0;z=0;break a;break}case 7:case 3:{A=1;B=19;break a;break}case 8:case 4:{A=3;B=19;break a;break}default:{w=0;x=0;y=0;z=0;break a}}break}case 7:case 3:{switch(j[a+30>>1]|0){case 5:case 1:{A=3;B=19;break a;break}case 8:case 4:{w=2;x=0;y=0;z=0;break a;break}case 6:case 2:{A=1;B=19;break a;break}default:{w=0;x=0;y=0;z=0;break a}}break}case 8:case 4:{switch(j[a+30>>1]|0){case 5:case 1:{A=1;B=19;break a;break}case 7:case 3:{w=2;x=0;y=0;z=0;break a;break}case 6:case 2:{A=3;B=19;break a;break}default:{w=0;x=0;y=0;z=0;break a}}break}default:{w=0;x=0;y=0;z=0}}while(0);if((B|0)==19){w=A;x=1;y=0-(c<<1)|0;z=d+-1|0}switch(m[a+32>>1]|0){case 3:case 1:case 0:{C=1;D=t;E=t;break}default:{C=3;D=p;E=g}}k[f>>2]=i;Ge(l,278,f)|0;f=Pd(l)|0;g=o>>>0>c>>>0?o-c|0:0;o=a+4|0;p=(d|0)==0;b:do if(p)F=1;else{A=a+84|0;B=(C|0)==1;q=C&65535;G=a+88|0;H=a+26|0;I=0;J=z;while(1){K=k[i>>2]|0;L=(k[A>>2]|0)+I|0;M=K-((L>>>0)%(K>>>0)|0)|0;K=(M+I|0)>>>0>d>>>0?d-I|0:M;M=Id(l,L,0)|0;if((vd(l,M,t,ha(((((k[A>>2]|0)+I|0)>>>0)%((k[i>>2]|0)>>>0)|0)+K|0,f)|0)|0)==-1?(k[o>>2]|0)!=0:0){F=0;break b}if(!B){M=Id(l,L,1)|0;if((vd(l,M,D,ha(((((k[A>>2]|0)+I|0)>>>0)%((k[i>>2]|0)>>>0)|0)+K|0,f)|0)|0)==-1?(k[o>>2]|0)!=0:0){F=0;break b}M=Id(l,L,2)|0;if((vd(l,M,E,ha(((((k[A>>2]|0)+I|0)>>>0)%((k[i>>2]|0)>>>0)|0)+K|0,f)|0)|0)==-1?(k[o>>2]|0)!=0:0){F=0;break b}}if((s?(M=Id(l,L,q)|0,(vd(l,M,u,ha(((((k[A>>2]|0)+I|0)>>>0)%((k[i>>2]|0)>>>0)|0)+K|0,f)|0)|0)==-1):0)?(k[o>>2]|0)!=0:0){F=0;break b}M=ha((((k[A>>2]|0)+I|0)>>>0)%((k[i>>2]|0)>>>0)|0,f)|0;L=(ha(m[H>>1]|0,k[G>>2]|0)|0)+M|0;M=b+((ha(J,c)|0)<<2)|0;tb[n&15](a,M,0,J,c,K,g,y,t+L|0,D+L|0,E+L|0,s?u+L|0:0);I=K+I|0;if(I>>>0>=d>>>0){F=1;break}else J=(x?0-K|0:K)+J|0}}while(0);if(!((w&2|0)==0|p)){p=c+-1|0;w=0;do{x=ha(w,c)|0;u=p+x|0;if((x|0)<(u|0)){s=b+(x<<2)|0;x=b+(u<<2)|0;do{u=k[s>>2]|0;k[s>>2]=k[x>>2];k[x>>2]=u;s=s+4|0;x=x+-4|0}while(s>>>0<x>>>0)}w=w+1|0}while((w|0)!=(d|0))}ne(t);v=F;r=e;return v|0}F=k[l+628>>2]|0;t=qd(l)|0;k[h>>2]=136906;vc(F,t,139955,h);v=0;r=e;return v|0}function gd(a,b,c,d,e,f,g,h,i,j,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;m=m|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,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;if(!f)return;d=e>>>0>7;c=e+-8|0;a=c&-8;o=c-a|0;c=a+8|0;a=j;j=m;m=i;i=b;b=n;n=f;while(1){n=n+-1|0;if(d){f=b+c|0;p=a+c|0;q=a;r=m;s=j;t=i;u=b;v=e;while(1){k[t>>2]=(l[q>>0]|0)<<8|(l[r>>0]|0)|(l[s>>0]|0)<<16|(l[u>>0]|0)<<24;k[t+4>>2]=(l[q+1>>0]|0)<<8|(l[r+1>>0]|0)|(l[s+1>>0]|0)<<16|(l[u+1>>0]|0)<<24;k[t+8>>2]=(l[q+2>>0]|0)<<8|(l[r+2>>0]|0)|(l[s+2>>0]|0)<<16|(l[u+2>>0]|0)<<24;k[t+12>>2]=(l[q+3>>0]|0)<<8|(l[r+3>>0]|0)|(l[s+3>>0]|0)<<16|(l[u+3>>0]|0)<<24;k[t+16>>2]=(l[q+4>>0]|0)<<8|(l[r+4>>0]|0)|(l[s+4>>0]|0)<<16|(l[u+4>>0]|0)<<24;k[t+20>>2]=(l[q+5>>0]|0)<<8|(l[r+5>>0]|0)|(l[s+5>>0]|0)<<16|(l[u+5>>0]|0)<<24;k[t+24>>2]=(l[q+6>>0]|0)<<8|(l[r+6>>0]|0)|(l[s+6>>0]|0)<<16|(l[u+6>>0]|0)<<24;k[t+28>>2]=(l[q+7>>0]|0)<<8|(l[r+7>>0]|0)|(l[s+7>>0]|0)<<16|(l[u+7>>0]|0)<<24;v=v+-8|0;if(v>>>0<=7)break;else{q=q+8|0;r=r+8|0;s=s+8|0;t=t+32|0;u=u+8|0}}w=f;x=p;y=j+c|0;z=m+c|0;A=i+(c<<2)|0;B=o}else{w=b;x=a;y=j;z=m;A=i;B=e}switch(B|0){case 1:{C=w;D=x;E=z;F=A;G=y;H=14;break}case 7:{k[A>>2]=(l[x>>0]|0)<<8|(l[z>>0]|0)|(l[y>>0]|0)<<16|(l[w>>0]|0)<<24;I=w+1|0;J=x+1|0;K=z+1|0;L=y+1|0;M=A+4|0;H=9;break}case 6:{I=w;J=x;K=z;L=y;M=A;H=9;break}case 5:{N=w;O=x;P=z;Q=A;R=y;H=10;break}case 4:{S=w;T=x;U=z;V=A;W=y;H=11;break}case 3:{X=w;Y=x;Z=z;_=A;$=y;H=12;break}case 2:{aa=w;ba=x;ca=z;da=A;ea=y;H=13;break}default:{fa=w;ga=x;ha=z;ia=A;ja=y}}if((H|0)==9){H=0;k[M>>2]=(l[J>>0]|0)<<8|(l[K>>0]|0)|(l[L>>0]|0)<<16|(l[I>>0]|0)<<24;N=I+1|0;O=J+1|0;P=K+1|0;Q=M+4|0;R=L+1|0;H=10}if((H|0)==10){H=0;k[Q>>2]=(l[O>>0]|0)<<8|(l[P>>0]|0)|(l[R>>0]|0)<<16|(l[N>>0]|0)<<24;S=N+1|0;T=O+1|0;U=P+1|0;V=Q+4|0;W=R+1|0;H=11}if((H|0)==11){H=0;k[V>>2]=(l[T>>0]|0)<<8|(l[U>>0]|0)|(l[W>>0]|0)<<16|(l[S>>0]|0)<<24;X=S+1|0;Y=T+1|0;Z=U+1|0;_=V+4|0;$=W+1|0;H=12}if((H|0)==12){H=0;k[_>>2]=(l[Y>>0]|0)<<8|(l[Z>>0]|0)|(l[$>>0]|0)<<16|(l[X>>0]|0)<<24;aa=X+1|0;ba=Y+1|0;ca=Z+1|0;da=_+4|0;ea=$+1|0;H=13}if((H|0)==13){H=0;k[da>>2]=(l[ba>>0]|0)<<8|(l[ca>>0]|0)|(l[ea>>0]|0)<<16|(l[aa>>0]|0)<<24;C=aa+1|0;D=ba+1|0;E=ca+1|0;F=da+4|0;G=ea+1|0;H=14}if((H|0)==14){H=0;k[F>>2]=(l[D>>0]|0)<<8|(l[E>>0]|0)|(l[G>>0]|0)<<16|(l[C>>0]|0)<<24;fa=C+1|0;ga=D+1|0;ha=E+1|0;ia=F+4|0;ja=G+1|0}if(!n)break;else{a=ga+g|0;j=ja+g|0;m=ha+g|0;i=ia+(h<<2)|0;b=fa+g|0}}return}function hd(a,b,c,d,e,f,g,h,i,j,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;m=m|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;if(!f)return;d=(e|0)==0;c=a+76|0;a=b;b=i;i=j;j=n;n=m;m=f;while(1){m=m+-1|0;if(d){o=a;p=n;q=b;r=i;s=j}else{f=n+e|0;t=b+e|0;u=k[c>>2]|0;v=e;w=n;x=a;y=b;z=i;A=j;while(1){v=v+-1|0;B=l[A>>0]|0;C=B<<8;k[x>>2]=l[u+(l[y>>0]|0|C)>>0]|0|B<<24|(l[u+(l[z>>0]|0|C)>>0]|0)<<8|(l[u+(l[w>>0]|0|C)>>0]|0)<<16;if(!v)break;else{w=w+1|0;x=x+4|0;y=y+1|0;z=z+1|0;A=A+1|0}}o=a+(e<<2)|0;p=f;q=t;r=i+e|0;s=j+e|0}if(!m)break;else{a=o+(h<<2)|0;b=q+g|0;i=r+g|0;j=s+g|0;n=p+g|0}}return}function id(a,b,c,d,e,f,g,h,i,j,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;m=m|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,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;if(!f)return;n=e>>>0>7;d=e+-8|0;c=d&-8;a=d-c|0;d=c+8|0;c=j;j=m;m=i;i=b;b=f;while(1){b=b+-1|0;if(n){f=i+(d<<2)|0;o=c+d|0;p=c;q=m;r=j;s=i;t=e;while(1){k[s>>2]=l[q>>0]|0|(l[p>>0]|0)<<8|(l[r>>0]|0)<<16|-16777216;k[s+4>>2]=l[q+1>>0]|0|(l[p+1>>0]|0)<<8|(l[r+1>>0]|0)<<16|-16777216;k[s+8>>2]=l[q+2>>0]|0|(l[p+2>>0]|0)<<8|(l[r+2>>0]|0)<<16|-16777216;k[s+12>>2]=l[q+3>>0]|0|(l[p+3>>0]|0)<<8|(l[r+3>>0]|0)<<16|-16777216;k[s+16>>2]=l[q+4>>0]|0|(l[p+4>>0]|0)<<8|(l[r+4>>0]|0)<<16|-16777216;k[s+20>>2]=l[q+5>>0]|0|(l[p+5>>0]|0)<<8|(l[r+5>>0]|0)<<16|-16777216;k[s+24>>2]=l[q+6>>0]|0|(l[p+6>>0]|0)<<8|(l[r+6>>0]|0)<<16|-16777216;k[s+28>>2]=l[q+7>>0]|0|(l[p+7>>0]|0)<<8|(l[r+7>>0]|0)<<16|-16777216;t=t+-8|0;if(t>>>0<=7)break;else{p=p+8|0;q=q+8|0;r=r+8|0;s=s+32|0}}u=f;v=o;w=j+d|0;x=m+d|0;y=a}else{u=i;v=c;w=j;x=m;y=e}switch(y|0){case 1:{z=u;A=v;B=x;C=w;D=14;break}case 7:{k[u>>2]=l[x>>0]|0|(l[v>>0]|0)<<8|(l[w>>0]|0)<<16|-16777216;E=u+4|0;F=v+1|0;G=x+1|0;H=w+1|0;D=9;break}case 6:{E=u;F=v;G=x;H=w;D=9;break}case 5:{I=u;J=v;K=x;L=w;D=10;break}case 4:{M=u;N=v;O=x;P=w;D=11;break}case 3:{Q=u;R=v;S=x;T=w;D=12;break}case 2:{U=u;V=v;W=x;X=w;D=13;break}default:{Y=u;Z=v;_=x;$=w}}if((D|0)==9){D=0;k[E>>2]=l[G>>0]|0|(l[F>>0]|0)<<8|(l[H>>0]|0)<<16|-16777216;I=E+4|0;J=F+1|0;K=G+1|0;L=H+1|0;D=10}if((D|0)==10){D=0;k[I>>2]=l[K>>0]|0|(l[J>>0]|0)<<8|(l[L>>0]|0)<<16|-16777216;M=I+4|0;N=J+1|0;O=K+1|0;P=L+1|0;D=11}if((D|0)==11){D=0;k[M>>2]=l[O>>0]|0|(l[N>>0]|0)<<8|(l[P>>0]|0)<<16|-16777216;Q=M+4|0;R=N+1|0;S=O+1|0;T=P+1|0;D=12}if((D|0)==12){D=0;k[Q>>2]=l[S>>0]|0|(l[R>>0]|0)<<8|(l[T>>0]|0)<<16|-16777216;U=Q+4|0;V=R+1|0;W=S+1|0;X=T+1|0;D=13}if((D|0)==13){D=0;k[U>>2]=l[W>>0]|0|(l[V>>0]|0)<<8|(l[X>>0]|0)<<16|-16777216;z=U+4|0;A=V+1|0;B=W+1|0;C=X+1|0;D=14}if((D|0)==14){D=0;k[z>>2]=l[B>>0]|0|(l[A>>0]|0)<<8|(l[C>>0]|0)<<16|-16777216;Y=z+4|0;Z=A+1|0;_=B+1|0;$=C+1|0}if(!b)break;else{c=Z+g|0;j=$+g|0;m=_+g|0;i=Y+(h<<2)|0}}return}function jd(a,b,c,d,e,f,g,h,i,j,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;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;if(!f)return;d=(e|0)==0;c=a+80|0;a=b;b=f;f=o;o=n;n=j;j=i;while(1){b=b+-1|0;if(d){p=a;q=f;r=o;s=n;t=j}else{i=f+(e<<1)|0;u=n+(e<<1)|0;v=k[c>>2]|0;w=0;x=a;y=f;z=o;A=n;B=j;while(1){k[x>>2]=(l[v+(m[A>>1]|0)>>0]|0)<<8|(l[v+(m[B>>1]|0)>>0]|0)|(l[v+(m[z>>1]|0)>>0]|0)<<16|(l[v+(m[y>>1]|0)>>0]|0)<<24;w=w+1|0;if((w|0)==(e|0))break;else{x=x+4|0;y=y+2|0;z=z+2|0;A=A+2|0;B=B+2|0}}p=a+(e<<2)|0;q=i;r=o+(e<<1)|0;s=u;t=j+(e<<1)|0}if(!b)break;else{a=p+(h<<2)|0;f=q+(g<<1)|0;o=r+(g<<1)|0;n=s+(g<<1)|0;j=t+(g<<1)|0}}return}function kd(a,b,c,d,e,f,g,h,i,j,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;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;if(!f)return;d=(e|0)==0;c=a+80|0;p=a+76|0;a=b;b=f;f=o;o=n;n=j;j=i;while(1){b=b+-1|0;if(d){q=a;r=f;s=o;t=n;u=j}else{i=o+(e<<1)|0;v=j+(e<<1)|0;w=k[c>>2]|0;x=k[p>>2]|0;y=e;z=a;A=f;B=o;C=n;D=j;while(1){y=y+-1|0;E=l[w+(m[A>>1]|0)>>0]|0;F=E<<8;k[z>>2]=l[x+(l[w+(m[D>>1]|0)>>0]|0|F)>>0]|0|E<<24|(l[x+(l[w+(m[C>>1]|0)>>0]|0|F)>>0]|0)<<8|(l[x+(l[w+(m[B>>1]|0)>>0]|0|F)>>0]|0)<<16;if(!y)break;else{z=z+4|0;A=A+2|0;B=B+2|0;C=C+2|0;D=D+2|0}}q=a+(e<<2)|0;r=f+(e<<1)|0;s=i;t=n+(e<<1)|0;u=v}if(!b)break;else{a=q+(h<<2)|0;f=r+(g<<1)|0;o=s+(g<<1)|0;n=t+(g<<1)|0;j=u+(g<<1)|0}}return}function ld(a,b,c,d,e,f,g,h,i,j,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;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;if(!f)return;o=(e|0)==0;d=a+80|0;a=b;b=f;f=n;n=j;j=i;while(1){b=b+-1|0;if(o){p=a;q=f;r=n;s=j}else{i=a+(e<<2)|0;c=n+(e<<1)|0;t=k[d>>2]|0;u=0;v=a;w=f;x=n;y=j;while(1){k[v>>2]=l[t+(m[y>>1]|0)>>0]|0|(l[t+(m[x>>1]|0)>>0]|0)<<8|(l[t+(m[w>>1]|0)>>0]|0)<<16|-16777216;u=u+1|0;if((u|0)==(e|0))break;else{v=v+4|0;w=w+2|0;x=x+2|0;y=y+2|0}}p=i;q=f+(e<<1)|0;r=c;s=j+(e<<1)|0}if(!b)break;else{a=p+(h<<2)|0;f=q+(g<<1)|0;n=r+(g<<1)|0;j=s+(g<<1)|0}}return}function md(a,b,c,d,e,f,g,h,i,j,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;m=m|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;if(!f)return;d=(e|0)==0;c=b;b=i;i=n;n=m;m=j;j=f;while(1){j=j+-1|0;if(d){o=c;p=m;q=b;r=i;s=n}else{f=n+e|0;a=b+e|0;t=e;u=m;v=c;w=b;x=i;y=n;while(1){t=t+-1|0;z=(l[x>>0]|0)^255;A=((ha((l[w>>0]|0)^255,z)|0)>>>0)/255|0;B=((ha((l[u>>0]|0)^255,z)|0)>>>0)/255|0;C=A|B<<8|(((ha((l[y>>0]|0)^255,z)|0)>>>0)/255|0)<<16|-16777216;k[v>>2]=C;if(!t)break;else{u=u+1|0;v=v+4|0;w=w+1|0;x=x+1|0;y=y+1|0}}o=c+(e<<2)|0;p=m+e|0;q=a;r=i+e|0;s=f}if(!j)break;else{c=o+(h<<2)|0;b=q+g|0;i=r+g|0;n=s+g|0;m=p+g|0}}return}function nd(a,b,c,d,e,f,g,h,i,j,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;m=m|0;n=n|0;var o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;n=r;r=r+16|0;d=n+8|0;c=n+4|0;o=n;if(!f){r=n;return}p=a+68|0;a=e+g|0;q=e+g|0;s=e+g|0;g=e+h|0;h=m;m=b;b=j;j=i;i=f;while(1){f=e;t=m;u=h;v=b;w=j;while(1){Ke(k[p>>2]|0,l[w>>0]|0,l[v>>0]|0,l[u>>0]|0,d,c,o);k[t>>2]=k[d>>2]|k[c>>2]<<8|k[o>>2]<<16|-16777216;f=f+-1|0;if(!f)break;else{t=t+4|0;u=u+1|0;v=v+1|0;w=w+1|0}}i=i+-1|0;if(!i)break;else{h=h+s|0;m=m+(g<<2)|0;b=b+q|0;j=j+a|0}}r=n;return}function od(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+16|0;d=c;e=i[a>>0]|0;switch(e<<24>>24|0){case 114:{f=(i[a+1>>0]|0)==43?2:0;r=c;return f|0}case 97:case 119:{r=c;return (e<<24>>24==119?578:66)|0}default:{k[d>>2]=a;vc(0,b,137216,d);f=-1;r=c;return f|0}}return 0}function pd(a,b,c,d,e,f,g,h,l,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;l=l|0;n=n|0;var o=0,p=0,q=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;o=r;r=r+96|0;p=o+80|0;q=o+72|0;s=o+64|0;t=o+56|0;u=o+48|0;v=o+40|0;w=o+32|0;x=o+24|0;y=o+16|0;z=o+8|0;A=o;B=i[b>>0]|0;switch(B<<24>>24|0){case 114:{C=(i[b+1>>0]|0)==43?2:0;break}case 97:case 119:{C=B<<24>>24==119?578:66;break}default:{k[z>>2]=b;vc(0,137231,137216,z);D=0;r=o;return D|0}}z=me((Qq(a)|0)+697|0)|0;if(!z){k[y>>2]=a;vc(c,137231,137246,y);D=0;r=o;return D|0}pe(z,0,696);y=z+696|0;k[z>>2]=y;Pq(y,a)|0;y=z+8|0;k[y>>2]=C&2;j[z+448>>1]=-1;B=z+456|0;k[B>>2]=0;k[B+4>>2]=0;k[z+452>>2]=-1;k[z+444>>2]=-1;B=z+628|0;k[B>>2]=c;if(!((d|0)!=0&(e|0)!=0&(f|0)!=0&(g|0)!=0&(h|0)!=0)){vc(c,137231,137281,x);D=0;r=o;return D|0}x=z+632|0;k[x>>2]=d;d=z+636|0;k[d>>2]=e;e=z+640|0;k[e>>2]=f;k[z+644>>2]=g;k[z+648>>2]=h;h=z+620|0;k[h>>2]=(l|0)==0?7:l;k[z+624>>2]=(n|0)==0?1:n;Ve(z);n=z+12|0;l=(C|0)==0;g=l?2049:1;f=(C&576|0)==0?g|32768:g;k[n>>2]=f;g=i[b>>0]|0;a:do if(g<<24>>24){c=(C&64|0)==0;if(l){E=g;F=f;G=f;H=f;I=f;J=f;K=b}else{L=g;M=f;N=f;O=b;while(1){switch(L<<24>>24|0){case 98:{if(c){P=M;Q=N}else{R=M|128;k[n>>2]=R;P=R;Q=R}break}case 56:{if(c){P=M;Q=N}else{R=M|524288;k[n>>2]=R;P=R;Q=R}break}case 66:{R=M&-4|1;k[n>>2]=R;P=R;Q=R;break}case 76:{R=M&-4|2;k[n>>2]=R;P=R;Q=R;break}case 72:{R=M&-4|2;k[n>>2]=R;P=R;Q=R;break}case 104:{R=N|65536;k[n>>2]=R;P=R;Q=R;break}default:{P=M;Q=N}}O=O+1|0;L=i[O>>0]|0;if(!(L<<24>>24))break a;else{M=P;N=Q}}}while(1){do switch(E<<24>>24|0){case 98:{if(c){S=J;T=I;U=H;V=G;W=F}else{N=J|128;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N}break}case 56:{if(c){S=J;T=I;U=H;V=G;W=F}else{N=J|524288;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N}break}case 66:{N=J&-4|1;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N;break}case 76:{N=J&-4|2;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N;break}case 72:{N=J&-4|2;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N;break}case 77:{N=J|2048;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N;break}case 109:{N=I&-2049;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N;break}case 67:{N=H|32768;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N;break}case 99:{N=G&-32769;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N;break}case 104:{N=F|65536;k[n>>2]=N;S=N;T=N;U=N;V=N;W=N;break}default:{S=J;T=I;U=H;V=G;W=F}}while(0);K=K+1|0;E=i[K>>0]|0;if(!(E<<24>>24))break a;else{F=W;G=V;H=U;I=T;J=S}}}while(0);b:do if((C&512|0)==0?(S=z+424|0,(nb[k[x>>2]&63](k[B>>2]|0,S,8)|0)==8):0){J=j[S>>1]|0;S=J&65535;switch(J<<16>>16){case 19789:{k[n>>2]=k[n>>2]|128;break}case 20549:case 18761:break;default:{J=k[B>>2]|0;k[u>>2]=S;k[u+4>>2]=S;vc(J,a,137351,u);break b}}J=z+426|0;if(k[n>>2]&128)Qd(J);S=j[J>>1]|0;J=S&65535;if((S&-2)<<16>>16!=42){T=k[B>>2]|0;k[t>>2]=J;k[t+4>>2]=J;vc(T,a,137402,t);break}do if(S<<16>>16!=42){T=z+432|0;if((nb[k[x>>2]&63](k[B>>2]|0,T,8)|0)!=8){vc(k[B>>2]|0,a,137327,s);break b}J=z+428|0;if(k[n>>2]&128){Qd(J);Sd(T)}T=j[J>>1]|0;J=T&65535;if(T<<16>>16!=8){T=k[B>>2]|0;k[q>>2]=J;k[q+4>>2]=J;vc(T,a,137448,q);break b}T=j[z+430>>1]|0;J=T&65535;if(!(T<<16>>16)){j[z+440>>1]=16;T=k[n>>2]|524288;k[n>>2]=T;X=T;break}else{T=k[B>>2]|0;k[p>>2]=J;k[p+4>>2]=J;vc(T,a,137498,p);break b}}else{T=k[n>>2]|0;if(!(T&128))Y=T;else{Rd(z+428|0);Y=k[n>>2]|0}j[z+440>>1]=8;X=Y}while(0);S=X|512;k[n>>2]=S;T=z+588|0;k[T>>2]=0;k[T+4>>2]=0;k[T+8>>2]=0;k[T+12>>2]=0;k[T+16>>2]=0;switch(i[b>>0]|0){case 114:break;case 97:{if(!(Tb(z)|0))break b;else D=z;r=o;return D|0}default:break b}if(!(X&524288)){T=z+24|0;k[T>>2]=k[z+428>>2];k[T+4>>2]=0}else{T=z+432|0;J=k[T+4>>2]|0;I=z+24|0;k[I>>2]=k[T>>2];k[I+4>>2]=J}do if(X&2048){if(!(nb[k[h>>2]&63](k[B>>2]|0,z+612|0,A)|0)){J=k[n>>2]&-2049;k[n>>2]=J;Z=J;break}J=A;I=k[J>>2]|0;T=k[J+4>>2]|0;k[z+616>>2]=I;if((I|0)==(I|0)&(((I|0)<0)<<31>>31|0)==(T|0)){Z=k[n>>2]|0;break}else Ja(137544,137569,449,137231)}else Z=S;while(0);if(Z&65536){D=z;r=o;return D|0}if(fc(z)|0){k[z+608>>2]=-1;k[n>>2]=k[n>>2]|16;D=z;r=o;return D|0}}else _=37;while(0);do if((_|0)==37){if(!(k[y>>2]|0)){vc(k[B>>2]|0,a,137327,w);break}Z=k[n>>2]|0;A=Z&128;h=z+424|0;j[h>>1]=(A|0)!=0?19789:18761;X=z+426|0;if(!(Z&524288)){j[X>>1]=42;k[z+428>>2]=0;if(A)Qd(X);Z=z+440|0;j[Z>>1]=8;$=Z}else{j[X>>1]=43;Z=z+428|0;j[Z>>1]=8;j[z+430>>1]=0;b=z+432|0;k[b>>2]=0;k[b+4>>2]=0;if(A){Qd(X);Qd(Z)}Z=z+440|0;j[Z>>1]=16;$=Z}xb[k[e>>2]&63](k[B>>2]|0,0,0,0)|0;Z=nb[k[d>>2]&63](k[B>>2]|0,h,m[$>>1]|0)|0;if((Z|0)!=(m[$>>1]|0)){vc(k[B>>2]|0,a,142082,v);break}if((j[h>>1]|0)==19789)k[n>>2]=k[n>>2]|128;if(Tb(z)|0){h=z+16|0;k[h>>2]=0;k[h+4>>2]=0;k[z+32>>2]=0;j[z+36>>1]=0;j[z+38>>1]=0;D=z;r=o;return D|0}}while(0);k[y>>2]=0;Lb(z);D=0;r=o;return D|0}function qd(a){a=a|0;return k[a>>2]|0}function rd(a){a=a|0;return (k[a+12>>2]|0)>>>10&1|0}function sd(a){a=a|0;return j[a+448>>1]|0}function td(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function ud(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function vd(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;e=r;r=r+32|0;f=e+16|0;if((k[a+8>>2]|0)==1){vc(k[a+628>>2]|0,k[a>>2]|0,137580,e);g=-1;r=e;return g|0}if(k[a+12>>2]&1024){vc(k[a+628>>2]|0,k[a>>2]|0,137606,e+8|0);g=-1;r=e;return g|0}h=k[a+168>>2]|0;if(h>>>0<=b>>>0){i=k[a+628>>2]|0;k[f>>2]=b;k[f+4>>2]=h;vc(i,137830,137851,f);g=-1;r=e;return g|0}f=k[a+100>>2]|0;i=k[a+60>>2]|0;h=f>>>0>i>>>0?i:f;f=((i+-1+h|0)>>>0)/(h>>>0)|0;j=i-(ha((b>>>0)%(f>>>0)|0,h)|0)|0;i=Md(a,j>>>0>h>>>0?h:j)|0;if(!i){g=-1;r=e;return g|0}j=(d|0)!=-1&(i|0)>(d|0)?d:i;if(!(wd(a,b)|0)){g=-1;r=e;return g|0}if((xb[k[a+540>>2]&63](a,c,j,((b>>>0)/(f>>>0)|0)&65535)|0)<1){g=-1;r=e;return g|0}vb[k[a+652>>2]&127](a,c,j);g=j;r=e;return g|0}function wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;c=r;r=r+64|0;d=c+48|0;e=c+40|0;f=c+16|0;g=c;if(!(gc(a)|0)){h=0;r=c;return h|0}i=a+176|0;j=k[i>>2]|0;if(!j){h=0;r=c;return h|0}l=a+12|0;n=k[l>>2]|0;do if(!(n&131072)){o=j+(b<<3)|0;p=k[o>>2]|0;q=k[o+4>>2]|0;if((q|0)<0|(q|0)==0&p>>>0<1){o=k[a+628>>2]|0;s=g;k[s>>2]=p;k[s+4>>2]=q;k[g+8>>2]=b;vc(o,137884,137898,g);h=0;r=c;return h|0}if((n&2048|0)!=0?((m[a+94>>1]|0|256)&n|0)!=0:0){if((n&512|0)!=0?(o=a+588|0,s=k[o>>2]|0,(s|0)!=0):0){ne(s);k[o>>2]=0;k[a+592>>2]=0;t=k[l>>2]|0}else t=n;o=t&-513;k[l>>2]=o;s=k[a+616>>2]|0;u=((s|0)<0)<<31>>31;v=(k[a+172>>2]|0)+(b<<3)|0;w=k[v>>2]|0;x=k[v+4>>2]|0;v=pr(s|0,u|0,p|0,q|0)|0;y=L;if(!(u>>>0<q>>>0|(u|0)==(q|0)&s>>>0<p>>>0|(x>>>0>y>>>0|(x|0)==(y|0)&w>>>0>v>>>0))){k[a+592>>2]=p;k[a+588>>2]=(k[a+612>>2]|0)+w;k[a+596>>2]=0;k[a+600>>2]=p;k[l>>2]=o|8388608;break}o=k[a+628>>2]|0;v=pr(s|0,u|0,w|0,x|0)|0;k[f>>2]=b;x=f+8|0;k[x>>2]=v;k[x+4>>2]=L;x=f+16|0;k[x>>2]=p;k[x+4>>2]=q;vc(o,137884,137939,f);k[a+452>>2]=-1;h=0;r=c;return h|0}if(!((p|0)==(p|0)&(((p|0)<0)<<31>>31|0)==(q|0))){vc(k[a+628>>2]|0,137884,139721,e);h=0;r=c;return h|0}do if((p|0)>(k[a+592>>2]|0)){k[a+452>>2]=-1;if(!(n&512)){q=k[a+628>>2]|0;k[d>>2]=b;vc(q,137884,137994,d);h=0;r=c;return h|0}if(!(xd(a,0,p)|0)){h=0;r=c;return h|0}else{z=k[l>>2]|0;break}}else z=n;while(0);if((z&8388608|0)!=0?(k[a+452>>2]=-1,(xd(a,0,p)|0)==0):0){h=0;r=c;return h|0}q=a+588|0;if((Gd(a,b,k[q>>2]|0,p,137884)|0)!=(p|0)){h=0;r=c;return h|0}k[a+596>>2]=0;k[a+600>>2]=p;if(!((m[a+94>>1]|0|256)&k[l>>2]))_d(k[q>>2]|0,p)}while(0);if(!(gc(a)|0)){h=0;r=c;return h|0}if(!(k[i>>2]|0)){h=0;r=c;return h|0}z=k[l>>2]|0;do if(!(z&32))if(!(ub[k[a+508>>2]&63](a)|0)){h=0;r=c;return h|0}else{n=k[l>>2]|32;k[l>>2]=n;A=n;break}else A=z;while(0);k[a+452>>2]=b;z=k[a+164>>2]|0;n=ha(k[a+100>>2]|0,(b>>>0)%(z>>>0)|0)|0;k[a+444>>2]=n;k[l>>2]=A&-1048577;if(!(A&131072)){k[a+604>>2]=k[a+588>>2];B=k[(k[i>>2]|0)+(b<<3)>>2]|0}else{k[a+604>>2]=0;B=0}k[a+608>>2]=B;h=yb[k[a+512>>2]&127](a,((b>>>0)/(z>>>0)|0)&65535)|0;r=c;return h|0}function xd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;d=r;r=r+16|0;e=d+8|0;f=d;g=a+12|0;h=k[g>>2]|0;if(h&131072)Ja(137648,137683,918,137694);k[g>>2]=h&-8388609;i=a+588|0;j=k[i>>2]|0;if(j){if(h&512)ne(j);k[i>>2]=0;k[a+592>>2]=0}if(b){k[a+592>>2]=c;k[i>>2]=b;k[g>>2]=k[g>>2]&-513;l=1;r=d;return l|0}b=c+1023&-1024;k[a+592>>2]=b;if(!b){vc(k[a+628>>2]|0,137694,137714,f);l=0;r=d;return l|0}f=me(b)|0;k[i>>2]=f;k[g>>2]=k[g>>2]|512;if(f){l=1;r=d;return l|0}f=k[a+628>>2]|0;k[e>>2]=k[a+444>>2];vc(f,137694,138034,e);k[a+592>>2]=0;l=0;r=d;return l|0}function yd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=r;r=r+16|0;if((k[a+8>>2]|0)==1){vc(k[a+628>>2]|0,k[a>>2]|0,137580,g);h=-1;r=g;return h|0}if(!(k[a+12>>2]&1024)){vc(k[a+628>>2]|0,k[a>>2]|0,138075,g+8|0);h=-1;r=g;return h|0}if(!(ae(a,c,d,e,f)|0)){h=-1;r=g;return h|0}h=zd(a,$d(a,c,d,e,f)|0,b,-1)|0;r=g;return h|0}function zd(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;e=r;r=r+32|0;f=e+16|0;g=k[a+496>>2]|0;if((k[a+8>>2]|0)==1){vc(k[a+628>>2]|0,k[a>>2]|0,137580,e);h=-1;r=e;return h|0}if(!(k[a+12>>2]&1024)){vc(k[a+628>>2]|0,k[a>>2]|0,138075,e+8|0);h=-1;r=e;return h|0}i=k[a+168>>2]|0;if(i>>>0<=b>>>0){j=k[a+628>>2]|0;k[f>>2]=b;k[f+4>>2]=i;vc(j,138116,138136,f);h=-1;r=e;return h|0}f=(d|0)==-1|(g|0)<(d|0)?g:d;if(!(Ad(a,b)|0)){h=-1;r=e;return h|0}if(!(xb[k[a+548>>2]&63](a,c,f,((b>>>0)/((k[a+164>>2]|0)>>>0)|0)&65535)|0)){h=-1;r=e;return h|0}vb[k[a+652>>2]&127](a,c,f);h=f;r=e;return h|0}function Ad(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;c=r;r=r+48|0;d=c+40|0;e=c+32|0;f=c+24|0;g=c+16|0;h=c;if(!(gc(a)|0)){i=0;r=c;return i|0}j=a+176|0;l=k[j>>2]|0;if(!l){i=0;r=c;return i|0}n=a+12|0;o=k[n>>2]|0;do if(!(o&131072)){p=l+(b<<3)|0;q=k[p>>2]|0;s=k[p+4>>2]|0;if((s|0)<0|(s|0)==0&q>>>0<1){p=k[a+628>>2]|0;t=h;k[t>>2]=q;k[t+4>>2]=s;k[h+8>>2]=b;vc(p,138168,138181,h);i=0;r=c;return i|0}if((o&2048|0)!=0?((m[a+94>>1]|0|256)&o|0)!=0:0){if((o&512|0)!=0?(p=a+588|0,t=k[p>>2]|0,(t|0)!=0):0){ne(t);k[p>>2]=0;k[a+592>>2]=0;u=k[n>>2]|0}else u=o;p=u&-513;k[n>>2]=p;t=k[a+616>>2]|0;v=((t|0)<0)<<31>>31;if(!(v>>>0<s>>>0|(v|0)==(s|0)&t>>>0<q>>>0)?(w=(k[a+172>>2]|0)+(b<<3)|0,x=k[w>>2]|0,y=k[w+4>>2]|0,w=pr(t|0,v|0,q|0,s|0)|0,v=L,!(y>>>0>v>>>0|(y|0)==(v|0)&x>>>0>w>>>0)):0){k[a+592>>2]=q;k[a+588>>2]=(k[a+612>>2]|0)+x;k[a+596>>2]=0;k[a+600>>2]=q;k[n>>2]=p|8388608;break}k[a+492>>2]=-1;i=0;r=c;return i|0}if(!((q|0)==(q|0)&(((q|0)<0)<<31>>31|0)==(s|0))){vc(k[a+628>>2]|0,138168,139721,g);i=0;r=c;return i|0}do if((q|0)>(k[a+592>>2]|0)){k[a+492>>2]=-1;if(!(o&512)){s=k[a+628>>2]|0;k[f>>2]=b;vc(s,138168,138221,f);i=0;r=c;return i|0}if(!(xd(a,0,q)|0)){i=0;r=c;return i|0}else{z=k[n>>2]|0;break}}else z=o;while(0);if((z&8388608|0)!=0?(k[a+492>>2]=-1,(xd(a,0,q)|0)==0):0){i=0;r=c;return i|0}s=a+588|0;if((Hd(a,b,k[s>>2]|0,q,138168)|0)!=(q|0)){i=0;r=c;return i|0}k[a+596>>2]=0;k[a+600>>2]=q;if(!((m[a+94>>1]|0|256)&k[n>>2]))_d(k[s>>2]|0,q)}while(0);if(!(gc(a)|0)){i=0;r=c;return i|0}if(!(k[j>>2]|0)){i=0;r=c;return i|0}z=k[n>>2]|0;do if(!(z&32))if(!(ub[k[a+508>>2]&63](a)|0)){i=0;r=c;return i|0}else{o=k[n>>2]|32;k[n>>2]=o;A=o;break}else A=z;while(0);k[a+492>>2]=b;z=k[a+56>>2]|0;o=k[a+68>>2]|0;if(z>>>0<(0-o|0)>>>0?(f=((z+-1+o|0)>>>0)/(o>>>0)|0,(f|0)!=0):0){z=k[a+72>>2]|0;g=ha(z,(b>>>0)%(f>>>0)|0)|0;k[a+444>>2]=g;g=k[a+60>>2]|0;if(g>>>0<(0-z|0)>>>0?(f=((z+-1+g|0)>>>0)/(z>>>0)|0,(f|0)!=0):0){z=ha((b>>>0)%(f>>>0)|0,o)|0;k[a+488>>2]=z;k[n>>2]=A&-1048577;if(!(A&131072)){k[a+604>>2]=k[a+588>>2];B=k[(k[j>>2]|0)+(b<<3)>>2]|0}else{k[a+604>>2]=0;B=0}k[a+608>>2]=B;i=yb[k[a+512>>2]&127](a,((b>>>0)/((k[a+164>>2]|0)>>>0)|0)&65535)|0;r=c;return i|0}vc(k[a+628>>2]|0,138260,138274,d);i=0;r=c;return i|0}vc(k[a+628>>2]|0,138260,138274,e);i=0;r=c;return i|0}function Bd(a,b,c){a=a|0;b=b|0;c=c|0;return}function Cd(a,b,c){a=a|0;b=b|0;c=c|0;if(!(c&1)){Td(b,(c|0)/2|0);return}else Ja(138285,137683,1059,138299)}function Dd(a,b,c){a=a|0;b=b|0;c=c|0;if(!((c|0)%3|0)){Ud(b,(c|0)/3|0);return}else Ja(138318,137683,1067,138332)}function Ed(a,b,c){a=a|0;b=b|0;c=c|0;if(!(c&3)){Vd(b,(c|0)/4|0);return}else Ja(138351,137683,1075,138365)}function Fd(a,b,c){a=a|0;b=b|0;c=c|0;if(!(c&7)){Yd(b,(c|0)/8|0);return}else Ja(138384,137683,1083,138398)}function Gd(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,l=0,m=0,n=0,o=0,p=0,q=0;f=r;r=r+64|0;g=f+32|0;h=f+8|0;i=f;if(!(gc(a)|0)){j=-1;r=f;return j|0}l=k[a+12>>2]|0;if(l&131072)Ja(137648,137683,372,138609);if(!(l&2048)){l=a+628|0;m=a+172|0;n=(k[m>>2]|0)+(b<<3)|0;o=xb[k[a+640>>2]&63](k[l>>2]|0,k[n>>2]|0,k[n+4>>2]|0,0)|0;n=(k[m>>2]|0)+(b<<3)|0;if(!((o|0)==(k[n>>2]|0)?(L|0)==(k[n+4>>2]|0):0)){n=k[l>>2]|0;k[i>>2]=k[a+444>>2];k[i+4>>2]=b;vc(n,e,137734,i);j=-1;r=f;return j|0}i=nb[k[a+632>>2]&63](k[l>>2]|0,c,d)|0;if((i|0)==(d|0)){j=d;r=f;return j|0}n=k[l>>2]|0;k[h>>2]=k[a+444>>2];l=h+8|0;k[l>>2]=i;k[l+4>>2]=((i|0)<0)<<31>>31;i=h+16|0;k[i>>2]=d;k[i+4>>2]=((d|0)<0)<<31>>31;vc(n,e,137772,h);j=-1;r=f;return j|0}h=(k[a+172>>2]|0)+(b<<3)|0;n=k[h>>2]|0;i=n+d|0;if(((n|0)==(n|0)?(((n|0)<0)<<31>>31|0)==(k[h+4>>2]|0):0)?(h=k[a+616>>2]|0,(h|0)>=(n|0)):0){if((n|d|0)<0|(i|0)>(h|0)){p=h-n|0;q=13}}else{p=0;q=13}if((q|0)==13?(p|0)!=(d|0):0){q=k[a+628>>2]|0;k[g>>2]=k[a+444>>2];k[g+4>>2]=b;b=g+8|0;k[b>>2]=p;k[b+4>>2]=((p|0)<0)<<31>>31;p=g+16|0;k[p>>2]=d;k[p+4>>2]=((d|0)<0)<<31>>31;vc(q,e,138627,g);j=-1;r=f;return j|0}qe(c,(k[a+612>>2]|0)+n|0,d);j=d;r=f;return j|0}function Hd(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,l=0,m=0,n=0,o=0,p=0,q=0;f=r;r=r+80|0;g=f+40|0;h=f+16|0;i=f;if(!(gc(a)|0)){j=-1;r=f;return j|0}l=k[a+12>>2]|0;if(l&131072)Ja(137648,137683,684,138417);if(!(l&2048)){l=a+628|0;m=a+172|0;n=(k[m>>2]|0)+(b<<3)|0;o=xb[k[a+640>>2]&63](k[l>>2]|0,k[n>>2]|0,k[n+4>>2]|0,0)|0;n=(k[m>>2]|0)+(b<<3)|0;if(!((o|0)==(k[n>>2]|0)?(L|0)==(k[n+4>>2]|0):0)){n=k[l>>2]|0;o=k[a+488>>2]|0;k[i>>2]=k[a+444>>2];k[i+4>>2]=o;k[i+8>>2]=b;vc(n,e,138434,i);j=-1;r=f;return j|0}i=nb[k[a+632>>2]&63](k[l>>2]|0,c,d)|0;if((i|0)==(d|0)){j=d;r=f;return j|0}n=k[l>>2]|0;l=k[a+488>>2]|0;k[h>>2]=k[a+444>>2];k[h+4>>2]=l;l=h+8|0;k[l>>2]=i;k[l+4>>2]=((i|0)<0)<<31>>31;i=h+16|0;k[i>>2]=d;k[i+4>>2]=((d|0)<0)<<31>>31;vc(n,e,138475,h);j=-1;r=f;return j|0}h=(k[a+172>>2]|0)+(b<<3)|0;n=k[h>>2]|0;i=n+d|0;if(((n|0)==(n|0)?(((n|0)<0)<<31>>31|0)==(k[h+4>>2]|0):0)?(h=k[a+616>>2]|0,(h|0)>=(n|0)):0){if((n|d|0)<0|(i|0)>(h|0)){p=h-n|0;q=13}}else{p=0;q=13}if((q|0)==13?(p|0)!=(d|0):0){q=k[a+628>>2]|0;h=k[a+488>>2]|0;k[g>>2]=k[a+444>>2];k[g+4>>2]=h;k[g+8>>2]=b;b=g+16|0;k[b>>2]=p;k[b+4>>2]=((p|0)<0)<<31>>31;p=g+24|0;k[p>>2]=d;k[p+4>>2]=((d|0)<0)<<31>>31;vc(q,e,138537,g);j=-1;r=f;return j|0}qe(c,(k[a+612>>2]|0)+n|0,d);j=d;r=f;return j|0}function Id(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=r;r=r+16|0;e=d;f=(b>>>0)/((k[a+100>>2]|0)>>>0)|0;if((j[a+126>>1]|0)!=2){g=f;r=d;return g|0}b=c&65535;h=j[a+98>>1]|0;if((h&65535)>(c&65535)){g=(ha(k[a+164>>2]|0,b)|0)+f|0;r=d;return g|0}else{f=k[a+628>>2]|0;k[e>>2]=b;k[e+4>>2]=h&65535;vc(f,138696,139539,e);g=0;r=d;return g|0}return 0}function Jd(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+100>>2]|0;if((b|0)!=-1){c=k[a+60>>2]|0;if(c>>>0<(0-b|0)>>>0)d=((b+-1+c|0)>>>0)/(b>>>0)|0;else d=0}else d=1;if((j[a+126>>1]|0)!=2){e=d;return e|0}e=Be(a,d,m[a+98>>1]|0,138713)|0;return e|0}function Kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;c=r;r=r+32|0;d=c+16|0;e=c+8|0;f=c;g=c+24|0;if((b|0)==-1)h=k[a+60>>2]|0;else h=b;if(((j[a+126>>1]|0)==1?(j[a+90>>1]|0)==6:0)?(k[a+12>>2]&16384|0)==0:0){if((j[a+98>>1]|0)!=3){vc(k[a+628>>2]|0,138732,138749,f);i=0;l=0;L=i;r=c;return l|0}f=g+2|0;k[e>>2]=g;k[e+4>>2]=f;Ge(a,530,e)|0;e=j[g>>1]|0;a:do switch(e<<16>>16){case 4:case 2:case 1:{g=j[f>>1]|0;switch(g<<16>>16){case 4:case 2:case 1:break;default:{n=g;break a}}b=e&65535;o=g&65535;g=(ha(o,b)|0)+2|0;p=k[a+56>>2]|0;if(p>>>0<(0-b|0)>>>0){q=((b+-1+p|0)>>>0)/(b>>>0)|0;s=0}else{q=0;s=0}if(h>>>0<(0-o|0)>>>0){t=((h+-1+o|0)>>>0)/(o>>>0)|0;u=0}else{t=0;u=0}o=Ce(a,q,s,g&65535,0,138732)|0;g=L;b=a+84|0;p=Ce(a,o,g,m[b>>1]|0,0,138732)|0;v=Ce(a,sr(ur(Ce(a,o,g,m[b>>1]|0,0,138732)|0,L|0,3)|0,L|0,((p&7|0)!=0|0!=0)&1|0,0)|0,L,t,u,138732)|0;i=L;l=v;L=i;r=c;return l|0}default:n=j[f>>1]|0}while(0);f=k[a+628>>2]|0;k[d>>2]=e&65535;k[d+4>>2]=n&65535;vc(f,138732,139754,d);i=0;l=0;L=i;r=c;return l|0}d=Ld(a)|0;f=Ce(a,h,0,d,L,138732)|0;i=L;l=f;L=i;r=c;return l|0}function Ld(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;b=r;r=r+32|0;c=b+16|0;d=b+8|0;e=b;f=b+20|0;a:do if((j[a+126>>1]|0)==1){g=j[a+98>>1]|0;if(g<<16>>16==3?(j[a+90>>1]|0)==6:0)if(!(k[a+12>>2]&16384)){h=f+2|0;k[e>>2]=f;k[e+4>>2]=h;Ge(a,530,e)|0;i=j[f>>1]|0;b:do switch(i<<16>>16){case 4:case 2:case 1:{l=j[h>>1]|0;switch(l<<16>>16){case 4:case 2:case 1:break;default:break b}n=i&65535;o=(ha(l&65535,n)|0)+2|0;l=k[a+56>>2]|0;if(l>>>0<(0-n|0)>>>0){p=((n+-1+l|0)>>>0)/(n>>>0)|0;q=0}else{p=0;q=0}s=Er(ur(sr(Ce(a,Ce(a,p,q,o&65535,0,138782)|0,L,m[a+84>>1]|0,0,138782)|0,L|0,7,0)|0,L|0,3)|0,L|0,m[h>>1]|0,0)|0;t=L;break a;break}default:{}}while(0);vc(k[a+628>>2]|0,138782,138801,d);u=0;v=0;L=u;r=b;return v|0}else w=3;else w=g;h=Ce(a,k[a+56>>2]|0,0,w&65535,0,138782)|0;i=Ce(a,h,L,m[a+84>>1]|0,0,138782)|0;h=sr(i|0,L|0,7,0)|0;i=ur(h|0,L|0,3)|0;s=i;t=L}else{i=Ce(a,k[a+56>>2]|0,0,m[a+84>>1]|0,0,138782)|0;h=sr(i|0,L|0,7,0)|0;i=ur(h|0,L|0,3)|0;s=i;t=L}while(0);if(!((s|0)==0&(t|0)==0)){u=t;v=s;L=u;r=b;return v|0}vc(k[a+628>>2]|0,138782,138827,c);u=0;v=0;L=u;r=b;return v|0}function Md(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;d=Kd(a,b)|0;if((d|0)==(d|0)&(((d|0)<0)<<31>>31|0)==(L|0)){e=d;r=c;return e|0}vc(k[a+628>>2]|0,138858,139721,c);e=0;r=c;return e|0}function Nd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=r;r=r+16|0;c=k[a+100>>2]|0;d=k[a+60>>2]|0;e=Kd(a,c>>>0>d>>>0?d:c)|0;if((e|0)==(e|0)&(((e|0)<0)<<31>>31|0)==(L|0)){f=e;r=b;return f|0}vc(k[a+628>>2]|0,138873,139721,b);f=0;r=b;return f|0}function Od(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)>=1){c=b;return c|0}b=Ld(a)|0;a=L;d=(b|0)==0&(a|0)==0;e=Er(8192,0,(d?1:b)|0,(d?0:a)|0)|0;c=(e|0)==0&(L|0)==0?1:e;return c|0}function Pd(a){a=a|0;var b=0,c=0,d=0;b=r;r=r+16|0;c=Ld(a)|0;if((c|0)==(c|0)&(((c|0)<0)<<31>>31|0)==(L|0)){d=c;r=b;return d|0}vc(k[a+628>>2]|0,138887,138904,b);d=0;r=b;return d|0}function Qd(a){a=a|0;var b=0,c=0;b=a+1|0;c=i[b>>0]|0;i[b>>0]=i[a>>0]|0;i[a>>0]=c;return}function Rd(a){a=a|0;var b=0,c=0,d=0;b=a+3|0;c=i[b>>0]|0;i[b>>0]=i[a>>0]|0;i[a>>0]=c;c=a+2|0;b=i[c>>0]|0;d=a+1|0;i[c>>0]=i[d>>0]|0;i[d>>0]=b;return}function Sd(a){a=a|0;var b=0,c=0,d=0;b=a+7|0;c=i[b>>0]|0;i[b>>0]=i[a>>0]|0;i[a>>0]=c;c=a+6|0;b=i[c>>0]|0;d=a+1|0;i[c>>0]=i[d>>0]|0;i[d>>0]=b;b=a+5|0;d=i[b>>0]|0;c=a+2|0;i[b>>0]=i[c>>0]|0;i[c>>0]=d;d=a+4|0;c=i[d>>0]|0;b=a+3|0;i[d>>0]=i[b>>0]|0;i[b>>0]=c;return}function Td(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)>0){c=b;d=a}else return;while(1){a=d+1|0;b=i[a>>0]|0;i[a>>0]=i[d>>0]|0;i[d>>0]=b;if((c|0)>1){c=c+-1|0;d=d+2|0}else break}return}function Ud(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)>0){c=b;d=a}else return;while(1){a=d+2|0;b=i[a>>0]|0;i[a>>0]=i[d>>0]|0;i[d>>0]=b;if((c|0)>1){c=c+-1|0;d=d+3|0}else break}return}function Vd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)>0){c=b;d=a}else return;while(1){a=d+3|0;b=i[a>>0]|0;i[a>>0]=i[d>>0]|0;i[d>>0]=b;b=d+2|0;a=i[b>>0]|0;e=d+1|0;i[b>>0]=i[e>>0]|0;i[e>>0]=a;if((c|0)>1){c=c+-1|0;d=d+4|0}else break}return}function Wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)>0){c=b;d=a}else return;while(1){a=d+7|0;b=i[a>>0]|0;i[a>>0]=i[d>>0]|0;i[d>>0]=b;b=d+6|0;a=i[b>>0]|0;e=d+1|0;i[b>>0]=i[e>>0]|0;i[e>>0]=a;a=d+5|0;e=i[a>>0]|0;b=d+2|0;i[a>>0]=i[b>>0]|0;i[b>>0]=e;e=d+4|0;b=i[e>>0]|0;a=d+3|0;i[e>>0]=i[a>>0]|0;i[a>>0]=b;if((c|0)>1){c=c+-1|0;d=d+8|0}else break}return}function Xd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)>0){c=b;d=a}else return;while(1){a=d+3|0;b=i[a>>0]|0;i[a>>0]=i[d>>0]|0;i[d>>0]=b;b=d+2|0;a=i[b>>0]|0;e=d+1|0;i[b>>0]=i[e>>0]|0;i[e>>0]=a;if((c|0)>1){c=c+-1|0;d=d+4|0}else break}return}function Yd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)>0){c=b;d=a}else return;while(1){a=d+7|0;b=i[a>>0]|0;i[a>>0]=i[d>>0]|0;i[d>>0]=b;b=d+6|0;a=i[b>>0]|0;e=d+1|0;i[b>>0]=i[e>>0]|0;i[e>>0]=a;a=d+5|0;e=i[a>>0]|0;b=d+2|0;i[a>>0]=i[b>>0]|0;i[b>>0]=e;e=d+4|0;b=i[e>>0]|0;a=d+3|0;i[e>>0]=i[a>>0]|0;i[a>>0]=b;if((c|0)>1){c=c+-1|0;d=d+8|0}else break}return}function Zd(a){a=a|0;return ((a|0)!=0?138932:139188)|0}function _d(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0;if((b|0)>8){c=b+-9&-8;d=c+8|0;e=a;f=b;while(1){i[e>>0]=i[138932+(l[e>>0]|0)>>0]|0;g=e+1|0;i[g>>0]=i[138932+(l[g>>0]|0)>>0]|0;g=e+2|0;i[g>>0]=i[138932+(l[g>>0]|0)>>0]|0;g=e+3|0;i[g>>0]=i[138932+(l[g>>0]|0)>>0]|0;g=e+4|0;i[g>>0]=i[138932+(l[g>>0]|0)>>0]|0;g=e+5|0;i[g>>0]=i[138932+(l[g>>0]|0)>>0]|0;g=e+6|0;i[g>>0]=i[138932+(l[g>>0]|0)>>0]|0;g=e+7|0;i[g>>0]=i[138932+(l[g>>0]|0)>>0]|0;f=f+-8|0;if((f|0)<=8)break;else e=e+8|0}h=b+-8-c|0;j=a+d|0}else{h=b;j=a}if((h|0)>0){k=j;m=h}else return;while(1){i[k>>0]=i[138932+(l[k>>0]|0)>>0]|0;if((m|0)>1){k=k+1|0;m=m+-1|0}else break}return}function $d(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=k[a+68>>2]|0;g=k[a+72>>2]|0;h=k[a+76>>2]|0;i=k[a+64>>2]|0;l=(i|0)==1?0:d;if((f|0)==-1)m=k[a+56>>2]|0;else m=f;if((g|0)==-1)n=k[a+60>>2]|0;else n=g;g=(h|0)==-1?i:h;if(!((m|0)!=0&(n|0)!=0&(g|0)!=0)){o=1;return o|0}h=k[a+56>>2]|0;if(h>>>0<(0-m|0)>>>0)p=((m+-1+h|0)>>>0)/(m>>>0)|0;else p=0;h=k[a+60>>2]|0;if(h>>>0<(0-n|0)>>>0)q=((n+-1+h|0)>>>0)/(n>>>0)|0;else q=0;if(i>>>0<(0-g|0)>>>0)r=((g+-1+i|0)>>>0)/(g>>>0)|0;else r=0;i=ha(q,p)|0;if((j[a+126>>1]|0)==2){o=((b>>>0)/(m>>>0)|0)+(ha((c>>>0)/(n>>>0)|0,p)|0)+(ha(((l>>>0)/(g>>>0)|0)+(ha(r,e&65535)|0)|0,i)|0)|0;return o|0}else{o=(ha((c>>>0)/(n>>>0)|0,p)|0)+(ha((l>>>0)/(g>>>0)|0,i)|0)+((b>>>0)/(m>>>0)|0)|0;return o|0}return 0}function ae(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,l=0,m=0,n=0,o=0,p=0;f=r;r=r+32|0;g=f+24|0;h=f+16|0;i=f+8|0;l=f;m=k[a+56>>2]|0;if(m>>>0<=b>>>0){n=k[a+628>>2]|0;o=k[a>>2]|0;k[l>>2]=b;k[l+4>>2]=m+-1;vc(n,o,139444,l);p=0;r=f;return p|0}l=k[a+60>>2]|0;if(l>>>0<=c>>>0){o=k[a+628>>2]|0;n=k[a>>2]|0;k[i>>2]=c;k[i+4>>2]=l+-1;vc(o,n,139475,i);p=0;r=f;return p|0}i=k[a+64>>2]|0;if(i>>>0<=d>>>0){n=k[a+628>>2]|0;o=k[a>>2]|0;k[h>>2]=d;k[h+4>>2]=i+-1;vc(n,o,139506,h);p=0;r=f;return p|0}if((j[a+126>>1]|0)!=2){p=1;r=f;return p|0}h=j[a+98>>1]|0;if((h&65535)>(e&65535)){p=1;r=f;return p|0}o=k[a+628>>2]|0;n=k[a>>2]|0;k[g>>2]=e&65535;k[g+4>>2]=(h&65535)+-1;vc(o,n,139539,g);p=0;r=f;return p|0}function be(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0;b=k[a+68>>2]|0;c=k[a+72>>2]|0;d=k[a+76>>2]|0;if((b|0)==-1)e=k[a+56>>2]|0;else e=b;if((c|0)==-1)f=k[a+60>>2]|0;else f=c;if((d|0)==-1)g=k[a+64>>2]|0;else g=d;if((e|0)==0|(f|0)==0|(g|0)==0)h=0;else{d=k[a+56>>2]|0;if(d>>>0<(0-e|0)>>>0)i=((e+-1+d|0)>>>0)/(e>>>0)|0;else i=0;e=k[a+60>>2]|0;if(e>>>0<(0-f|0)>>>0)l=((f+-1+e|0)>>>0)/(f>>>0)|0;else l=0;f=Be(a,i,l,139573)|0;l=k[a+64>>2]|0;if(l>>>0<(0-g|0)>>>0)n=((g+-1+l|0)>>>0)/(g>>>0)|0;else n=0;h=Be(a,f,n,139573)|0}if((j[a+126>>1]|0)!=2){o=h;return o|0}o=Be(a,h,m[a+98>>1]|0,139573)|0;return o|0}function ce(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0;b=r;r=r+32|0;c=b+24|0;d=b+16|0;if(!(k[a+72>>2]|0)){vc(k[a+628>>2]|0,139591,139609,b);e=0;f=0;L=e;r=b;return f|0}g=k[a+68>>2]|0;if(!g){vc(k[a+628>>2]|0,139591,139629,b+8|0);e=0;f=0;L=e;r=b;return f|0}h=Ce(a,m[a+84>>1]|0,0,g,0,139648)|0;g=L;do if((j[a+126>>1]|0)==1){i=j[a+98>>1]|0;if(i<<16>>16){l=Ce(a,h,g,i&65535,0,139648)|0;n=l;o=L;break}vc(k[a+628>>2]|0,139591,139664,d);e=0;f=0;L=e;r=b;return f|0}else{n=h;o=g}while(0);g=ur(n|0,o|0,3)|0;o=sr(((n&7|0)!=0|0!=0)&1|0,0,g|0,L|0)|0;g=L;if(!((o|0)==0&(g|0)==0)){e=g;f=o;L=e;r=b;return f|0}vc(k[a+628>>2]|0,139591,139690,c);e=0;f=0;L=e;r=b;return f|0}function de(a){a=a|0;var b=0,c=0,d=0;b=r;r=r+16|0;c=ce(a)|0;if((c|0)==(c|0)&(((c|0)<0)<<31>>31|0)==(L|0)){d=c;r=b;return d|0}vc(k[a+628>>2]|0,139648,139721,b);d=0;r=b;return d|0}function ee(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;c=r;r=r+32|0;d=c+8|0;e=c;f=c+16|0;if(!(k[a+72>>2]|0)){g=0;h=0;L=g;r=c;return h|0}i=a+68|0;if(!(k[i>>2]|0)){g=0;h=0;L=g;r=c;return h|0}if(!(k[a+76>>2]|0)){g=0;h=0;L=g;r=c;return h|0}if((((j[a+126>>1]|0)==1?(j[a+90>>1]|0)==6:0)?(j[a+98>>1]|0)==3:0)?(k[a+12>>2]&16384|0)==0:0){l=f+2|0;k[e>>2]=f;k[e+4>>2]=l;Ge(a,530,e)|0;e=j[f>>1]|0;a:do switch(e<<16>>16){case 4:case 2:case 1:{f=j[l>>1]|0;switch(f<<16>>16){case 4:case 2:case 1:break;default:{n=f;break a}}o=e&65535;p=f&65535;f=(ha(p,o)|0)+2|0;q=k[i>>2]|0;if(q>>>0<(0-o|0)>>>0){s=((o+-1+q|0)>>>0)/(o>>>0)|0;t=0}else{s=0;t=0}if(b>>>0<(0-p|0)>>>0){u=((b+-1+p|0)>>>0)/(p>>>0)|0;v=0}else{u=0;v=0}p=Ce(a,s,t,f&65535,0,139738)|0;f=L;o=a+84|0;q=Ce(a,p,f,m[o>>1]|0,0,139738)|0;w=Ce(a,sr(ur(Ce(a,p,f,m[o>>1]|0,0,139738)|0,L|0,3)|0,L|0,((q&7|0)!=0|0!=0)&1|0,0)|0,L,u,v,139738)|0;g=L;h=w;L=g;r=c;return h|0}default:n=j[l>>1]|0}while(0);l=k[a+628>>2]|0;k[d>>2]=e&65535;k[d+4>>2]=n&65535;vc(l,139738,139754,d);g=0;h=0;L=g;r=c;return h|0}d=ce(a)|0;l=Ce(a,b,0,d,L,139738)|0;g=L;h=l;L=g;r=c;return h|0}function fe(a){a=a|0;var b=0;b=ee(a,k[a+72>>2]|0)|0;return b|0}function ge(a){a=a|0;var b=0,c=0,d=0;b=r;r=r+16|0;c=ee(a,k[a+72>>2]|0)|0;if((c|0)==(c|0)&(((c|0)<0)<<31>>31|0)==(L|0)){d=c;r=b;return d|0}vc(k[a+628>>2]|0,139788,139721,b);d=0;r=b;return d|0}function he(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a=k[b>>2]|0;if((a|0)<1){k[b>>2]=256;d=256}else d=a;a=k[c>>2]|0;if((a|0)<1){k[c>>2]=256;e=256;f=k[b>>2]|0}else{e=a;f=d}if(!(f&15))g=e;else{k[b>>2]=f>>>0<4294967280?f+15&-16:0;g=k[c>>2]|0}if(!(g&15))return;k[c>>2]=g>>>0<4294967280?g+15&-16:0;return}function ie(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;k[f>>2]=d;d=k[1933]|0;if(d)vb[d&127](b,c,f);d=k[1932]|0;if(!d){r=e;return}Ab[d&31](a,b,c,f);r=e;return}function je(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=a+608|0;c=k[b>>2]|0;if((c|0)<=0){d=1;return d|0}e=a+12|0;f=k[e>>2]|0;if(!(f&1048576)){d=1;return d|0}g=a+588|0;if(!((m[a+94>>1]|0|256)&f)){_d(k[g>>2]|0,c);h=k[e>>2]|0;i=k[b>>2]|0}else{h=f;i=c}if(!(ke(a,k[((h&1024|0)==0?a+452|0:a+492|0)>>2]|0,k[g>>2]|0,i)|0)){d=0;return d|0}k[b>>2]=0;k[a+604>>2]=k[g>>2];d=1;return d|0}function ke(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=r;r=r+32|0;f=e+16|0;g=e+8|0;h=e;i=a+172|0;j=(k[i>>2]|0)+(b<<3)|0;l=k[j>>2]|0;m=k[j+4>>2]|0;j=(l|0)==0&(m|0)==0;if(!j?(n=a+456|0,o=n,p=k[o>>2]|0,q=k[o+4>>2]|0,!((p|0)==0&(q|0)==0)):0){s=n;t=p;u=q;v=-1;w=-1}else{if(!(k[a+168>>2]|0))Ja(139801,139820,690,139832);q=a+176|0;p=(k[q>>2]|0)+(b<<3)|0;n=k[p>>2]|0;o=k[p+4>>2]|0;if(!((n|0)==0&(o|0)==0)?(p=((d|0)<0)<<31>>31,!(o>>>0<p>>>0|(o|0)==(p|0)&n>>>0<d>>>0|j)):0){j=a+628|0;n=xb[k[a+640>>2]&63](k[j>>2]|0,l,m,0)|0;m=L;l=(k[i>>2]|0)+(b<<3)|0;if((n|0)==(k[l>>2]|0)?(m|0)==(k[l+4>>2]|0):0){x=n;y=m}else{m=k[j>>2]|0;k[h>>2]=k[a+444>>2];vc(m,139832,139850,h);z=0;r=e;return z|0}}else{h=xb[k[a+640>>2]&63](k[a+628>>2]|0,0,0,2)|0;m=L;j=(k[i>>2]|0)+(b<<3)|0;k[j>>2]=h;k[j+4>>2]=m;j=a+12|0;k[j>>2]=k[j>>2]|2097152;x=h;y=m}m=a+456|0;h=m;k[h>>2]=x;k[h+4>>2]=y;y=(k[q>>2]|0)+(b<<3)|0;q=y;h=k[q>>2]|0;x=k[q+4>>2]|0;q=y;k[q>>2]=0;k[q+4>>2]=0;q=m;s=m;t=k[q>>2]|0;u=k[q+4>>2]|0;v=h;w=x}x=((d|0)<0)<<31>>31;h=sr(t|0,u|0,d|0,x|0)|0;q=a+12|0;m=(k[q>>2]&524288|0)==0;y=m?h:h;h=m?0:L;if(h>>>0<u>>>0|(h|0)==(u|0)&y>>>0<t>>>0|(h>>>0<x>>>0|(h|0)==(x|0)&y>>>0<d>>>0)){vc(k[a+628>>2]|0,139832,142108,g);z=0;r=e;return z|0}g=a+628|0;if((nb[k[a+636>>2]&63](k[g>>2]|0,c,d)|0)!=(d|0)){c=k[g>>2]|0;k[f>>2]=k[a+444>>2];vc(c,139832,139877,f);z=0;r=e;return z|0}f=s;k[f>>2]=y;k[f+4>>2]=h;h=(k[a+176>>2]|0)+(b<<3)|0;b=h;a=sr(k[b>>2]|0,k[b+4>>2]|0,d|0,x|0)|0;x=L;d=h;k[d>>2]=a;k[d+4>>2]=x;if((a|0)==(v|0)&(x|0)==(w|0)){z=1;r=e;return z|0}k[q>>2]=k[q>>2]|2097152;z=1;r=e;return z|0}function le(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=r;r=r+32|0;d=c+16|0;e=c+8|0;f=c;g=od(b,139905)|0;if((g|0)==-1){h=0;r=c;return h|0}k[f>>2]=438;i=Pp(a,g,f)|0;if((i|0)>=0){f=pd(a,b,i,8,9,5,2,3,10,2)|0;if(!f){Tq(i)|0;h=0;r=c;return h|0}else{k[f+4>>2]=i;h=f;r=c;return h|0}}f=Np()|0;i=k[f>>2]|0;if((i|0)>0?(Op(i)|0)!=0:0){i=Op(k[f>>2]|0)|0;k[e>>2]=a;k[e+4>>2]=i;vc(0,139905,139914,e);h=0;r=c;return h|0}k[d>>2]=a;vc(0,139905,139921,d);h=0;r=c;return h|0}function me(a){a=a|0;var b=0;if(!a)b=0;else b=jr(a)|0;return b|0}function ne(a){a=a|0;kr(a);return}function oe(a,b){a=a|0;b=b|0;return lr(a,b)|0}function pe(a,b,c){a=a|0;b=b|0;c=c|0;qr(a|0,b&255|0,c|0)|0;return}function qe(a,b,c){a=a|0;b=b|0;c=c|0;wr(a|0,b|0,c|0)|0;return}function re(a,b,c){a=a|0;b=b|0;c=c|0;return Lq(a,b,c)|0}function se(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=a;if(!c){e=-1;return e|0}else f=0;while(1){a=c-f|0;g=Vq(d,b+f|0,(a|0)<0?2147483647:a)|0;if((g|0)<1){h=g;i=f;break}a=g+f|0;if(a>>>0<c>>>0)f=a;else{h=g;i=a;break}}e=(h|0)<0?-1:i;return e|0}function te(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=a;if(!c){e=-1;return e|0}else f=0;while(1){a=c-f|0;g=Wq(d,b+f|0,(a|0)<0?2147483647:a)|0;if((g|0)<1){h=g;i=f;break}a=g+f|0;if(a>>>0<c>>>0)f=a;else{h=g;i=a;break}}e=(h|0)<0?-1:i;return e|0}function ue(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if((b|0)==(b|0)&(((b|0)<0)<<31>>31|0)==(c|0)){c=Uq(a,b,d)|0;e=((c|0)<0)<<31>>31;f=c;L=e;return f|0}else{c=Np()|0;k[c>>2]=22;e=-1;f=-1;L=e;return f|0}return 0}function ve(a){a=a|0;return Tq(a)|0}function we(a){a=a|0;var b=0,c=0,d=0;b=r;r=r+80|0;c=b;d=(jq(a,c)|0)<0;a=k[c+36>>2]|0;L=d?0:((a|0)<0)<<31>>31;r=b;return (d?0:a)|0}function xe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=r;r=r+80|0;e=d;f=a;a=(jq(f,e)|0)<0;g=k[e+36>>2]|0;e=a?0:g;h=a?0:((g|0)<0)<<31>>31;if(!((e|0)==(e|0)&(((e|0)<0)<<31>>31|0)==(h|0))){i=0;r=d;return i|0}g=cq(0,e,1,1,f,0)|0;k[b>>2]=g;if((g|0)==(-1|0)){i=0;r=d;return i|0}g=c;k[g>>2]=e;k[g+4>>2]=h;i=1;r=d;return i|0}function ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;dq(b,c)|0;return}function ze(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+16|0;e=d;f=k[30710]|0;if(a){k[e>>2]=a;wq(f,139937,e)|0}zq(139945,9,1,f)|0;Dq(f,b,c)|0;zq(139942,2,1,f)|0;r=d;return}function Ae(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+16|0;e=d;f=k[30710]|0;if(a){k[e>>2]=a;wq(f,139937,e)|0}Dq(f,b,c)|0;zq(139942,2,1,f)|0;r=d;return}function Be(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;e=r;r=r+16|0;f=e;g=ha(c,b)|0;if((c|0)!=0?((g>>>0)/(c>>>0)|0|0)!=(b|0):0){b=k[a+628>>2]|0;k[f>>2]=d;vc(b,d,139955,f);h=0}else h=g;r=e;return h|0}function Ce(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0;g=r;r=r+16|0;h=g;i=Dr(d|0,e|0,b|0,c|0)|0;j=L;if(!((d|0)==0&(e|0)==0)?(l=Er(i|0,j|0,d|0,e|0)|0,!((l|0)==(b|0)&(L|0)==(c|0))):0){c=k[a+628>>2]|0;k[h>>2]=f;vc(c,f,139955,h);m=0;n=0}else{m=j;n=i}L=m;r=g;return n|0}function De(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;f=r;r=r+16|0;g=f;if((c|0)!=0&(d|0)!=0?(h=oe(b,ha(d,c)|0)|0,(h|0)!=0):0){i=h;r=f;return i|0}h=k[a+628>>2]|0;b=k[a>>2]|0;k[g>>2]=e;k[g+4>>2]=c;k[g+8>>2]=d;vc(h,b,139978,g);i=0;r=f;return i|0}function Ee(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;e=r;r=r+16|0;f=e;if((b|0)!=0&(c|0)!=0?(g=oe(0,ha(c,b)|0)|0,(g|0)!=0):0){h=g;r=e;return h|0}g=k[a+628>>2]|0;i=k[a>>2]|0;k[f>>2]=d;k[f+4>>2]=b;k[f+8>>2]=c;vc(g,i,139978,f);h=0;r=e;return h|0}
function Qf(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,m=0,n=0,o=0,p=0,q=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,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,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,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0,Kd=0,Ld=0,Md=0,Nd=0,Od=0,Pd=0,Qd=0,Rd=0,Sd=0,Td=0,Ud=0,Vd=0,Wd=0,Xd=0,Yd=0,Zd=0,_d=0,$d=0,ae=0,be=0,ce=0,de=0,ee=0,fe=0,ge=0,he=0,je=0,ke=0,le=0,me=0,ne=0,oe=0,pe=0,qe=0,re=0,se=0,te=0,ue=0,ve=0,we=0,xe=0,ye=0,ze=0,Ae=0,Be=0,Ce=0,De=0,Ee=0,Fe=0,Ge=0,He=0,Ie=0,Je=0,Ke=0,Le=0,Me=0,Ne=0,Oe=0,Pe=0,Qe=0,Re=0,Se=0,Te=0,Ue=0,Ve=0,We=0,Xe=0,Ye=0,Ze=0,_e=0,$e=0,af=0,bf=0,cf=0,df=0,ef=0,ff=0,gf=0,hf=0,jf=0,kf=0,lf=0,mf=0,nf=0,of=0,pf=0,qf=0,rf=0,sf=0,tf=0,uf=0,vf=0,wf=0,xf=0,yf=0,zf=0,Af=0,Bf=0,Cf=0,Df=0,Ef=0,Ff=0,Gf=0,Hf=0,If=0,Jf=0,Kf=0,Lf=0,Mf=0,Nf=0,Of=0,Pf=0,Qf=0,Rf=0,Sf=0,Tf=0,Uf=0,Vf=0;d=r;r=r+288|0;e=d+264|0;f=d+240|0;g=d+216|0;h=d+200|0;i=d+184|0;j=d+168|0;m=d+152|0;n=d+136|0;o=d+120|0;p=d+104|0;q=d+80|0;s=d+56|0;t=d+40|0;u=d+24|0;v=d+8|0;w=k[a+576>>2]|0;x=k[w+12>>2]|0;y=k[w+44>>2]|0;z=w+8|0;if((c|0)%(k[z>>2]|0)|0){vc(k[a+628>>2]|0,144240,153793,d);A=-1;r=d;return A|0}B=w+48|0;C=k[B>>2]|0;D=w+52|0;E=k[D>>2]|0;F=w+56|0;G=k[F>>2]|0;H=a+604|0;I=k[H>>2]|0;J=a+608|0;K=k[J>>2]|0;L=I+K|0;a:do if((c|0)>0){M=w+72|0;N=w+68|0;O=(x|0)>0;P=w+92|0;Q=a+628|0;R=a+12|0;S=a+492|0;T=a+452|0;U=w+60|0;V=b;W=c;X=k[M>>2]|0;Y=C;Z=E;_=G;$=I;b:while(1){c:do if(!_){aa=Y;ba=Z;ca=$;while(1){do if((ba|0)<11){if(ca>>>0>=L>>>0)if(!ba){da=V;ea=X;fa=aa;ga=0;ha=ca;ia=186;break b}else{ja=aa;ka=11;la=ca;break}ma=ca+1|0;na=(l[y+(l[ca>>0]|0)>>0]|0)<<ba|aa;oa=ba+8|0;if((oa|0)<11)if(ma>>>0<L>>>0){ja=(l[y+(l[ma>>0]|0)>>0]|0)<<oa|na;ka=ba+16|0;la=ca+2|0}else{ja=na;ka=11;la=ma}else{ja=na;ka=oa;la=ma}}else{ja=aa;ka=ba;la=ca}while(0);if(!(ja&2047)){pa=ja;qa=ka;ra=la;break c}aa=ja>>>1;ba=ka+-1|0;ca=la}}else{pa=Y;qa=Z;ra=$}while(0);while(1){do if((qa|0)<8)if(ra>>>0>=L>>>0)if(!qa){da=V;ea=X;fa=pa;ga=_;ha=ra;ia=186;break b}else{sa=pa;ta=8;ua=ra;break}else{sa=(l[y+(l[ra>>0]|0)>>0]|0)<<qa|pa;ta=qa+8|0;ua=ra+1|0;break}else{sa=pa;ta=qa;ua=ra}while(0);if(sa&255){va=sa;wa=ta;xa=ua;break}pa=sa>>>8;qa=ta+-8|0;ra=ua}ca=va;ba=wa;while(1){aa=ba+-1|0;ma=ca>>>1;if(!(ca&1)){ca=ma;ba=aa}else{ya=aa;za=ma;Aa=ba;break}}do if((Aa|0)<2)if(xa>>>0>=L>>>0)if(!ya){da=V;ea=X;fa=za;ga=0;ha=xa;ia=186;break b}else{Ba=za;Ca=1;Da=xa;break}else{Ba=(l[y+(l[xa>>0]|0)>>0]|0)<<ya|za;Ca=Aa+7|0;Da=xa+1|0;break}else{Ba=za;Ca=ya;Da=xa}while(0);ba=Ca+-1|0;ca=Ba>>>1;ma=k[N>>2]|0;aa=ma+4|0;oa=k[ma>>2]|0;do if(!(Ba&1)){d:do if(O){ma=X;na=ca;Ea=ba;Fa=0;Ga=0;Ha=oa;Ia=Da;Ja=X;Ka=aa;e:while(1){La=(Ja|0)==(X|0);f:do if(La){Ma=na;Na=Ea;Oa=0;Pa=Fa;Qa=Ga;Ra=Ha;Sa=Ia;Ta=Ka;while(1){do if((Na|0)<7)if(Sa>>>0>=L>>>0)if(!Na){Ua=V;Va=X;Wa=Ma;Xa=0;Ya=Oa;Za=Qa;_a=Sa;$a=X;ia=154;break b}else{ab=Ma;bb=7;cb=Sa;break}else{ab=(l[y+(l[Sa>>0]|0)>>0]|0)<<Na|Ma;bb=Na+8|0;cb=Sa+1|0;break}else{ab=Ma;bb=Na;cb=Sa}while(0);db=ab&127;eb=l[8280+(db<<3)+1>>0]|0;fb=bb-eb|0;gb=ab>>>eb;switch(l[8280+(db<<3)>>0]|0|0){case 6:{hb=fb;ib=gb;jb=Oa;kb=Qa;lb=cb;mb=X;ia=143;break e;break}case 12:{nb=eb;ob=fb;pb=gb;qb=bb;rb=Oa;sb=Qa;tb=cb;ub=X;ia=144;break e;break}case 2:{vb=fb;wb=gb;xb=Oa;yb=Qa;zb=Ra;Bb=cb;Cb=Ta;ia=88;break f;break}case 3:{Db=fb;Eb=gb;Fb=Oa;Gb=Qa;Hb=Pa;Ib=Ra;Jb=cb;Kb=Ta;ia=128;break f;break}case 4:{Lb=db;Mb=fb;Nb=gb;Ob=Oa;Pb=Qa;Qb=Pa;Rb=Ra;Sb=cb;Tb=Ta;ia=132;break f;break}case 5:{Ub=db;Vb=fb;Wb=gb;Xb=Oa;Yb=Qa;Zb=Ra;_b=cb;$b=Ta;ia=136;break f;break}case 1:break;default:{ac=gb;bc=fb;cc=Oa;dc=Qa;ec=cb;fc=X;ia=151;break e}}db=(k[Ta>>2]|0)+Ra|0;eb=Pa+Oa+db|0;if((x|0)>(db|0)){Ma=gb;Na=fb;Oa=eb;Pa=0-db|0;Qa=db;Ra=db+(k[Ta+4>>2]|0)|0;Sa=cb;Ta=Ta+8|0}else{gc=gb;hc=fb;ic=eb;jc=db;kc=cb;lc=X;ia=165;break e}}}else{Ta=na;Sa=Ea;Ra=0;Qa=Fa;Pa=Ga;Oa=Ha;Na=Ia;Ma=Ka;while(1){do if((Sa|0)<7)if(Na>>>0>=L>>>0)if(!Sa){Ua=V;Va=X;Wa=Ta;Xa=0;Ya=Ra;Za=Pa;_a=Na;$a=Ja;ia=154;break b}else{mc=Ta;nc=7;oc=Na;break}else{mc=(l[y+(l[Na>>0]|0)>>0]|0)<<Sa|Ta;nc=Sa+8|0;oc=Na+1|0;break}else{mc=Ta;nc=Sa;oc=Na}while(0);db=mc&127;eb=l[8280+(db<<3)+1>>0]|0;fb=nc-eb|0;gb=mc>>>eb;switch(l[8280+(db<<3)>>0]|0|0){case 6:{hb=fb;ib=gb;jb=Ra;kb=Pa;lb=oc;mb=Ja;ia=143;break e;break}case 12:{nb=eb;ob=fb;pb=gb;qb=nc;rb=Ra;sb=Pa;tb=oc;ub=Ja;ia=144;break e;break}case 2:{vb=fb;wb=gb;xb=Ra;yb=Pa;zb=Oa;Bb=oc;Cb=Ma;ia=88;break f;break}case 3:{Db=fb;Eb=gb;Fb=Ra;Gb=Pa;Hb=Qa;Ib=Oa;Jb=oc;Kb=Ma;ia=128;break f;break}case 4:{Lb=db;Mb=fb;Nb=gb;Ob=Ra;Pb=Pa;Qb=Qa;Rb=Oa;Sb=oc;Tb=Ma;ia=132;break f;break}case 5:{Ub=db;Vb=fb;Wb=gb;Xb=Ra;Yb=Pa;Zb=Oa;_b=oc;$b=Ma;ia=136;break f;break}case 1:break;default:{ac=gb;bc=fb;cc=Ra;dc=Pa;ec=oc;fc=Ja;ia=151;break e}}if((Oa|0)<=(Pa|0)&(Oa|0)<(x|0)){db=Oa;eb=Ma;while(1){pc=(k[eb>>2]|0)+db+(k[eb+4>>2]|0)|0;qc=eb+8|0;if((pc|0)<=(Pa|0)&(pc|0)<(x|0)){db=pc;eb=qc}else{rc=pc;sc=qc;break}}}else{rc=Oa;sc=Ma}eb=(k[sc>>2]|0)+rc|0;db=Qa+Ra+eb|0;if((x|0)>(eb|0)){Ta=gb;Sa=fb;Ra=db;Qa=0-eb|0;Pa=eb;Oa=eb+(k[sc+4>>2]|0)|0;Na=oc;Ma=sc+8|0}else{gc=gb;hc=fb;ic=db;jc=eb;kc=oc;lc=Ja;ia=165;break e}}}while(0);if((ia|0)==88){ia=0;if(!(Ja-ma&4)){Ma=wb;Na=vb;Oa=xb;Pa=yb;Qa=Bb;g:while(1){do if((Na|0)<12){if(Qa>>>0>=L>>>0)if(!Na){Ua=V;Va=X;Wa=Ma;Xa=0;Ya=Oa;Za=Pa;_a=Qa;$a=Ja;ia=154;break b}else{tc=Ma;uc=12;wc=Qa;break}Ra=Qa+1|0;Sa=(l[y+(l[Qa>>0]|0)>>0]|0)<<Na|Ma;Ta=Na+8|0;if((Ta|0)<12){if(Ra>>>0>=L>>>0){tc=Sa;uc=12;wc=Ra;break}tc=(l[y+(l[Ra>>0]|0)>>0]|0)<<Ta|Sa;uc=Na+16|0;wc=Qa+2|0}else{tc=Sa;uc=Ta;wc=Ra}}else{tc=Ma;uc=Na;wc=Qa}while(0);Ra=tc&4095;Ta=l[9304+(Ra<<3)+1>>0]|0;Sa=uc-Ta|0;eb=tc>>>Ta;switch(l[9304+(Ra<<3)>>0]|0|0){case 7:{xc=Ra;yc=Sa;zc=eb;Ac=Oa;Bc=Pa;Cc=wc;break g;break}case 11:case 9:break;default:{Dc=eb;Ec=Sa;Fc=Oa;Gc=Pa;Hc=wc;Ic=Ja;ia=153;break e}}Ta=k[9304+(Ra<<3)+4>>2]|0;Ma=eb;Na=Sa;Oa=Ta+Oa|0;Pa=Ta+Pa|0;Qa=wc}Qa=k[9304+(xc<<3)+4>>2]|0;Pa=Ja+4|0;k[Ja>>2]=Qa+Ac;Oa=zc;Na=yc;Ma=0;Ta=Qa+Bc|0;Qa=Cc;h:while(1){do if((Na|0)<13){if(Qa>>>0>=L>>>0)if(!Na){Ua=V;Va=X;Wa=Oa;Xa=0;Ya=Ma;Za=Ta;_a=Qa;$a=Pa;ia=154;break b}else{Jc=Oa;Kc=13;Lc=Qa;break}Sa=Qa+1|0;eb=(l[y+(l[Qa>>0]|0)>>0]|0)<<Na|Oa;Ra=Na+8|0;if((Ra|0)<13){if(Sa>>>0>=L>>>0){Jc=eb;Kc=13;Lc=Sa;break}Jc=(l[y+(l[Sa>>0]|0)>>0]|0)<<Ra|eb;Kc=Na+16|0;Lc=Qa+2|0}else{Jc=eb;Kc=Ra;Lc=Sa}}else{Jc=Oa;Kc=Na;Lc=Qa}while(0);Sa=Jc&8191;Ra=l[42072+(Sa<<3)+1>>0]|0;eb=Kc-Ra|0;db=Jc>>>Ra;switch(l[42072+(Sa<<3)>>0]|0|0){case 8:{Mc=Sa;Nc=eb;Oc=db;Pc=Ma;Qc=Ta;Rc=Lc;break h;break}case 11:case 10:break;default:{Sc=db;Tc=eb;Uc=Ma;Vc=Ta;Wc=Lc;Xc=Pa;ia=152;break e}}Ra=k[42072+(Sa<<3)+4>>2]|0;Oa=db;Na=eb;Ma=Ra+Ma|0;Ta=Ra+Ta|0;Qa=Lc}Qa=k[42072+(Mc<<3)+4>>2]|0;k[Pa>>2]=Qa+Pc;Yc=Oc;Zc=Nc;_c=Qa+Qc|0;$c=Rc}else{Qa=wb;Ta=vb;Ma=xb;Na=yb;Oa=Bb;i:while(1){do if((Ta|0)<13){if(Oa>>>0>=L>>>0)if(!Ta){Ua=V;Va=X;Wa=Qa;Xa=0;Ya=Ma;Za=Na;_a=Oa;$a=Ja;ia=154;break b}else{ad=Qa;bd=13;cd=Oa;break}Ra=Oa+1|0;eb=(l[y+(l[Oa>>0]|0)>>0]|0)<<Ta|Qa;db=Ta+8|0;if((db|0)<13){if(Ra>>>0>=L>>>0){ad=eb;bd=13;cd=Ra;break}ad=(l[y+(l[Ra>>0]|0)>>0]|0)<<db|eb;bd=Ta+16|0;cd=Oa+2|0}else{ad=eb;bd=db;cd=Ra}}else{ad=Qa;bd=Ta;cd=Oa}while(0);Ra=ad&8191;db=l[42072+(Ra<<3)+1>>0]|0;eb=bd-db|0;Sa=ad>>>db;switch(l[42072+(Ra<<3)>>0]|0|0){case 8:{dd=Ra;ed=eb;fd=Sa;gd=Ma;hd=Na;id=cd;break i;break}case 11:case 10:break;default:{Sc=Sa;Tc=eb;Uc=Ma;Vc=Na;Wc=cd;Xc=Ja;ia=152;break e}}db=k[42072+(Ra<<3)+4>>2]|0;Qa=Sa;Ta=eb;Ma=db+Ma|0;Na=db+Na|0;Oa=cd}Oa=k[42072+(dd<<3)+4>>2]|0;Na=Ja+4|0;k[Ja>>2]=Oa+gd;Ma=fd;Ta=ed;Qa=0;Pa=Oa+hd|0;Oa=id;j:while(1){do if((Ta|0)<12){if(Oa>>>0>=L>>>0)if(!Ta){Ua=V;Va=X;Wa=Ma;Xa=0;Ya=Qa;Za=Pa;_a=Oa;$a=Na;ia=154;break b}else{jd=Ma;kd=12;ld=Oa;break}db=Oa+1|0;eb=(l[y+(l[Oa>>0]|0)>>0]|0)<<Ta|Ma;Sa=Ta+8|0;if((Sa|0)<12){if(db>>>0>=L>>>0){jd=eb;kd=12;ld=db;break}jd=(l[y+(l[db>>0]|0)>>0]|0)<<Sa|eb;kd=Ta+16|0;ld=Oa+2|0}else{jd=eb;kd=Sa;ld=db}}else{jd=Ma;kd=Ta;ld=Oa}while(0);db=jd&4095;Sa=l[9304+(db<<3)+1>>0]|0;eb=kd-Sa|0;Ra=jd>>>Sa;switch(l[9304+(db<<3)>>0]|0|0){case 7:{md=db;nd=eb;od=Ra;pd=Qa;qd=Pa;rd=ld;break j;break}case 11:case 9:break;default:{Dc=Ra;Ec=eb;Fc=Qa;Gc=Pa;Hc=ld;Ic=Na;ia=153;break e}}Sa=k[9304+(db<<3)+4>>2]|0;Ma=Ra;Ta=eb;Qa=Sa+Qa|0;Pa=Sa+Pa|0;Oa=ld}Oa=k[9304+(md<<3)+4>>2]|0;k[Na>>2]=Oa+pd;Yc=od;Zc=nd;_c=Oa+qd|0;$c=rd}Oa=Ja+8|0;if((Oa|0)!=(X|0))if((zb|0)<=(_c|0)&(zb|0)<(x|0)){Pa=zb;Qa=Cb;while(1){Ta=(k[Qa>>2]|0)+Pa+(k[Qa+4>>2]|0)|0;Ma=Qa+8|0;if((Ta|0)<=(_c|0)&(Ta|0)<(x|0)){Pa=Ta;Qa=Ma}else{sd=Yc;td=Zc;ud=_c;vd=Ta;wd=$c;xd=Oa;yd=Ma;break}}}else{sd=Yc;td=Zc;ud=_c;vd=zb;wd=$c;xd=Oa;yd=Cb}else{sd=Yc;td=Zc;ud=_c;vd=zb;wd=$c;xd=X;yd=Cb}}else if((ia|0)==128){ia=0;if(!La?(Ib|0)<=(Gb|0)&(Ib|0)<(x|0):0){Qa=Ib;Pa=Kb;while(1){Na=(k[Pa>>2]|0)+Qa+(k[Pa+4>>2]|0)|0;Ma=Pa+8|0;if((Na|0)<=(Gb|0)&(Na|0)<(x|0)){Qa=Na;Pa=Ma}else{zd=Na;Ad=Ma;break}}}else{zd=Ib;Ad=Kb}k[Ja>>2]=Hb+Fb+zd;sd=Eb;td=Db;ud=zd;vd=(k[Ad>>2]|0)+zd|0;wd=Jb;xd=Ja+4|0;yd=Ad+4|0}else if((ia|0)==132){ia=0;if(!La?(Rb|0)<=(Pb|0)&(Rb|0)<(x|0):0){Pa=Rb;Qa=Tb;while(1){Oa=(k[Qa>>2]|0)+Pa+(k[Qa+4>>2]|0)|0;Ma=Qa+8|0;if((Oa|0)<=(Pb|0)&(Oa|0)<(x|0)){Pa=Oa;Qa=Ma}else{Bd=Oa;Cd=Ma;break}}}else{Bd=Rb;Cd=Tb}Qa=k[8280+(Lb<<3)+4>>2]|0;k[Ja>>2]=Qb+Ob+Bd+Qa;sd=Nb;td=Mb;ud=Qa+Bd|0;vd=(k[Cd>>2]|0)+Bd|0;wd=Sb;xd=Ja+4|0;yd=Cd+4|0}else if((ia|0)==136){ia=0;Qa=(Ja|0)!=(X|0);if(Qa?(Zb|0)<=(Yb|0)&(Zb|0)<(x|0):0){Pa=Zb;La=$b;while(1){Ma=(k[La>>2]|0)+Pa+(k[La+4>>2]|0)|0;Oa=La+8|0;if((Ma|0)<=(Yb|0)&(Ma|0)<(x|0)){Pa=Ma;La=Oa}else{Dd=Ma;Ed=Oa;break}}}else{Dd=Zb;Ed=$b}La=k[8280+(Ub<<3)+4>>2]|0;Pa=La+Yb|0;if((Dd|0)<=(Pa|0)&(Qa|(Dd|0)<(Pa|0))){Fd=Vb;Gd=Wb;Hd=Xb;Id=Yb;Jd=_b;Kd=Ja;ia=140;break}k[Ja>>2]=Dd-Yb+Xb-La;Pa=Ed+-4|0;sd=Wb;td=Vb;ud=Dd-La|0;vd=Dd-(k[Pa>>2]|0)|0;wd=_b;xd=Ja+4|0;yd=Pa}if((x|0)>(ud|0)){na=sd;Ea=td;Fa=0-ud|0;Ga=ud;Ha=vd;Ia=wd;Ja=xd;Ka=yd}else{Ld=sd;Md=td;Nd=0;Od=ud;Pd=wd;Qd=xd;break d}}do if((ia|0)==140){ia=0;Ka=k[Q>>2]|0;Ja=(k[R>>2]&1024|0)!=0;Ia=k[(Ja?S:T)>>2]|0;k[p>>2]=k[P>>2];k[p+4>>2]=Ja?142996:143001;k[p+8>>2]=Ia;k[p+12>>2]=Id;vc(Ka,144240,143007,p);Rd=Gd;Sd=Fd;Td=0;Ud=Hd;Vd=Id;Wd=Jd;Xd=Kd}else if((ia|0)==143){ia=0;k[mb>>2]=x-kb;Ka=k[Q>>2]|0;Ia=(k[R>>2]&1024|0)!=0;Ja=k[(Ia?S:T)>>2]|0;k[o>>2]=k[P>>2];k[o+4>>2]=Ia?142996:143001;k[o+8>>2]=Ja;k[o+12>>2]=kb;vc(Ka,144240,143800,o);Rd=ib;Sd=hb;Td=0;Ud=jb;Vd=kb;Wd=lb;Xd=mb+4|0}else if((ia|0)==144){ia=0;Ka=ub+4|0;k[ub>>2]=x-sb;do if((ob|0)<4)if(tb>>>0>=L>>>0)if((qb|0)==(nb|0)){Ua=V;Va=X;Wa=pb;Xa=ob;Ya=rb;Za=sb;_a=tb;$a=Ka;ia=154;break b}else{Yd=pb;Zd=4;_d=tb;break}else{Yd=(l[y+(l[tb>>0]|0)>>0]|0)<<ob|pb;Zd=ob+8|0;_d=tb+1|0;break}else{Yd=pb;Zd=ob;_d=tb}while(0);if(Yd&15){Qa=k[Q>>2]|0;Ja=(k[R>>2]&1024|0)!=0;Ia=k[(Ja?S:T)>>2]|0;k[n>>2]=k[P>>2];k[n+4>>2]=Ja?142996:143001;k[n+8>>2]=Ia;k[n+12>>2]=sb;vc(Qa,144240,143007,n)}Rd=Yd>>>4;Sd=Zd+-4|0;Td=1;Ud=rb;Vd=sb;Wd=_d;Xd=Ka}else if((ia|0)==152){ia=0;Qa=k[Q>>2]|0;Ia=(k[R>>2]&1024|0)!=0;Ja=k[(Ia?S:T)>>2]|0;k[j>>2]=k[P>>2];k[j+4>>2]=Ia?142996:143001;k[j+8>>2]=Ja;k[j+12>>2]=Vc;vc(Qa,144240,143007,j);Rd=Sc;Sd=Tc;Td=0;Ud=Uc;Vd=Vc;Wd=Wc;Xd=Xc}else if((ia|0)==153){ia=0;Qa=k[Q>>2]|0;Ja=(k[R>>2]&1024|0)!=0;Ia=k[(Ja?S:T)>>2]|0;k[i>>2]=k[P>>2];k[i+4>>2]=Ja?142996:143001;k[i+8>>2]=Ia;k[i+12>>2]=Gc;vc(Qa,144240,143007,i);Rd=Dc;Sd=Ec;Td=0;Ud=Fc;Vd=Gc;Wd=Hc;Xd=Ic}else if((ia|0)==165){ia=0;if(!ic){Ld=gc;Md=hc;Nd=0;Od=jc;Pd=kc;Qd=lc;break d}if((jc+ic|0)<(x|0)){do if((hc|0)<1)if(kc>>>0>=L>>>0)if(!hc){Ua=V;Va=X;Wa=gc;Xa=0;Ya=ic;Za=jc;_a=kc;$a=lc;ia=154;break b}else{$d=gc;ae=1;be=kc;break}else{$d=(l[y+(l[kc>>0]|0)>>0]|0)<<hc|gc;ae=hc+8|0;be=kc+1|0;break}else{$d=gc;ae=hc;be=kc}while(0);if(!($d&1)){ac=$d;bc=ae;cc=ic;dc=jc;ec=be;fc=lc;ia=151;break}ce=$d>>>1;de=ae+-1|0;ee=be}else{ce=gc;de=hc;ee=kc}k[lc>>2]=ic;Ld=ce;Md=de;Nd=0;Od=jc;Pd=ee;Qd=lc+4|0;break d}while(0);if((ia|0)==151){ia=0;Ka=k[Q>>2]|0;Qa=(k[R>>2]&1024|0)!=0;Ia=k[(Qa?S:T)>>2]|0;k[m>>2]=k[P>>2];k[m+4>>2]=Qa?142996:143001;k[m+8>>2]=Ia;k[m+12>>2]=dc;vc(Ka,144240,143007,m);Rd=ac;Sd=bc;Td=0;Ud=cc;Vd=dc;Wd=ec;Xd=fc}if(!Ud){Ld=Rd;Md=Sd;Nd=Td;Od=Vd;Pd=Wd;Qd=Xd}else{k[Xd>>2]=Ud;Ld=Rd;Md=Sd;Nd=Td;Od=Vd;Pd=Wd;Qd=Xd+4|0}}else{Ld=ca;Md=ba;Nd=0;Od=0;Pd=Da;Qd=X}while(0);if((Od|0)==(x|0)){fe=Ld;ge=Md;he=Nd;je=Pd;ke=Qd}else{Ka=k[P>>2]|0;Ia=k[Q>>2]|0;Qa=(k[R>>2]&1024|0)!=0;Ja=k[(Qa?S:T)>>2]|0;k[f>>2]=Od>>>0<x>>>0?143089:143103;k[f+4>>2]=Ka;k[f+8>>2]=Qa?142996:143001;k[f+12>>2]=Ja;k[f+16>>2]=Od;k[f+20>>2]=x;ie(Ia,144240,143124,f);Ia=(Od|0)>(x|0);if(Qd>>>0>X>>>0&Ia){Ja=Od;Qa=Qd;while(1){Ka=Qa+-4|0;Ha=Ja-(k[Ka>>2]|0)|0;Ga=(Ha|0)>(x|0);if(Ka>>>0>X>>>0&Ga){Ja=Ha;Qa=Ka}else{le=Ga;me=Ha;ne=Ka;break}}}else{le=Ia;me=Od;ne=Qd}if((me|0)>=(x|0)){if(!le){fe=Ld;ge=Md;he=Nd;je=Pd;ke=ne;break}k[ne>>2]=x;k[ne+4>>2]=0;fe=Ld;ge=Md;he=Nd;je=Pd;ke=ne+8|0;break}if(!(ne-X&4))oe=ne;else{k[ne>>2]=0;oe=ne+4|0}k[oe>>2]=x-((me|0)<0?0:me);fe=Ld;ge=Md;he=Nd;je=Pd;ke=oe+4|0}}else{Qa=ca;Ja=ba;Ka=0;Ha=Da;Ga=X;k:while(1){Fa=Qa;Ea=Ja;na=0;ma=Ka;Pa=Ha;l:while(1){do if((Ea|0)<12){if(Pa>>>0>=L>>>0)if(!Ea){pe=V;qe=X;re=Fa;se=na;te=ma;ue=Pa;ve=Ga;ia=51;break b}else{we=Fa;xe=12;ye=Pa;break}La=Pa+1|0;Oa=(l[y+(l[Pa>>0]|0)>>0]|0)<<Ea|Fa;Ma=Ea+8|0;if((Ma|0)<12)if(La>>>0<L>>>0){we=(l[y+(l[La>>0]|0)>>0]|0)<<Ma|Oa;xe=Ea+16|0;ye=Pa+2|0}else{we=Oa;xe=12;ye=La}else{we=Oa;xe=Ma;ye=La}}else{we=Fa;xe=Ea;ye=Pa}while(0);La=we&4095;Ma=l[9304+(La<<3)+1>>0]|0;Oa=xe-Ma|0;Na=we>>>Ma;switch(l[9304+(La<<3)>>0]|0|0){case 12:{ze=Na;Ae=Oa;Be=1;Ce=na;De=ma;Ee=ye;Fe=Ga;ia=62;break k;break}case 7:{Ge=La;He=Oa;Ie=Na;Je=na;Ke=ma;Le=ye;break l;break}case 11:case 9:break;default:{Me=Oa;Ne=Na;Oe=na;Pe=ma;Qe=ye;Re=Ga;ia=38;break k}}Ma=k[9304+(La<<3)+4>>2]|0;Fa=Na;Ea=Oa;na=Ma+na|0;ma=Ma+ma|0;Pa=ye}Pa=k[9304+(Ge<<3)+4>>2]|0;ma=Pa+Je|0;na=Ga+4|0;k[Ga>>2]=ma;Ea=Pa+Ke|0;if((Ea|0)<(x|0)){Se=Ie;Te=He;Ue=0;Ve=Ea;We=Le}else{Xe=Ie;Ye=He;Ze=0;_e=Ea;$e=Le;af=na;break}m:while(1){do if((Te|0)<13){if(We>>>0>=L>>>0)if(!Te){pe=V;qe=X;re=Se;se=Ue;te=Ve;ue=We;ve=na;ia=51;break b}else{bf=Se;cf=13;df=We;break}Ea=We+1|0;Pa=(l[y+(l[We>>0]|0)>>0]|0)<<Te|Se;Fa=Te+8|0;if((Fa|0)<13)if(Ea>>>0<L>>>0){bf=(l[y+(l[Ea>>0]|0)>>0]|0)<<Fa|Pa;cf=Te+16|0;df=We+2|0}else{bf=Pa;cf=13;df=Ea}else{bf=Pa;cf=Fa;df=Ea}}else{bf=Se;cf=Te;df=We}while(0);Ea=bf&8191;Fa=l[42072+(Ea<<3)+1>>0]|0;Pa=cf-Fa|0;Ma=bf>>>Fa;switch(l[42072+(Ea<<3)>>0]|0|0){case 12:{ze=Ma;Ae=Pa;Be=1;Ce=Ue;De=Ve;Ee=df;Fe=na;ia=62;break k;break}case 8:{ef=Ea;ff=Pa;gf=Ma;hf=Ue;jf=Ve;kf=df;break m;break}case 11:case 10:break;default:{lf=Pa;mf=Ma;nf=na;of=Ue;pf=Ve;qf=df;ia=48;break k}}Fa=k[42072+(Ea<<3)+4>>2]|0;Se=Ma;Te=Pa;Ue=Fa+Ue|0;Ve=Fa+Ve|0;We=df}Fa=k[42072+(ef<<3)+4>>2]|0;Pa=Fa+hf|0;Ma=Ga+8|0;k[na>>2]=Pa;Ea=Fa+jf|0;if((Ea|0)>=(x|0)){Xe=gf;Ye=ff;Ze=0;_e=Ea;$e=kf;af=Ma;break}Qa=gf;Ja=ff;Ka=Ea;Ha=kf;Ga=(Pa|ma|0)==0?Ga:Ma}if((ia|0)==38){ia=0;Ga=k[Q>>2]|0;Ha=(k[R>>2]&1024|0)!=0;Ka=k[(Ha?S:T)>>2]|0;k[v>>2]=k[P>>2];k[v+4>>2]=Ha?142996:143001;k[v+8>>2]=Ka;k[v+12>>2]=Pe;vc(Ga,144240,143007,v);ze=Ne;Ae=Me;Be=0;Ce=Oe;De=Pe;Ee=Qe;Fe=Re;ia=62}else if((ia|0)==48){ia=0;Ga=k[Q>>2]|0;Ka=(k[R>>2]&1024|0)!=0;Ha=k[(Ka?S:T)>>2]|0;k[u>>2]=k[P>>2];k[u+4>>2]=Ka?142996:143001;k[u+8>>2]=Ha;k[u+12>>2]=pf;vc(Ga,144240,143007,u);ze=mf;Ae=lf;Be=0;Ce=of;De=pf;Ee=qf;Fe=nf;ia=62}if((ia|0)==62){ia=0;if(!Ce){Xe=ze;Ye=Ae;Ze=Be;_e=De;$e=Ee;af=Fe}else{k[Fe>>2]=Ce;Xe=ze;Ye=Ae;Ze=Be;_e=De;$e=Ee;af=Fe+4|0}}if((_e|0)==(x|0)){fe=Xe;ge=Ye;he=Ze;je=$e;ke=af}else{Ga=k[P>>2]|0;Ha=k[Q>>2]|0;Ka=(k[R>>2]&1024|0)!=0;Ja=k[(Ka?S:T)>>2]|0;k[q>>2]=_e>>>0<x>>>0?143089:143103;k[q+4>>2]=Ga;k[q+8>>2]=Ka?142996:143001;k[q+12>>2]=Ja;k[q+16>>2]=_e;k[q+20>>2]=x;ie(Ha,144240,143124,q);Ha=(_e|0)>(x|0);if(af>>>0>X>>>0&Ha){Ja=_e;Ka=af;while(1){Ga=Ka+-4|0;Qa=Ja-(k[Ga>>2]|0)|0;Ia=(Qa|0)>(x|0);if(Ga>>>0>X>>>0&Ia){Ja=Qa;Ka=Ga}else{rf=Ia;sf=Qa;tf=Ga;break}}}else{rf=Ha;sf=_e;tf=af}if((sf|0)>=(x|0)){if(!rf){fe=Xe;ge=Ye;he=Ze;je=$e;ke=tf;break}k[tf>>2]=x;k[tf+4>>2]=0;fe=Xe;ge=Ye;he=Ze;je=$e;ke=tf+8|0;break}if(!(tf-X&4))uf=tf;else{k[tf>>2]=0;uf=tf+4|0}k[uf>>2]=x-((sf|0)<0?0:sf);fe=Xe;ge=Ye;he=Ze;je=$e;ke=uf+4|0}}while(0);Ab[k[U>>2]&31](V,X,ke,x);k[ke>>2]=0;ba=k[M>>2]|0;X=k[N>>2]|0;k[M>>2]=X;k[N>>2]=ba;ba=k[z>>2]|0;W=W-ba|0;k[P>>2]=(k[P>>2]|0)+1;if((W|0)<=0){vf=fe;wf=ge;xf=he;yf=je;ia=190;break}else{V=V+ba|0;Y=fe;Z=ge;_=he;$=je}}do if((ia|0)==51){$=k[Q>>2]|0;_=(k[R>>2]&1024|0)!=0;Z=k[(_?S:T)>>2]|0;k[t>>2]=k[P>>2];k[t+4>>2]=_?142996:143001;k[t+8>>2]=Z;k[t+12>>2]=te;ie($,144240,143048,t);if(!se)zf=ve;else{k[ve>>2]=se;zf=ve+4|0}if((te|0)==(x|0)){Af=pe;Bf=qe;Cf=re;Df=0;Ef=0;Ff=ue;Gf=zf}else{$=k[P>>2]|0;Z=k[Q>>2]|0;_=(k[R>>2]&1024|0)!=0;Y=k[(_?S:T)>>2]|0;k[s>>2]=te>>>0<x>>>0?143089:143103;k[s+4>>2]=$;k[s+8>>2]=_?142996:143001;k[s+12>>2]=Y;k[s+16>>2]=te;k[s+20>>2]=x;ie(Z,144240,143124,s);Z=(te|0)>(x|0);if(zf>>>0>qe>>>0&Z){Y=te;_=zf;while(1){$=_+-4|0;V=Y-(k[$>>2]|0)|0;W=(V|0)>(x|0);if($>>>0>qe>>>0&W){Y=V;_=$}else{Hf=W;If=V;Jf=$;break}}}else{Hf=Z;If=te;Jf=zf}if((If|0)>=(x|0)){if(!Hf){Af=pe;Bf=qe;Cf=re;Df=0;Ef=0;Ff=ue;Gf=Jf;break}k[Jf>>2]=x;k[Jf+4>>2]=0;Af=pe;Bf=qe;Cf=re;Df=0;Ef=0;Ff=ue;Gf=Jf+8|0;break}if(!(Jf-qe&4))Kf=Jf;else{k[Jf>>2]=0;Kf=Jf+4|0}k[Kf>>2]=x-((If|0)<0?0:If);Af=pe;Bf=qe;Cf=re;Df=0;Ef=0;Ff=ue;Gf=Kf+4|0}}else if((ia|0)==154){_=k[Q>>2]|0;Y=(k[R>>2]&1024|0)!=0;$=k[(Y?S:T)>>2]|0;k[h>>2]=k[P>>2];k[h+4>>2]=Y?142996:143001;k[h+8>>2]=$;k[h+12>>2]=Za;ie(_,144240,143048,h);if(!Ya)Lf=$a;else{k[$a>>2]=Ya;Lf=$a+4|0}if((Za|0)==(x|0)){Af=Ua;Bf=Va;Cf=Wa;Df=Xa;Ef=0;Ff=_a;Gf=Lf}else{_=k[P>>2]|0;$=k[Q>>2]|0;Y=(k[R>>2]&1024|0)!=0;V=k[(Y?S:T)>>2]|0;k[g>>2]=Za>>>0<x>>>0?143089:143103;k[g+4>>2]=_;k[g+8>>2]=Y?142996:143001;k[g+12>>2]=V;k[g+16>>2]=Za;k[g+20>>2]=x;ie($,144240,143124,g);$=(Za|0)>(x|0);if(Lf>>>0>Va>>>0&$){V=Za;Y=Lf;while(1){_=Y+-4|0;W=V-(k[_>>2]|0)|0;N=(W|0)>(x|0);if(_>>>0>Va>>>0&N){V=W;Y=_}else{Mf=N;Nf=W;Of=_;break}}}else{Mf=$;Nf=Za;Of=Lf}if((Nf|0)>=(x|0)){if(!Mf){Af=Ua;Bf=Va;Cf=Wa;Df=Xa;Ef=0;Ff=_a;Gf=Of;break}k[Of>>2]=x;k[Of+4>>2]=0;Af=Ua;Bf=Va;Cf=Wa;Df=Xa;Ef=0;Ff=_a;Gf=Of+8|0;break}if(!(Of-Va&4))Pf=Of;else{k[Of>>2]=0;Pf=Of+4|0}k[Pf>>2]=x-((Nf|0)<0?0:Nf);Af=Ua;Bf=Va;Cf=Wa;Df=Xa;Ef=0;Ff=_a;Gf=Pf+4|0}}else if((ia|0)==186)if(x){Y=k[P>>2]|0;V=k[Q>>2]|0;Z=(k[R>>2]&1024|0)!=0;_=k[(Z?S:T)>>2]|0;k[e>>2]=143089;k[e+4>>2]=Y;k[e+8>>2]=Z?142996:143001;k[e+12>>2]=_;k[e+16>>2]=0;k[e+20>>2]=x;ie(V,144240,143124,e);V=ea+4|0;k[ea>>2]=x;if(O){Af=da;Bf=ea;Cf=fa;Df=0;Ef=ga;Ff=ha;Gf=V}else{k[V>>2]=0;Af=da;Bf=ea;Cf=fa;Df=0;Ef=ga;Ff=ha;Gf=ea+8|0}}else{Af=da;Bf=ea;Cf=fa;Df=0;Ef=ga;Ff=ha;Gf=ea}else if((ia|0)==190){Qf=k[H>>2]|0;Rf=k[J>>2]|0;Sf=vf;Tf=wf;Uf=xf;Vf=yf;break a}while(0);Ab[k[U>>2]&31](Af,Bf,Gf,x);k[D>>2]=Df;k[B>>2]=Cf;k[F>>2]=Ef;k[J>>2]=(k[H>>2]|0)-Ff+(k[J>>2]|0);k[H>>2]=Ff;A=-1;r=d;return A|0}else{Qf=I;Rf=K;Sf=C;Tf=E;Uf=G;Vf=I}while(0);k[D>>2]=Tf;k[B>>2]=Sf;k[F>>2]=Uf;k[J>>2]=Qf-Vf+Rf;k[H>>2]=Vf;A=1;r=d;return A|0}function Rf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+32|0;if((b|0)!=7)Ja(144620,144647,2307,144658);if(!(_b(a,107608,4)|0)){vc(k[a+628>>2]|0,144658,144671,c);d=0;r=c;return d|0}b=me(936)|0;e=a+576|0;k[e>>2]=b;if(!b){vc(k[a+628>>2]|0,144658,144711,c+8|0);d=0;r=c;return d|0}pe(b,0,936);b=k[e>>2]|0;k[b+828>>2]=a;e=a+668|0;f=a+672|0;k[b+892>>2]=k[f>>2];k[f>>2]=13;k[b+896>>2]=k[e>>2];k[e>>2]=14;e=a+676|0;k[b+900>>2]=k[e>>2];k[e>>2]=10;e=b+912|0;k[e>>2]=0;f=b+916|0;k[f>>2]=0;k[b+920>>2]=75;k[b+924>>2]=0;k[b+928>>2]=3;k[b+932>>2]=0;k[a+504>>2]=12;k[a+508>>2]=13;k[a+512>>2]=26;k[a+532>>2]=20;k[a+540>>2]=20;k[a+548>>2]=20;k[a+516>>2]=14;k[a+524>>2]=27;k[a+528>>2]=15;k[a+536>>2]=21;k[a+544>>2]=21;k[a+552>>2]=21;k[a+564>>2]=4;g=a+568|0;k[b+904>>2]=k[g>>2];k[g>>2]=28;g=a+572|0;k[b+908>>2]=k[g>>2];k[g>>2]=11;g=a+12|0;k[g>>2]=k[g>>2]|256;k[b+488>>2]=0;b=a+16|0;if(!((k[b>>2]|0)==0&(k[b+4>>2]|0)==0)){d=1;r=c;return d|0}k[f>>2]=2e3;f=me(2e3)|0;k[e>>2]=f;if(!f){vc(k[a+628>>2]|0,144658,144741,c+16|0);d=0;r=c;return d|0}else{pe(f,0,2e3);d=1;r=c;return d|0}return 0}function Sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=k[a+576>>2]|0;if(!d)Ja(154187,144647,2186,146558);a:do if((b|0)<65538)if((b|0)<65537){switch(b|0){case 347:break;default:break a}e=k[d+916>>2]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[g>>2]=e;e=k[d+912>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);f=k[g>>2]|0;k[c>>2]=g+4;k[f>>2]=e;h=1;return h|0}else{switch(b|0){case 65537:break;default:break a}e=k[d+920>>2]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[g>>2]=e;h=1;return h|0}else switch(b|0){case 65538:{e=k[d+924>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);f=k[g>>2]|0;k[c>>2]=g+4;k[f>>2]=e;h=1;return h|0}case 65539:{e=k[d+928>>2]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[g>>2]=e;h=1;return h|0}default:break a}while(0);h=nb[k[d+892>>2]&63](a,b,c)|0;return h|0}function Tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0;d=a+576|0;e=k[d>>2]|0;if(!e)Ja(154187,144647,2132,146544);a:do if((b|0)<65537)switch(b|0){case 347:{f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;if(!g){h=0;return h|0}f=(k[c>>2]|0)+(4-1)&~(4-1);i=k[f>>2]|0;k[c>>2]=f+4;Nb(e+912|0,i,g);k[e+916>>2]=g;g=a+48|0;k[g>>2]=k[g>>2]|4;g=cc(a,347)|0;if(!g){h=0;return h|0}i=j[g+24>>1]|0;g=a+40+(((i&65535)>>>5&65535)<<2)|0;k[g>>2]=1<<(i&31)|k[g>>2];g=a+12|0;k[g>>2]=k[g>>2]|8;h=1;return h|0}case 262:{g=nb[k[e+896>>2]&63](a,262,c)|0;i=k[d>>2]|0;f=a+12|0;l=k[f>>2]|0;m=l&-16385;k[f>>2]=m;if(((j[a+126>>1]|0)==1?(j[a+90>>1]|0)==6:0)?(k[i+924>>2]|0)==1:0){i=l|16384;k[f>>2]=i;n=i}else n=m;m=a+496|0;if((k[m>>2]|0)>0){if(!(n&1024))o=-1;else o=ge(a)|0;k[m>>2]=o}m=a+580|0;if((k[m>>2]|0)<=0){h=g;return h|0}i=Pd(a)|0;k[m>>2]=i;h=g;return h|0}case 530:{k[e+932>>2]=1;h=nb[k[e+896>>2]&63](a,530,c)|0;return h|0}default:break a}else switch(b|0){case 65537:{g=(k[c>>2]|0)+(4-1)&~(4-1);i=k[g>>2]|0;k[c>>2]=g+4;k[e+920>>2]=i;h=1;return h|0}case 65538:{i=(k[c>>2]|0)+(4-1)&~(4-1);g=k[i>>2]|0;k[c>>2]=i+4;k[e+924>>2]=g;g=k[d>>2]|0;i=a+12|0;m=k[i>>2]|0;f=m&-16385;k[i>>2]=f;if(((j[a+126>>1]|0)==1?(j[a+90>>1]|0)==6:0)?(k[g+924>>2]|0)==1:0){g=m|16384;k[i>>2]=g;p=g}else p=f;f=a+496|0;if((k[f>>2]|0)>0){if(!(p&1024))q=-1;else q=ge(a)|0;k[f>>2]=q}f=a+580|0;if((k[f>>2]|0)<=0){h=1;return h|0}g=Pd(a)|0;k[f>>2]=g;h=1;return h|0}case 65539:{g=(k[c>>2]|0)+(4-1)&~(4-1);f=k[g>>2]|0;k[c>>2]=g+4;k[e+928>>2]=f;h=1;return h|0}default:break a}while(0);h=nb[k[e+896>>2]&63](a,b,c)|0;return h|0}function Uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+16|0;e=d;f=k[a+576>>2]|0;if(!f)Ja(154187,144647,2213,146503);if(k[a+48>>2]&4){k[e>>2]=k[f+916>>2];wq(b,146516,e)|0}e=k[f+900>>2]|0;if(!e){r=d;return}vb[e&127](a,b,c);r=d;return}function Vf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=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,M=0,N=0,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,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,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,yb=0,zb=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,_b=0;b=r;r=r+48|0;c=b+40|0;d=b+24|0;e=b+16|0;f=b+8|0;if((j[a+90>>1]|0)!=6){r=b;return 1}if((j[a+126>>1]|0)!=1){r=b;return 1}g=a+98|0;if((j[g>>1]|0)!=3){r=b;return 1}gc(a)|0;h=a+176|0;n=k[h>>2]|0;if(!n){r=b;return 1}o=a+172|0;if(!(k[o>>2]|0)){r=b;return 1}p=n;if((k[p>>2]|0)==0&(k[p+4>>2]|0)==0){r=b;return 1}p=me(2048)|0;if(!p){ie(k[a+628>>2]|0,145945,145970,b);r=b;return 1}n=k[o>>2]|0;o=k[n>>2]|0;q=k[n+4>>2]|0;n=k[h>>2]|0;h=k[n>>2]|0;s=k[n+4>>2]|0;a:do if(!((h|0)==0&(s|0)==0)){n=a+640|0;t=a+628|0;xb[k[n>>2]&63](k[t>>2]|0,o,q,0)|0;u=s>>>0<0|(s|0)==0&h>>>0<2048?h:2048;if((u|0)<=-1)Ja(146063,144647,902,146078);v=a+632|0;if((nb[k[v>>2]&63](k[t>>2]|0,p,u)|0)==(u|0)){w=sr(u|0,0,o|0,q|0)|0;x=L;y=pr(h|0,s|0,u|0,0)|0;z=u;u=p;A=p;B=1;C=y;y=L;D=w;w=x;b:while(1){x=A+1|0;E=x;F=z+-1|0;c:do if((i[u>>0]|0)==-1){G=F;H=E;I=C;J=y;K=B;M=D;N=w;O=x;while(1){if(!G){if((I|0)==0&(J|0)==0){P=t;Q=114;break a}if(!(K<<24>>24)){xb[k[n>>2]&63](k[t>>2]|0,M,N,0)|0;R=1}else R=K;S=J>>>0<0|(J|0)==0&I>>>0<2048?I:2048;if((S|0)<=-1){Q=31;break b}if((nb[k[v>>2]&63](k[t>>2]|0,p,S)|0)!=(S|0)){P=t;Q=114;break a}T=sr(S|0,0,M|0,N|0)|0;U=L;V=pr(I|0,J|0,S|0,0)|0;W=p;X=p;Y=S;Z=R;_=V;$=L;aa=T;ba=U}else{W=H;X=O;Y=G;Z=K;_=I;$=J;aa=M;ba=N}U=i[W>>0]|0;T=X+1|0;V=Y+-1|0;S=T;if(U<<24>>24==-1){G=V;H=S;I=_;J=$;K=Z;M=aa;N=ba;O=T}else{ca=Z;da=U;ea=T;fa=V;ga=S;ha=_;ia=$;ja=aa;ka=ba;break}}switch(da&255|0){case 202:case 201:case 194:case 193:case 192:{la=ca;ma=ea;na=fa;oa=ha;pa=ia;qa=ja;ra=ka;Q=58;break b;break}case 216:{sa=ea;ta=ca;ua=ha;va=ia;wa=ja;xa=ka;ya=fa;za=ga;Q=16;break c;break}case 221:case 196:case 218:case 219:case 239:case 238:case 237:case 236:case 235:case 234:case 233:case 232:case 231:case 230:case 229:case 228:case 227:case 226:case 225:case 224:case 254:break;default:{P=t;Q=114;break a}}if(!fa){if((ha|0)==0&(ia|0)==0){P=t;Q=114;break a}if(!(ca<<24>>24)){xb[k[n>>2]&63](k[t>>2]|0,ja,ka,0)|0;Aa=1}else Aa=ca;O=ia>>>0<0|(ia|0)==0&ha>>>0<2048?ha:2048;if((O|0)<=-1){Q=41;break b}if((nb[k[v>>2]&63](k[t>>2]|0,p,O)|0)!=(O|0)){P=t;Q=114;break a}N=sr(O|0,0,ja|0,ka|0)|0;M=L;K=pr(ha|0,ia|0,O|0,0)|0;Ba=p;Ca=O;Da=K;Ea=L;Fa=Aa;Ga=N;Ha=M}else{Ba=ea;Ca=fa;Da=ha;Ea=ia;Fa=ca;Ga=ja;Ha=ka}M=i[Ba>>0]|0;N=Ba+1|0;K=Ca+-1|0;if(!K){if((Da|0)==0&(Ea|0)==0){P=t;Q=114;break a}if(!(Fa<<24>>24)){xb[k[n>>2]&63](k[t>>2]|0,Ga,Ha,0)|0;Ia=1}else Ia=Fa;O=Ea>>>0<0|(Ea|0)==0&Da>>>0<2048?Da:2048;if((O|0)<=-1){Q=49;break b}if((nb[k[v>>2]&63](k[t>>2]|0,p,O)|0)!=(O|0)){P=t;Q=114;break a}J=sr(O|0,0,Ga|0,Ha|0)|0;I=L;H=pr(Da|0,Ea|0,O|0,0)|0;Ka=p;La=O;Ma=L;Na=H;Oa=J;Pa=I;Qa=Ia}else{Ka=N;La=K;Ma=Ea;Na=Da;Oa=Ga;Pa=Ha;Qa=Fa}K=Ka+1|0;N=La+-1|0;I=l[Ka>>0]|(M&255)<<8;if((I&65535)<2){P=t;Q=114;break a}M=I+65534|0;I=M&65535;if(!I){sa=K;ta=Qa;ua=Na;va=Ma;wa=Oa;xa=Pa;ya=N;za=K;Q=16}else{if(N>>>0>=I>>>0){K=Ka+(I+1)|0;sa=K;ta=Qa;ua=Na;va=Ma;wa=Oa;xa=Pa;ya=N-I|0;za=K;Q=16;break}K=M-N&65535;if(Ma>>>0<0|(Ma|0)==0&Na>>>0<K>>>0){P=t;Q=114;break a}N=sr(K|0,0,Oa|0,Pa|0)|0;M=L;I=pr(Na|0,Ma|0,K|0,0)|0;Ra=I;Sa=L;Ta=0;Ua=N;Va=M}}else{sa=x;ta=B;ua=C;va=y;wa=D;xa=w;ya=F;za=E;Q=16}while(0);if((Q|0)==16){Q=0;if(!ya){Ra=ua;Sa=va;Ta=ta;Ua=wa;Va=xa}else{z=ya;u=za;A=sa;B=ta;C=ua;y=va;D=wa;w=xa;continue}}if((Ra|0)==0&(Sa|0)==0){P=t;Q=114;break a}if(!(Ta<<24>>24)){xb[k[n>>2]&63](k[t>>2]|0,Ua,Va,0)|0;Wa=1}else Wa=Ta;E=Sa>>>0<0|(Sa|0)==0&Ra>>>0<2048?Ra:2048;if((E|0)<=-1){Q=22;break}if((nb[k[v>>2]&63](k[t>>2]|0,p,E)|0)!=(E|0)){P=t;Q=114;break a}F=sr(E|0,0,Ua|0,Va|0)|0;x=L;M=pr(Ra|0,Sa|0,E|0,0)|0;z=E;u=p;A=p;B=Wa;C=M;y=L;D=F;w=x}if((Q|0)==22)Ja(146063,144647,902,146078);else if((Q|0)==31)Ja(146063,144647,902,146078);else if((Q|0)==41)Ja(146063,144647,902,146078);else if((Q|0)==49)Ja(146063,144647,902,146078);else if((Q|0)==58){if(!na){if((oa|0)==0&(pa|0)==0){P=t;Q=114;break}if(!(la<<24>>24)){xb[k[n>>2]&63](k[t>>2]|0,qa,ra,0)|0;Xa=1}else Xa=la;w=pa>>>0<0|(pa|0)==0&oa>>>0<2048?oa:2048;if((w|0)<=-1)Ja(146063,144647,902,146078);if((nb[k[v>>2]&63](k[t>>2]|0,p,w)|0)!=(w|0)){P=t;Q=114;break}D=sr(w|0,0,qa|0,ra|0)|0;y=L;C=pr(oa|0,pa|0,w|0,0)|0;Ya=p;Za=w;_a=C;$a=L;ab=Xa;bb=D;cb=y}else{Ya=ma;Za=na;_a=oa;$a=pa;ab=la;bb=qa;cb=ra}y=i[Ya>>0]|0;D=Ya+1|0;C=Za+-1|0;if(!C){if((_a|0)==0&($a|0)==0){P=t;Q=114;break}if(!(ab<<24>>24)){xb[k[n>>2]&63](k[t>>2]|0,bb,cb,0)|0;db=1}else db=ab;w=$a>>>0<0|($a|0)==0&_a>>>0<2048?_a:2048;if((w|0)<=-1)Ja(146063,144647,902,146078);if((nb[k[v>>2]&63](k[t>>2]|0,p,w)|0)!=(w|0)){P=t;Q=114;break}B=sr(w|0,0,bb|0,cb|0)|0;A=L;u=pr(_a|0,$a|0,w|0,0)|0;eb=p;fb=w;gb=L;hb=u;ib=B;jb=A;kb=db}else{eb=D;fb=C;gb=$a;hb=_a;ib=bb;jb=cb;kb=ab}if((l[eb>>0]|(y&255)<<8|0)!=(((m[g>>1]|0)*3|0)+8|0)){P=t;Q=114;break}if((fb+-1|0)>>>0>=7){y=fb+-8|0;if(!y){lb=hb;mb=gb;ob=kb;pb=ib;qb=jb;Q=79}else{rb=eb+8|0;sb=y;tb=hb;ub=gb;vb=ib;wb=jb;yb=kb}}else{y=8-fb&65535;if(gb>>>0<0|(gb|0)==0&hb>>>0<y>>>0){P=t;Q=114;break}C=sr(y|0,0,ib|0,jb|0)|0;D=L;A=pr(hb|0,gb|0,y|0,0)|0;lb=A;mb=L;ob=0;pb=C;qb=D;Q=79}if((Q|0)==79){if((lb|0)==0&(mb|0)==0){P=t;Q=114;break}if(!(ob<<24>>24)){xb[k[n>>2]&63](k[t>>2]|0,pb,qb,0)|0;zb=1}else zb=ob;D=mb>>>0<0|(mb|0)==0&lb>>>0<2048?lb:2048;if((D|0)<=-1)Ja(146063,144647,902,146078);if((nb[k[v>>2]&63](k[t>>2]|0,p,D)|0)!=(D|0)){P=t;Q=114;break}C=sr(D|0,0,pb|0,qb|0)|0;A=L;y=pr(lb|0,mb|0,D|0,0)|0;rb=p;sb=D;tb=y;ub=L;vb=C;wb=A;yb=zb}A=i[rb>>0]|0;C=(A&255)>>>4;y=A&15;A=rb+1|0;if((sb|0)==1)if((tb|0)==0&(ub|0)==0){Ab=A;Bb=yb;Cb=0;Db=0;Eb=vb;Fb=wb;Gb=0}else{D=sr(vb|0,wb|0,1,0)|0;B=L;u=sr(tb|0,ub|0,-1,-1)|0;Ab=A;Bb=0;Cb=u;Db=L;Eb=D;Fb=B;Gb=0}else{Ab=rb+2|0;Bb=yb;Cb=tb;Db=ub;Eb=vb;Fb=wb;Gb=sb+-2|0}d:do if((m[g>>1]|0)>1){B=Gb;D=Cb;u=Db;A=Eb;w=Fb;z=Ab;x=Bb;F=1;while(1){if(B){M=B+-1|0;if(!M){Hb=D;Ib=u;Jb=x;Kb=A;Lb=w;Q=95}else{Mb=z+1|0;Nb=M;Ob=D;Pb=u;Qb=A;Rb=w;Sb=x}}else{if((D|0)==0&(u|0)==0){P=t;Q=114;break a}M=sr(A|0,w|0,1,0)|0;E=L;N=sr(D|0,u|0,-1,-1)|0;Hb=N;Ib=L;Jb=0;Kb=M;Lb=E;Q=95}if((Q|0)==95){Q=0;if((Hb|0)==0&(Ib|0)==0){P=t;Q=114;break a}if(!(Jb<<24>>24)){xb[k[n>>2]&63](k[t>>2]|0,Kb,Lb,0)|0;Tb=1}else Tb=Jb;E=Ib>>>0<0|(Ib|0)==0&Hb>>>0<2048?Hb:2048;if((E|0)<=-1){Q=99;break}if((nb[k[v>>2]&63](k[t>>2]|0,p,E)|0)!=(E|0)){P=t;Q=114;break a}M=sr(E|0,0,Kb|0,Lb|0)|0;N=L;I=pr(Hb|0,Ib|0,E|0,0)|0;Mb=p;Nb=E;Ob=I;Pb=L;Qb=M;Rb=N;Sb=Tb}N=Mb+1|0;if((i[Mb>>0]|0)!=17){Q=103;break}do if((Nb|0)==1){if((Ob|0)==0&(Pb|0)==0){Ub=N;Vb=Sb;Wb=0;Xb=0;Yb=Qb;Zb=Rb;_b=0;break}M=sr(Qb|0,Rb|0,1,0)|0;I=L;E=sr(Ob|0,Pb|0,-1,-1)|0;Ub=N;Vb=0;Wb=E;Xb=L;Yb=M;Zb=I;_b=0}else{Ub=Mb+2|0;Vb=Sb;Wb=Ob;Xb=Pb;Yb=Qb;Zb=Rb;_b=Nb+-2|0}while(0);F=F+1<<16>>16;if((F&65535)>=(m[g>>1]|0))break d;else{B=_b;D=Wb;u=Xb;A=Yb;w=Zb;z=Ub;x=Vb}}if((Q|0)==99)Ja(146063,144647,902,146078);else if((Q|0)==103){ie(k[t>>2]|0,146111,146139,f);break a}}while(0);v=C&255;e:do switch(C<<24>>24){case 4:case 2:case 1:{switch(y|0){case 4:case 2:case 1:break;default:break e}n=a+192|0;x=m[n>>1]|0;z=a+194|0;w=m[z>>1]|0;if((v|0)==(x|0)&(y|0)==(w|0))break a;A=k[t>>2]|0;k[d>>2]=x;k[d+4>>2]=w;k[d+8>>2]=v;k[d+12>>2]=y;ie(A,146111,146261,d);j[n>>1]=C&255;j[z>>1]=y;break a;break}default:{}}while(0);ie(k[t>>2]|0,146111,146139,e);break}}else{P=t;Q=114}}else{P=a+628|0;Q=114}while(0);if((Q|0)==114)ie(k[P>>2]|0,145945,146379,c);ne(p);r=b;return 1}function Wf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=r;r=r+16|0;c=b;d=k[a+576>>2]|0;e=d+488|0;if(k[e>>2]|0){if(!(k[d+16>>2]|0)){eg(d);k[e>>2]=0;f=4}}else f=4;do if((f|0)==4){if(Hg(d)|0){k[e>>2]=1;break}if(!d)Ja(154187,144647,972,145904)}while(0);if(!(k[d+16>>2]|0))Ja(145286,144647,973,145904);if((k[a+48>>2]&4|0)!=0?(e=d+800|0,k[d+24>>2]=e,k[d+812>>2]=16,k[d+816>>2]=1,k[d+820>>2]=29,k[d+824>>2]=5,k[d+804>>2]=0,k[e>>2]=0,k[d+808>>2]=6,(Cg(d,0)|0)!=2):0){vc(k[a+628>>2]|0,145904,145920,c);g=0;r=b;return g|0}c=j[a+90>>1]|0;j[d+832>>1]=c;if(c<<16>>16==6){j[d+834>>1]=j[a+192>>1]|0;h=j[a+194>>1]|0}else{j[d+834>>1]=1;h=1}j[d+836>>1]=h;h=d+800|0;k[d+24>>2]=h;k[d+808>>2]=7;k[d+812>>2]=16;k[d+816>>2]=1;k[d+820>>2]=29;k[d+824>>2]=5;k[d+804>>2]=0;k[h>>2]=0;k[a+652>>2]=3;g=1;r=b;return g|0}function Xf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=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;c=r;r=r+80|0;d=c+72|0;e=c+64|0;f=c+48|0;g=c+40|0;h=c+32|0;i=c+16|0;l=c;n=a+576|0;o=k[n>>2]|0;if(!o)Ja(154187,144647,1017,145272);p=o+16|0;if((k[p>>2]|0)==0?(ub[k[a+508>>2]&63](a)|0,(k[p>>2]|0)==0):0)Ja(145286,144647,1024,145272);if(!(Bg(o)|0)){q=0;r=c;return q|0}if((Cg(o,1)|0)!=1){q=0;r=c;return q|0}k[a+604>>2]=k[o+800>>2];k[a+608>>2]=k[o+804>>2];p=(k[a+60>>2]|0)-(k[a+444>>2]|0)|0;if(!(k[a+12>>2]&1024)){s=k[a+56>>2]|0;t=k[a+100>>2]|0;u=Pd(a)|0;v=p>>>0>t>>>0?t:p;w=s}else{s=k[a+68>>2]|0;p=k[a+72>>2]|0;u=de(a)|0;v=p;w=s}k[o+840>>2]=u;u=a+126|0;if(!(b<<16>>16==0|(j[u>>1]|0)!=2)){b=m[o+834>>1]|0;if(w>>>0<(0-b|0)>>>0)x=((w+-1+b|0)>>>0)/(b>>>0)|0;else x=0;b=m[o+836>>1]|0;if(v>>>0<(0-b|0)>>>0){y=((v+-1+b|0)>>>0)/(b>>>0)|0;z=x}else{y=0;z=x}}else{y=v;z=w}w=o+28|0;v=k[w>>2]|0;x=k[o+32>>2]|0;if(v>>>0<z>>>0|x>>>0<y>>>0){b=k[a+628>>2]|0;k[l>>2]=z;k[l+4>>2]=y;k[l+8>>2]=v;k[l+12>>2]=x;ie(b,145272,145317,l);A=k[w>>2]|0}else A=v;v=k[o+32>>2]|0;if(A>>>0>z>>>0|v>>>0>y>>>0){w=k[a+628>>2]|0;k[i>>2]=z;k[i+4>>2]=y;k[i+8>>2]=A;k[i+12>>2]=v;vc(w,145272,145374,i);q=0;r=c;return q|0}i=o+36|0;w=k[i>>2]|0;v=(j[u>>1]|0)==1;if(v)B=m[a+98>>1]|0;else B=1;if((w|0)!=(B|0)){vc(k[a+628>>2]|0,145272,145450,h);q=0;r=c;return q|0}if((k[o+212>>2]|0)!=(m[a+84>>1]|0)){vc(k[a+628>>2]|0,145272,145480,g);q=0;r=c;return q|0}g=o+216|0;h=k[g>>2]|0;B=k[h+8>>2]|0;a:do if(v){u=m[o+834>>1]|0;A=k[h+12>>2]|0;y=j[o+836>>1]|0;if(!((B|0)==(u|0)&(A|0)==(y&65535|0))){z=k[a+628>>2]|0;k[f>>2]=B;k[f+4>>2]=A;k[f+8>>2]=u;k[f+12>>2]=y&65535;vc(z,145272,145509,f);q=0;r=c;return q|0}do if((w|0)>1){z=1;while(1){if((k[h+(z*88|0)+8>>2]|0)!=1)break;if((k[h+(z*88|0)+12>>2]|0)!=1)break;z=z+1|0;if((z|0)>=(w|0)){C=37;break}}if((C|0)==37)if(v)break;else{C=41;break a}vc(k[a+628>>2]|0,145272,145574,e);q=0;r=c;return q|0}while(0);if((j[o+832>>1]|0)==6?(k[o+924>>2]|0)==1:0){k[o+40>>2]=3;k[o+44>>2]=2;C=45;break}k[o+40>>2]=0;k[o+44>>2]=0;if((j[o+834>>1]|0)==1?(j[o+836>>1]|0)==1:0){C=45;break}k[o+68>>2]=1;k[o+76>>2]=0;k[a+532>>2]=22;k[a+540>>2]=23;k[a+548>>2]=23;D=0}else{if((B|0)==1?(k[h+12>>2]|0)==1:0){C=41;break}vc(k[a+628>>2]|0,145272,145574,d);q=0;r=c;return q|0}while(0);if((C|0)==41){k[o+40>>2]=0;k[o+44>>2]=0;C=45}if((C|0)==45){k[o+68>>2]=0;k[a+532>>2]=20;k[a+540>>2]=20;k[a+548>>2]=20;D=1}a=(Fg(o)|0)==0;if(D|a){q=a&1^1;r=c;return q|0}a=k[i>>2]|0;i=k[n>>2]|0;b:do if((a|0)>0){n=0;D=k[g>>2]|0;C=0;while(1){d=k[D+8>>2]|0;h=k[D+12>>2]|0;B=mg(i,k[D+28>>2]<<3,h<<3)|0;if(!B){q=0;break}e=(ha(h,d)|0)+C|0;k[i+844+(n<<2)>>2]=B;n=n+1|0;if((n|0)>=(a|0)){E=e;break b}else{D=D+88|0;C=e}}r=c;return q|0}else E=0;while(0);k[i+888>>2]=E;k[o+884>>2]=8;q=1;r=c;return q|0}function Yf(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,l=0,m=0,n=0,o=0,p=0,q=0;d=r;r=r+16|0;e=d+4|0;f=k[a+576>>2]|0;g=a+604|0;h=f+800|0;k[h>>2]=k[g>>2];i=a+608|0;j=f+804|0;k[j>>2]=k[i>>2];l=f+840|0;m=k[l>>2]|0;if(!m){n=0;r=d;return n|0}o=(c|0)/(m|0)|0;if((c|0)%(m|0)|0)ie(k[a+628>>2]|0,k[a>>2]|0,145243,d);m=k[f+32>>2]|0;c=(o|0)>(m|0)?m:o;a:do if(c){o=a+444|0;m=b;p=c;while(1){k[e>>2]=m;if((zg(f,e)|0)!=1){n=0;break}k[o>>2]=(k[o>>2]|0)+1;if((p|0)>1){m=m+(k[l>>2]|0)|0;p=p+-1|0}else break a}r=d;return n|0}while(0);k[g>>2]=k[h>>2];k[i>>2]=k[j>>2];if((k[f+140>>2]|0)>>>0<(k[f+116>>2]|0)>>>0)q=1;else q=(Ag(f)|0)!=0;n=q&1;r=d;return n|0}function Zf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0,z=0.0;b=r;r=r+96|0;c=b+56|0;d=b+48|0;e=b+40|0;f=b+32|0;g=b+24|0;h=b+16|0;i=b+8|0;l=b;n=b+88|0;p=b+64|0;q=a+576|0;s=k[q>>2]|0;t=s+488|0;if(k[t>>2]|0){if(k[s+16>>2]|0){eg(s);k[t>>2]=0;u=4}}else u=4;do if((u|0)==4){if(ng(s)|0){k[t>>2]=1;break}if(!s)Ja(154187,144647,1590,144952)}while(0);if(k[s+16>>2]|0)Ja(144876,144647,1591,144952);t=j[a+90>>1]|0;u=s+832|0;j[u>>1]=t;a:do if((j[a+126>>1]|0)==1){v=j[a+98>>1]|0;k[s+36>>2]=v&65535;if(t<<16>>16==6){w=s+40|0;if((k[s+924>>2]|0)==1){k[w>>2]=2;break}else{k[w>>2]=3;break}}b:do if((t&65535)<2){if(v<<16>>16==1){k[s+40>>2]=1;break a}}else switch(t<<16>>16){case 2:{if(v<<16>>16!=3)break b;k[s+40>>2]=2;break a;break}case 5:{if(v<<16>>16!=4)break b;k[s+40>>2]=4;break a;break}default:break b}while(0);k[s+40>>2]=0}else{k[s+36>>2]=1;k[s+40>>2]=0}while(0);if(!(og(s)|0)){x=0;r=b;return x|0}t=m[u>>1]|0;switch(t|0){case 6:{j[s+834>>1]=j[a+192>>1]|0;j[s+836>>1]=j[a+194>>1]|0;k[l>>2]=n;if(!(Pb(a,532,l)|0)){l=1<<m[a+84>>1];o[p>>2]=0.0;y=+(l+-1|0);o[p+4>>2]=y;z=+(l>>1|0);o[p+8>>2]=z;o[p+12>>2]=y;o[p+16>>2]=z;o[p+20>>2]=y;k[i>>2]=p;Ob(a,532,i)|0}break}case 4:case 3:{i=k[a+628>>2]|0;k[h>>2]=t;vc(i,144952,144968,h);x=0;r=b;return x|0}default:{j[s+834>>1]=1;j[s+836>>1]=1}}h=j[a+84>>1]|0;i=h&65535;if(h<<16>>16!=8){h=k[a+628>>2]|0;k[g>>2]=i;vc(h,144952,145018,g);x=0;r=b;return x|0}k[s+72>>2]=i;i=a+12|0;if(!(k[i>>2]&1024)){g=k[a+100>>2]|0;if(g>>>0<(k[a+60>>2]|0)>>>0?(h=m[s+836>>1]<<3,((g>>>0)%(h>>>0)|0|0)!=0):0){g=k[a+628>>2]|0;k[d>>2]=h;vc(g,144952,145135,d);x=0;r=b;return x|0}}else{d=m[s+836>>1]<<3;if(((k[a+72>>2]|0)>>>0)%(d>>>0)|0){g=k[a+628>>2]|0;k[f>>2]=d;vc(g,144952,145056,f);x=0;r=b;return x|0}f=m[s+834>>1]<<3;if(((k[a+68>>2]|0)>>>0)%(f>>>0)|0){g=k[a+628>>2]|0;k[e>>2]=f;vc(g,144952,145096,e);x=0;r=b;return x|0}}do if(k[s+928>>2]&3){e=k[s+912>>2]|0;if((e|0)!=0?(Lq(e,145180,8)|0)!=0:0)break;e=k[q>>2]|0;if(!(jg(e,k[e+920>>2]|0)|0)){x=0;r=b;return x|0}if(!(pg(e)|0)){x=0;r=b;return x|0}g=k[e+928>>2]|0;if(g&1){f=e+88|0;d=k[f>>2]|0;if(d)k[d+128>>2]=0;if((j[e+832>>1]|0)==6?(d=k[f+4>>2]|0,(d|0)!=0):0)k[d+128>>2]=0}if(g&2){g=e+120|0;d=k[g>>2]|0;if(d)k[d+276>>2]=0;d=e+136|0;f=k[d>>2]|0;if(f)k[f+276>>2]=0;if((j[e+832>>1]|0)==6){f=k[g+4>>2]|0;if(f)k[f+276>>2]=0;f=k[d+4>>2]|0;if(f)k[f+276>>2]=0}}f=e+912|0;d=k[f>>2]|0;if(d)ne(d);d=e+916|0;k[d>>2]=1e3;g=me(1e3)|0;k[f>>2]=g;if(!g){k[d>>2]=0;vc(k[(k[e+828>>2]|0)+628>>2]|0,145190,145211,c);x=0;r=b;return x|0}k[e+24>>2]=e+780;k[e+788>>2]=8;k[e+792>>2]=17;k[e+796>>2]=9;if(!(tg(e)|0)){x=0;r=b;return x|0}else{k[i>>2]=k[i>>2]|8;e=a+48|0;k[e>>2]=k[e>>2]|4;break}}else{e=a+48|0;k[e>>2]=k[e>>2]&-5}while(0);k[s+24>>2]=s+780;k[s+788>>2]=10;k[s+792>>2]=18;k[s+796>>2]=11;x=1;r=b;return x|0}function _f(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;c=r;r=r+16|0;d=c;e=a+576|0;f=k[e>>2]|0;if(!f)Ja(154187,144647,1745,144862);g=f+16|0;h=k[g>>2]|0;if((h|0)==1){ub[k[a+516>>2]&63](a)|0;i=k[g>>2]|0}else i=h;if(i)Ja(144876,144647,1752,144862);if(!(k[a+12>>2]&1024)){i=k[a+56>>2]|0;h=(k[a+60>>2]|0)-(k[a+444>>2]|0)|0;g=k[a+100>>2]|0;l=Pd(a)|0;n=h>>>0>g>>>0?g:h;o=i}else{i=k[a+68>>2]|0;h=k[a+72>>2]|0;l=de(a)|0;n=h;o=i}k[f+840>>2]=l;l=j[a+126>>1]|0;i=b<<16>>16==0;if(!(i|l<<16>>16!=2)){h=m[f+834>>1]|0;if(o>>>0<(0-h|0)>>>0)p=((o+-1+h|0)>>>0)/(h>>>0)|0;else p=0;h=m[f+836>>1]|0;if(n>>>0<(0-h|0)>>>0){q=((n+-1+h|0)>>>0)/(h>>>0)|0;s=p}else{q=0;s=p}}else{q=n;s=o}if((q|s)>>>0>65535){vc(k[a+628>>2]|0,144862,144908,d);t=0;r=c;return t|0}k[f+28>>2]=s;k[f+32>>2]=q;do if(l<<16>>16==1){k[f+36>>2]=m[a+98>>1];if((j[f+832>>1]|0)!=6){if(!(ig(f,k[f+40>>2]|0)|0))t=0;else{u=0;break}r=c;return t|0}do if((k[f+924>>2]|0)==1)v=0;else{if((j[f+834>>1]|0)==1?(j[f+836>>1]|0)==1:0){v=0;break}v=1}while(0);if(!(ig(f,3)|0)){t=0;r=c;return t|0}else{q=k[f+84>>2]|0;k[q+8>>2]=m[f+834>>1];k[q+12>>2]=m[f+836>>1];u=v;break}}else{if(!(ig(f,0)|0)){t=0;r=c;return t|0}q=k[f+84>>2]|0;k[q>>2]=b&65535;if(i|(j[f+832>>1]|0)!=6)u=0;else{k[q+16>>2]=1;k[q+20>>2]=1;k[q+24>>2]=1;u=0}}while(0);k[f+244>>2]=0;k[f+256>>2]=0;if(!(jg(f,k[f+920>>2]|0)|0)){t=0;r=c;return t|0}i=k[f+928>>2]|0;b=f+88|0;v=k[b>>2]|0;l=(v|0)==0;if(!(i&1)){if(!l)k[v+128>>2]=0;q=k[b+4>>2]|0;if(q)k[q+128>>2]=0}else{if(!l)k[v+128>>2]=1;v=k[b+4>>2]|0;if(v)k[v+128>>2]=1}if(!(i&2))k[f+216>>2]=1;else{i=f+120|0;v=k[i>>2]|0;if(v)k[v+276>>2]=1;v=f+136|0;b=k[v>>2]|0;if(b)k[b+276>>2]=1;b=k[i+4>>2]|0;if(b)k[b+276>>2]=1;b=k[v+4>>2]|0;if(b)k[b+276>>2]=1;k[f+216>>2]=0}b=(u|0)!=0;k[f+208>>2]=b&1;k[a+536>>2]=b?24:21;k[a+544>>2]=b?24:21;k[a+552>>2]=b?24:21;if(!(lg(f)|0)){t=0;r=c;return t|0}if(b){b=k[f+76>>2]|0;a=k[e>>2]|0;a:do if((b|0)>0){e=0;u=k[f+84>>2]|0;v=0;while(1){i=k[u+8>>2]|0;l=k[u+12>>2]|0;q=mg(a,k[u+28>>2]<<3,l<<3)|0;if(!q){t=0;break}s=(ha(l,i)|0)+v|0;k[a+844+(e<<2)>>2]=q;e=e+1|0;if((e|0)>=(b|0)){w=s;break a}else{u=u+88|0;v=s}}r=c;return t|0}else w=0;while(0);k[a+888>>2]=w}k[f+884>>2]=0;t=1;r=c;return t|0}function $f(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;b=a+576|0;a=k[b>>2]|0;c=a+884|0;d=k[c>>2]|0;do if((d|0)>0){e=a+76|0;f=k[e>>2]|0;a:do if((f|0)>0){g=d;h=f;i=0;j=k[a+84>>2]|0;while(1){l=k[j+12>>2]|0;m=k[j+28>>2]<<3;n=ha(g,l)|0;if((n|0)<(l<<3|0)){o=a+844+(i<<2)|0;p=l<<3;l=n;do{n=k[o>>2]|0;qe(k[n+(l<<2)>>2]|0,k[n+(l+-1<<2)>>2]|0,m);l=l+1|0}while((l|0)!=(p|0));q=k[e>>2]|0}else q=h;p=i+1|0;if((p|0)>=(q|0))break a;g=k[c>>2]|0;h=q;i=p;j=j+88|0}}while(0);e=k[a+276>>2]<<3;if((gg(a,a+844|0,e)|0)==(e|0)){r=k[b>>2]|0;break}else{s=0;return s|0}}else r=a;while(0);s=hg(r)|0;return s|0}function ag(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,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;d=r;r=r+16|0;e=d+8|0;f=d+12|0;g=k[a+576>>2]|0;if(!g)Ja(154187,144647,1883,144795);h=g+840|0;j=k[h>>2]|0;m=(c|0)/(j|0)|0;if((c|0)%(j|0)|0)ie(k[a+628>>2]|0,k[a>>2]|0,144806,d);if(!(k[a+12>>2]&1024)){j=k[a+444>>2]|0;c=k[a+60>>2]|0;n=(j+m|0)>>>0>c>>>0?c-j|0:m}else n=m;m=g+72|0;j=k[m>>2]|0;if((j|0)==12){c=(k[h>>2]<<1|0)/3|0;o=me(c<<1)|0;if(!o){vc(k[a+628>>2]|0,144795,144836,e);p=0;r=d;return p|0}else{q=b;s=o;t=c;u=n;v=10}}else{w=b;x=j;y=0;z=0;A=n}while(1){if((v|0)==10){v=0;w=q;x=k[m>>2]|0;y=s;z=t;A=u}n=A+-1|0;B=(x|0)==12;if((A|0)<=0)break;if(B){j=(z|0)/2|0;k[f>>2]=y;if((z|0)>1){b=0;do{c=b*3|0;o=y+(b<<1<<1)|0;i[o>>0]=(l[w+(c+1)>>0]|0)>>>4|(l[w+c>>0]|0)<<4;i[o+1>>0]=i[w+(c+2)>>0]|0;b=b+1|0}while((b|0)<(j|0))}C=f}else{k[f>>2]=w;C=f}if((fg(g,C)|0)!=1){p=0;v=23;break}if((A|0)>1){j=a+444|0;k[j>>2]=(k[j>>2]|0)+1}q=w+(k[h>>2]|0)|0;s=y;t=z;u=n;v=10}if((v|0)==23){r=d;return p|0}if(!B){p=1;r=d;return p|0}ne(y);p=1;r=d;return p|0}function bg(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+576|0;c=k[b>>2]|0;if(!c)Ja(154168,144647,2075,144783);k[a+672>>2]=k[c+892>>2];k[a+668>>2]=k[c+896>>2];k[a+676>>2]=k[c+900>>2];if(k[c+488>>2]|0)eg(c);d=k[c+912>>2]|0;if(!d){e=k[b>>2]|0;ne(e);k[b>>2]=0;Ve(a);return}ne(d);e=k[b>>2]|0;ne(e);k[b>>2]=0;Ve(a);return}function cg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=yb[k[(k[a+576>>2]|0)+904>>2]&127](a,b)|0;if(c>>>0>=(k[a+60>>2]|0)>>>0){d=c;return d|0}b=m[a+194>>1]|0;a=b<<3;if(c>>>0<(0-a|0)>>>0)e=(((c+-1+a|0)>>>0)/(a>>>0)|0)<<3;else e=0;d=ha(e,b)|0;return d|0}function dg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;vb[k[(k[a+576>>2]|0)+908>>2]&127](a,b,c);d=k[b>>2]|0;e=m[a+192>>1]|0;f=e<<3;if(d>>>0<(0-f|0)>>>0)g=(((d+-1+f|0)>>>0)/(f>>>0)|0)<<3;else g=0;f=ha(g,e)|0;k[b>>2]=f;f=k[c>>2]|0;b=m[a+194>>1]|0;a=b<<3;if(f>>>0>=(0-a|0)>>>0){h=0;i=ha(h,b)|0;k[c>>2]=i;return}h=(((f+-1+a|0)>>>0)/(a>>>0)|0)<<3;i=ha(h,b)|0;k[c>>2]=i;return}function eg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=4;c=jr(40)|0;k[c>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){e=vr(k[d>>2]|0,c|0,b|0)|0;if(!e)La(d|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=6;break}w=0;pa(12,a|0);e=w;w=0;if((e|0)!=0&(x|0)!=0){h=vr(k[e>>2]|0,c|0,b|0)|0;if(!h)La(e|0,x|0);L=x}else h=-1;if((h|0)==1)f=L;else break}if((g|0)==6){kr(c|0);return}kr(c|0);return}function fg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;c=4;d=jr(40)|0;k[d>>2]=0;d=tr(a+624|0,1,d|0,c|0)|0;c=L;w=0;e=w;w=0;if((e|0)!=0&(x|0)!=0){f=vr(k[e>>2]|0,d|0,c|0)|0;if(!f)La(e|0,x|0);L=x}else f=-1;if((f|0)==1)g=L;else g=0;while(1){if(g){h=-1;i=6;break}w=0;j=ma(15,a|0,b|0,1)|0;f=w;w=0;if((f|0)!=0&(x|0)!=0){l=vr(k[f>>2]|0,d|0,c|0)|0;if(!l)La(f|0,x|0);L=x}else l=-1;if((l|0)==1)g=L;else break}if((i|0)==6){kr(d|0);return h|0}h=j;kr(d|0);return h|0}function gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;d=4;e=jr(40)|0;k[e>>2]=0;e=tr(a+624|0,1,e|0,d|0)|0;d=L;w=0;f=w;w=0;if((f|0)!=0&(x|0)!=0){g=vr(k[f>>2]|0,e|0,d|0)|0;if(!g)La(f|0,x|0);L=x}else g=-1;if((g|0)==1)h=L;else h=0;while(1){if(h){i=-1;j=6;break}w=0;l=ma(16,a|0,b|0,c|0)|0;g=w;w=0;if((g|0)!=0&(x|0)!=0){m=vr(k[g>>2]|0,e|0,d|0)|0;if(!m)La(g|0,x|0);L=x}else m=-1;if((m|0)==1)h=L;else break}if((j|0)==6){kr(e|0);return i|0}i=l;kr(e|0);return i|0}function hg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=4;c=jr(40)|0;k[c>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){e=vr(k[d>>2]|0,c|0,b|0)|0;if(!e)La(d|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;pa(13,a|0);e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,c|0,b|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(c|0);return g|0}g=1;kr(c|0);return g|0}function ig(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=4;d=jr(40)|0;k[d>>2]=0;d=tr(a+624|0,1,d|0,c|0)|0;c=L;w=0;e=w;w=0;if((e|0)!=0&(x|0)!=0){f=vr(k[e>>2]|0,d|0,c|0)|0;if(!f)La(e|0,x|0);L=x}else f=-1;if((f|0)==1)g=L;else g=0;while(1){if(g){h=0;i=6;break}w=0;qa(2,a|0,b|0);f=w;w=0;if((f|0)!=0&(x|0)!=0){j=vr(k[f>>2]|0,d|0,c|0)|0;if(!j)La(f|0,x|0);L=x}else j=-1;if((j|0)==1)g=L;else break}if((i|0)==6){kr(d|0);return h|0}h=1;kr(d|0);return h|0}function jg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=4;d=jr(40)|0;k[d>>2]=0;d=tr(a+624|0,1,d|0,c|0)|0;c=L;w=0;e=w;w=0;if((e|0)!=0&(x|0)!=0){f=vr(k[e>>2]|0,d|0,c|0)|0;if(!f)La(e|0,x|0);L=x}else f=-1;if((f|0)==1)g=L;else g=0;while(1){if(g){h=0;i=6;break}w=0;ua(12,a|0,b|0,0);f=w;w=0;if((f|0)!=0&(x|0)!=0){j=vr(k[f>>2]|0,d|0,c|0)|0;if(!j)La(f|0,x|0);L=x}else j=-1;if((j|0)==1)g=L;else break}if((i|0)==6){kr(d|0);return h|0}h=1;kr(d|0);return h|0}function kg(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,j=0,l=0,n=0,o=0,p=0,q=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;d=r;r=r+16|0;e=k[a+576>>2]|0;f=k[e+888>>2]|0;if(!e)Ja(154187,144647,1965,144938);g=m[e+834>>1]|0;h=e+836|0;j=m[h>>1]|0;l=(ha(j,g)|0)+2|0;n=((ha(ha(k[e+72>>2]|0,(((k[e+28>>2]|0)+-1+g|0)>>>0)/(g>>>0)|0)|0,l)|0)+7|0)>>>3;l=ha((c|0)/(n|0)|0,j)|0;if((c|0)%(n|0)|0)ie(k[a+628>>2]|0,k[a>>2]|0,144806,d);c=e+84|0;j=k[(k[c>>2]|0)+132>>2]|0;g=e+276|0;if((l|0)<=0){o=1;r=d;return o|0}p=e+76|0;q=e+884|0;s=e+844|0;t=a+444|0;a=(j|0)==0;u=b;b=l;while(1){l=k[p>>2]|0;if((l|0)>0){v=l;l=0;w=0;x=k[c>>2]|0;while(1){y=k[x+8>>2]|0;z=k[x+12>>2]|0;A=k[x+28>>2]|0;B=ha(y,j)|0;if((z|0)>0){C=e+844+(l<<2)|0;D=(y|0)==1;E=((A<<3)-B|0)>0;F=(A<<3)-B|0;B=ha(y,z)|0;A=a|(y|0)<1;G=w;H=0;while(1){I=u+G|0;J=(ha(k[q>>2]|0,z)|0)+H|0;K=k[(k[C>>2]|0)+(J<<2)>>2]|0;if(D)if(a)L=K;else{J=I;M=j;N=K;while(1){M=M+-1|0;i[N>>0]=i[J>>0]|0;if(!M)break;else{J=J+f|0;N=N+1|0}}L=K+j|0}else if(A)L=K;else{N=j;J=I;M=K;while(1){N=N+-1|0;O=M;P=0;while(1){i[O>>0]=i[J+P>>0]|0;P=P+1|0;if((P|0)==(y|0))break;else O=O+1|0}O=M+y|0;if(!N){L=O;break}else{J=J+f|0;M=O}}}if(E){M=L;J=0;while(1){i[M>>0]=i[M+-1>>0]|0;J=J+1|0;if((J|0)==(F|0))break;else M=M+1|0}}H=H+1|0;if((H|0)==(z|0))break;else G=G+y|0}Q=k[p>>2]|0;R=w+B|0}else{Q=v;R=w}l=l+1|0;if((l|0)>=(Q|0))break;else{v=Q;w=R;x=x+88|0}}}x=k[q>>2]|0;k[q>>2]=x+1;if((x|0)>6){x=k[g>>2]<<3;if((gg(e,s,x)|0)!=(x|0)){o=0;S=28;break}k[q>>2]=0}x=m[h>>1]|0;k[t>>2]=(k[t>>2]|0)+x;b=b-x|0;if((b|0)<=0){o=1;S=28;break}else u=u+n|0}if((S|0)==28){r=d;return o|0}return 0}function lg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=4;c=jr(40)|0;k[c>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){e=vr(k[d>>2]|0,c|0,b|0)|0;if(!e)La(d|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;qa(3,a|0,0);e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,c|0,b|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(c|0);return g|0}g=1;kr(c|0);return g|0}function mg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;d=4;e=jr(40)|0;k[e>>2]=0;e=tr(a+624|0,1,e|0,d|0)|0;d=L;w=0;f=w;w=0;if((f|0)!=0&(x|0)!=0){g=vr(k[f>>2]|0,e|0,d|0)|0;if(!g)La(f|0,x|0);L=x}else g=-1;if((g|0)==1)h=L;else h=0;while(1){if(h){i=0;j=6;break}w=0;l=wa(k[(k[a+4>>2]|0)+8>>2]|0,a|0,1,b|0,c|0)|0;g=w;w=0;if((g|0)!=0&(x|0)!=0){m=vr(k[g>>2]|0,e|0,d|0)|0;if(!m)La(g|0,x|0);L=x}else m=-1;if((m|0)==1)h=L;else break}if((j|0)==6){kr(e|0);return i|0}i=l;kr(e|0);return i|0}function ng(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;b=4;c=jr(40)|0;k[c>>2]=0;d=a+492|0;w=0;e=ta(19,d|0)|0;f=w;w=0;if((f|0)!=0&(x|0)!=0){g=vr(k[f>>2]|0,c|0,b|0)|0;if(!g)La(f|0,x|0);L=x}else g=-1;if((g|0)!=1){k[a>>2]=e;k[d>>2]=14;k[a+500>>2]=15;k[a+12>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){h=vr(k[d>>2]|0,c|0,b|0)|0;if(!h)La(d|0,x|0);L=x}else h=-1;if((h|0)!=1)i=0;else i=L}else i=L;while(1){if(i){j=0;l=7;break}w=0;ua(13,a|0,90,440);h=w;w=0;if((h|0)!=0&(x|0)!=0){m=vr(k[h>>2]|0,c|0,b|0)|0;if(!m)La(h|0,x|0);L=x}else m=-1;if((m|0)==1)i=L;else break}if((l|0)==7){kr(c|0);return j|0}j=1;kr(c|0);return j|0}function og(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=4;c=jr(40)|0;k[c>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){e=vr(k[d>>2]|0,c|0,b|0)|0;if(!e)La(d|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;pa(16,a|0);e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,c|0,b|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(c|0);return g|0}g=1;kr(c|0);return g|0}function pg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=4;c=jr(40)|0;k[c>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){e=vr(k[d>>2]|0,c|0,b|0)|0;if(!e)La(d|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;qa(4,a|0,1);e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,c|0,b|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(c|0);return g|0}g=1;kr(c|0);return g|0}function qg(a){a=a|0;k[a+780>>2]=k[a+912>>2];k[a+784>>2]=k[a+916>>2];return}function rg(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+912|0;c=a+916|0;d=oe(k[b>>2]|0,(k[c>>2]|0)+1e3|0)|0;if(!d){e=k[a>>2]|0;k[e+20>>2]=56;k[e+24>>2]=100;qb[k[e>>2]&127](a)}e=k[c>>2]|0;k[a+780>>2]=d+e;k[a+784>>2]=1e3;k[b>>2]=d;k[c>>2]=e+1e3;return 1}function sg(a){a=a|0;var b=0;b=a+916|0;k[b>>2]=(k[b>>2]|0)-(k[a+784>>2]|0);return}function tg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=4;c=jr(40)|0;k[c>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){e=vr(k[d>>2]|0,c|0,b|0)|0;if(!e)La(d|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;pa(17,a|0);e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,c|0,b|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(c|0);return g|0}g=1;kr(c|0);return g|0}function ug(a){a=a|0;var b=0;b=k[a+828>>2]|0;k[a+780>>2]=k[b+588>>2];k[a+784>>2]=k[b+592>>2];return}function vg(a){a=a|0;var b=0,c=0;b=k[a+828>>2]|0;c=b+592|0;k[b+608>>2]=k[c>>2];je(b)|0;k[a+780>>2]=k[b+588>>2];k[a+784>>2]=k[c>>2];return 1}function wg(a){a=a|0;var b=0;b=k[a+828>>2]|0;k[b+604>>2]=k[a+780>>2];k[b+608>>2]=(k[b+592>>2]|0)-(k[a+784>>2]|0);return}function xg(a){a=a|0;var b=0,c=0,d=0;b=r;r=r+208|0;c=b;d=b+8|0;rb[k[(k[a>>2]|0)+12>>2]&31](a,d);b=k[(k[a+828>>2]|0)+628>>2]|0;k[c>>2]=d;vc(b,145235,154321,c);Ak(a);La(a+624|0,1)}function yg(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+208|0;c=b;d=b+8|0;rb[k[(k[a>>2]|0)+12>>2]&31](a,d);e=k[(k[a+828>>2]|0)+628>>2]|0;k[c>>2]=d;ie(e,145235,154321,c);r=b;return}function zg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;c=4;d=jr(40)|0;k[d>>2]=0;d=tr(a+624|0,1,d|0,c|0)|0;c=L;w=0;e=w;w=0;if((e|0)!=0&(x|0)!=0){f=vr(k[e>>2]|0,d|0,c|0)|0;if(!f)La(e|0,x|0);L=x}else f=-1;if((f|0)==1)g=L;else g=0;while(1){if(g){h=-1;i=6;break}w=0;j=ma(17,a|0,b|0,1)|0;f=w;w=0;if((f|0)!=0&(x|0)!=0){l=vr(k[f>>2]|0,d|0,c|0)|0;if(!l)La(f|0,x|0);L=x}else l=-1;if((l|0)==1)g=L;else break}if((i|0)==6){kr(d|0);return h|0}h=j;kr(d|0);return h|0}function Ag(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=4;c=jr(40)|0;k[c>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){e=vr(k[d>>2]|0,c|0,b|0)|0;if(!e)La(d|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=-1;h=6;break}w=0;i=ta(20,a|0)|0;e=w;w=0;if((e|0)!=0&(x|0)!=0){j=vr(k[e>>2]|0,c|0,b|0)|0;if(!j)La(e|0,x|0);L=x}else j=-1;if((j|0)==1)f=L;else break}if((h|0)==6){kr(c|0);return g|0}g=i;kr(c|0);return g|0}function Bg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=4;c=jr(40)|0;k[c>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){e=vr(k[d>>2]|0,c|0,b|0)|0;if(!e)La(d|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;pa(18,a|0);e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,c|0,b|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(c|0);return g|0}g=1;kr(c|0);return g|0}function Cg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;c=4;d=jr(40)|0;k[d>>2]=0;d=tr(a+624|0,1,d|0,c|0)|0;c=L;w=0;e=w;w=0;if((e|0)!=0&(x|0)!=0){f=vr(k[e>>2]|0,d|0,c|0)|0;if(!f)La(e|0,x|0);L=x}else f=-1;if((f|0)==1)g=L;else g=0;while(1){if(g){h=-1;i=6;break}w=0;j=xa(30,a|0,b|0)|0;f=w;w=0;if((f|0)!=0&(x|0)!=0){l=vr(k[f>>2]|0,d|0,c|0)|0;if(!l)La(f|0,x|0);L=x}else l=-1;if((l|0)==1)g=L;else break}if((i|0)==6){kr(d|0);return h|0}h=j;kr(d|0);return h|0}function Dg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=r;r=r+16|0;vc(k[a+628>>2]|0,145746,145763,d);r=d;return 0}function Eg(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,j=0,l=0,n=0,o=0,p=0,q=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;d=r;r=r+16|0;e=d+8|0;f=d;g=k[a+576>>2]|0;h=k[g+32>>2]|0;a:do if(h){j=g+216|0;l=k[(k[j>>2]|0)+132>>2]|0;n=k[g+888>>2]|0;o=g+840|0;p=g+884|0;q=g+320|0;s=g+844|0;t=g+36|0;u=g+836|0;v=a+444|0;w=l+-1|0;x=ha(n,w)|0;y=(l|0)==0;z=b;A=c;B=k[o>>2]|0;C=h;b:while(1){if((A|0)<(B|0)){D=4;break}E=k[p>>2]|0;if((E|0)>7){F=k[q>>2]<<3;if((Gg(g,s,F)|0)!=(F|0)){G=0;D=32;break}k[p>>2]=0;H=0}else H=E;if((k[t>>2]|0)>0){E=0;F=0;I=k[j>>2]|0;while(1){J=k[I+8>>2]|0;K=k[I+12>>2]|0;c:do if((K|0)>0){L=g+844+(E<<2)|0;M=J+x|0;if((J|0)==1){N=F;O=0;while(1){if((A|0)<(M+N|0)){D=19;break b}if(!y){P=(k[L>>2]|0)+((ha(k[p>>2]|0,K)|0)+O<<2)|0;Q=k[P>>2]|0;P=l;R=z+N|0;while(1){P=P+-1|0;i[R>>0]=i[Q>>0]|0;if(!P)break;else{Q=Q+1|0;R=R+n|0}}}R=N+1|0;O=O+1|0;if((O|0)>=(K|0)){S=R;break c}else N=R}}N=y|(J|0)<1;O=F;R=0;while(1){if((A|0)<(M+O|0)){D=19;break b}if(!N){Q=(k[L>>2]|0)+((ha(k[p>>2]|0,K)|0)+R<<2)|0;P=w;T=k[Q>>2]|0;Q=z+O|0;while(1){U=T;V=0;while(1){i[Q+V>>0]=i[U>>0]|0;V=V+1|0;if((V|0)==(J|0))break;else U=U+1|0}if(!P)break;else{P=P+-1|0;T=T+J|0;Q=Q+n|0}}}Q=O+J|0;R=R+1|0;if((R|0)>=(K|0)){S=Q;break}else O=Q}}else S=F;while(0);E=E+1|0;if((E|0)>=(k[t>>2]|0))break;else{F=S;I=I+88|0}}W=k[p>>2]|0}else W=H;k[p>>2]=W+1;I=m[u>>1]|0;k[v>>2]=(k[v>>2]|0)+I;F=k[o>>2]|0;C=C-I|0;if((C|0)<=0)break a;else{z=z+F|0;A=A-F|0;B=F}}if((D|0)==4){vc(k[a+628>>2]|0,145605,145619,f);G=0;r=d;return G|0}else if((D|0)==19){vc(k[a+628>>2]|0,145605,145669,e);G=0;r=d;return G|0}else if((D|0)==32){r=d;return G|0}}while(0);if((k[g+140>>2]|0)>>>0<(k[g+116>>2]|0)>>>0)X=1;else X=(Ag(g)|0)!=0;G=X&1;r=d;return G|0}function Fg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=4;c=jr(40)|0;k[c>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){e=vr(k[d>>2]|0,c|0,b|0)|0;if(!e)La(d|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;ta(21,a|0)|0;e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,c|0,b|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(c|0);return g|0}g=1;kr(c|0);return g|0}function Gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;d=4;e=jr(40)|0;k[e>>2]=0;e=tr(a+624|0,1,e|0,d|0)|0;d=L;w=0;f=w;w=0;if((f|0)!=0&(x|0)!=0){g=vr(k[f>>2]|0,e|0,d|0)|0;if(!g)La(f|0,x|0);L=x}else g=-1;if((g|0)==1)h=L;else h=0;while(1){if(h){i=-1;j=6;break}w=0;l=ma(18,a|0,b|0,c|0)|0;g=w;w=0;if((g|0)!=0&(x|0)!=0){m=vr(k[g>>2]|0,e|0,d|0)|0;if(!m)La(g|0,x|0);L=x}else m=-1;if((m|0)==1)h=L;else break}if((j|0)==6){kr(e|0);return i|0}i=l;kr(e|0);return i|0}function Hg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;b=4;c=jr(40)|0;k[c>>2]=0;d=a+492|0;w=0;e=ta(19,d|0)|0;f=w;w=0;if((f|0)!=0&(x|0)!=0){g=vr(k[f>>2]|0,c|0,b|0)|0;if(!g)La(f|0,x|0);L=x}else g=-1;if((g|0)!=1){k[a>>2]=e;k[d>>2]=14;k[a+500>>2]=15;k[a+12>>2]=0;c=tr(a+624|0,1,c|0,b|0)|0;b=L;w=0;d=w;w=0;if((d|0)!=0&(x|0)!=0){h=vr(k[d>>2]|0,c|0,b|0)|0;if(!h)La(d|0,x|0);L=x}else h=-1;if((h|0)!=1)i=0;else i=L}else i=L;while(1){if(i){j=0;l=7;break}w=0;ua(14,a|0,90,488);h=w;w=0;if((h|0)!=0&(x|0)!=0){m=vr(k[h>>2]|0,c|0,b|0)|0;if(!m)La(h|0,x|0);L=x}else m=-1;if((m|0)==1)i=L;else break}if((l|0)==7){kr(c|0);return j|0}j=1;kr(c|0);return j|0}function Ig(a){a=a|0;var b=0;b=k[a>>2]|0;k[b+20>>2]=123;rb[k[b+4>>2]&31](a,-1);b=a+800|0;k[b>>2]=145943;k[b+4>>2]=2;return 1}function Jg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;if((b|0)<=0)return;c=a+800|0;d=c+4|0;e=k[d>>2]|0;if(e>>>0<b>>>0){f=k[a>>2]|0;k[f+20>>2]=123;rb[k[f+4>>2]&31](a,-1);k[c>>2]=145943;k[d>>2]=2;return}else{k[c>>2]=(k[c>>2]|0)+b;k[d>>2]=e-b;return}}function Kg(a){a=a|0;return}function Lg(a){a=a|0;var b=0;b=a+800|0;k[b>>2]=k[a+912>>2];k[b+4>>2]=k[a+916>>2];return}function Mg(a){a=a|0;var b=0,c=0;b=k[a+828>>2]|0;c=a+800|0;k[c>>2]=k[b+588>>2];k[c+4>>2]=k[b+608>>2];return}function Ng(a,b,c){a=+a;b=+b;c=c|0;var d=0,e=0,f=0.0,g=0.0,h=0.0;if(b<.016939999535679817){d=Sg(a,b)|0;return d|0}e=(c|0)==0;f=(b+-.016939999535679817)*285.7142768952314;if(e)g=f;else g=f+ +(iq()|0)*4.656612875245797e-10+-.5;c=~~g;if((c|0)>162){d=Sg(a,b)|0;return d|0}g=+o[107752+(c<<3)>>2];if(g>a){d=Sg(a,b)|0;return d|0}f=(a-g)*285.7142768952314;if(e)h=f;else h=f+ +(iq()|0)*4.656612875245797e-10+-.5;e=~~h;if((e|0)<(j[107752+(c<<3)+4>>1]|0)){d=(j[107752+(c<<3)+6>>1]|0)+e|0;return d|0}else{d=Sg(a,b)|0;return d|0}return 0}function Og(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0,h=0,i=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0;c=a>>>14&1023;if((c|0)!=0?(d=+ea(+((+(c|0)+.5)*.010830424696249145+-8.317766166719343)),!(d<=0.0)):0){c=a&16383;if(c>>>0>16288){e=.210526316;f=.473684211}else{a=0;g=163;a:while(1){h=a;while(1){if((g-h|0)<=1){i=h;k=9;break a}l=h+g>>1;m=j[107752+(l<<3)+6>>1]|0;n=c-(m<<16>>16)|0;if((n|0)>0)h=l;else{p=l;q=m;r=n;s=h;break}}if((r|0)<0){a=s;g=p}else{t=q;u=p;break}}if((k|0)==9){t=j[107752+(i<<3)+6>>1]|0;u=i}e=+o[107752+(u<<3)>>2]+(+(c-(t<<16>>16)|0)+.5)*3.5000001080334187e-03;f=(+(u|0)+.5)*3.5000001080334187e-03+.016939999535679817}v=1.0/(e*6.0-f*16.0+12.0);w=e*9.0*v;e=f*4.0*v;o[b>>2]=d*(w/e);o[b+4>>2]=d;o[b+8>>2]=d*((1.0-w-e)/e);return}o[b+8>>2]=0.0;o[b+4>>2]=0.0;o[b>>2]=0.0;return}function Pg(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0,n=0,p=0,q=0,r=0;c=a+4|0;d=+o[c>>2];e=d;if(!(e>=15.742))if(!(e<=.00024283)){f=(+fa(+e)*1.4426950408889634+12.0)*64.0;if(!b){g=d;h=f}else{e=f+ +(iq()|0)*4.656612875245797e-10+-.5;g=+o[c>>2];h=e}i=~~h;j=g}else{i=0;j=d}else{i=1023;j=d}d=+o[a>>2];g=j;j=d+g*15.0+ +o[a+8>>2]*3.0;if((i|0)==0|j<=0.0){k=.210526316;l=.473684211;m=Ng(k,l,b)|0;n=(m|0)<0;p=n?12266:m;q=i<<14;r=p|q;return r|0}k=d*4.0/j;l=g*9.0/j;m=Ng(k,l,b)|0;n=(m|0)<0;p=n?12266:m;q=i<<14;r=p|q;return r|0}function Qg(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,f=0.0,g=0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0.0,n=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0;c=a+4|0;d=+o[c>>2];do if(!(d>=18371976.0e12))if(!(d<=-18371976.0e12)){if(d>5.4136769e-20){e=(+fa(+d)*1.4426950408889634+64.0)*256.0;if(!b)f=e;else f=e+ +(iq()|0)*4.656612875245797e-10+-.5;g=~~f;break}if(d<-5.4136769e-20){e=(+fa(+-d)*1.4426950408889634+64.0)*256.0;if(!b)h=e;else h=e+ +(iq()|0)*4.656612875245797e-10+-.5;g=~~h|-32768}else g=0}else g=65535;else g=32767;while(0);h=+o[a>>2];d=+o[c>>2];f=h+d*15.0+ +o[a+8>>2]*3.0;if(!((g|0)==0|f<=0.0)){e=h*4.0/f;h=d*9.0/f;if(!(e<=0.0)){i=e;j=h;k=13}else{l=0;m=h}}else{i=.210526316;j=.473684211;k=13}if((k|0)==13){h=i*410.0;if(!b)n=h;else n=h+ +(iq()|0)*4.656612875245797e-10+-.5;l=~~n;m=j}k=l>>>0>255;if(m<=0.0){p=0;q=p>>>0>255;r=q?255:p;s=g<<16;t=l<<8;u=k?65280:t;v=u|s;w=v|r;return w|0}j=m*410.0;if(!b)x=j;else x=j+ +(iq()|0)*4.656612875245797e-10+-.5;p=~~x;q=p>>>0>255;r=q?255:p;s=g<<16;t=l<<8;u=k?65280:t;v=u|s;w=v|r;return w|0}function Rg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=r;r=r+16|0;d=c+8|0;if((b&-2|0)!=34676)Ja(146583,146646,1634,146656);if(!(_b(a,109056,2)|0)){vc(k[a+628>>2]|0,146656,146671,c);e=0;r=c;return e|0}f=me(32)|0;k[a+576>>2]=f;if(!f){g=k[a+628>>2]|0;k[d>>2]=k[a>>2];vc(g,146656,146713,d);e=0;r=c;return e|0}else{pe(f,0,32);k[f>>2]=-1;k[f+4>>2]=(b|0)==34677&1;k[f+20>>2]=15;k[a+504>>2]=22;k[a+508>>2]=23;k[a+540>>2]=25;k[a+548>>2]=26;k[a+516>>2]=24;k[a+544>>2]=27;k[a+552>>2]=28;k[a+556>>2]=19;k[a+564>>2]=20;b=a+672|0;k[f+24>>2]=k[b>>2];k[b>>2]=19;b=a+668|0;k[f+28>>2]=k[b>>2];k[b>>2]=20;e=1;r=c;return e|0}return 0}function Sg(a,b){a=+a;b=+b;var c=0,d=0,e=0.0,f=0.0,g=0.0,h=0.0,i=0.0,l=0,m=0,n=0,q=0,s=0,t=0,u=0.0,v=0,w=0.0,x=0.0,y=0,z=0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0;c=r;r=r+800|0;d=c;if(k[27282]|0){e=b+-.473684211;f=a+-.210526316;g=+da(+e,+f);h=g*15.915494277358546;i=h+50.0;l=~~i;m=109132+(l<<2)|0;n=k[m>>2]|0;r=c;return n|0}q=99;while(1){p[d+(q<<3)>>3]=2.0;if(!q){s=162;t=163;break}else q=q+-1|0}while(1){u=(+(s|0)+.5)*3.5000001080334187e-03+.016939999535679817;q=(j[107752+(s<<3)+4>>1]|0)+-1|0;switch(t|0){case 1:case 163:{v=1;break}default:v=q}w=+o[107752+(s<<3)>>2];x=u+-.473684211;y=107752+(s<<3)+6|0;z=q;do{u=+da(+x,+((+(z|0)+.5)*3.5000001080334187e-03+w+-.210526316))*15.915494277358546+50.0;q=~~u;A=+W(+(u-(+(q|0)+.5)));B=d+(q<<3)|0;if(A<+p[B>>3]){k[109132+(q<<2)>>2]=(j[y>>1]|0)+z;p[B>>3]=A}z=z-v|0}while((z|0)>-1);if(!s){C=99;D=100;break}else{z=s;s=s+-1|0;t=z}}while(1){do if(+p[d+(C<<3)>>3]>1.5){t=1;while(1){if(+p[d+(((t+C|0)%100|0)<<3)>>3]<1.5){E=t;break}s=t+1|0;if((s|0)<50)t=s;else{E=s;break}}t=D+99|0;s=-1;v=1;while(1){if(+p[d+(((t+s|0)%100|0)<<3)>>3]<1.5){F=v;G=s;break}z=v+1|0;y=~v;if((z|0)<50){s=y;v=z}else{F=z;G=y;break}}if((E|0)<(F|0)){k[109132+(C<<2)>>2]=k[109132+(((E+C|0)%100|0)<<2)>>2];break}else{k[109132+(C<<2)>>2]=k[109132+(((t+G|0)%100|0)<<2)>>2];break}}while(0);if(!C)break;else{v=C;C=C+-1|0;D=v}}k[27282]=1;e=b+-.473684211;f=a+-.210526316;g=+da(+e,+f);h=g*15.915494277358546;i=h+50.0;l=~~i;m=109132+(l<<2)|0;n=k[m>>2]|0;r=c;return n|0}function Tg(a,b,c){a=a|0;b=b|0;c=c|0;return}function Ug(a){a=a|0;return 1}function Vg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=r;r=r+16|0;c=b;d=k[a+576>>2]|0;k[a+652>>2]=3;e=m[a+90>>1]|0;a:do switch(e|0){case 32845:{if(dh(a)|0){f=a+532|0;if((j[a+88>>1]|0)==-30859){k[f>>2]=29;switch(k[d>>2]|0){case 0:{k[d+20>>2]=16;g=1;break a;break}case 1:{k[d+20>>2]=17;g=1;break a;break}case 3:{k[d+20>>2]=18;g=1;break a;break}default:{g=1;break a}}}else{k[f>>2]=30;switch(k[d>>2]|0){case 0:{k[d+20>>2]=19;g=1;break a;break}case 1:{k[d+20>>2]=20;g=1;break a;break}case 3:{k[d+20>>2]=21;g=1;break a;break}default:{g=1;break a}}}}else g=0;break}case 32844:{if(!(kh(a)|0))g=0;else{k[a+532>>2]=31;switch(k[d>>2]|0){case 0:{k[d+20>>2]=22;g=1;break a;break}case 3:{k[d+20>>2]=23;g=1;break a;break}default:{g=1;break a}}}break}default:{f=k[a+628>>2]|0;k[c>>2]=e;k[c+4>>2]=147007;vc(f,147521,146936,c);g=0}}while(0);r=b;return g|0}function Wg(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;e=Pd(a)|0;if(!e){f=0;return f|0}if((c|0)%(e|0)|0)Ja(146868,146646,385,147503);g=a+532|0;if(!c){f=1;return f|0}else{h=b;i=c}while(1){if(!(xb[k[g>>2]&63](a,h,e,d)|0)){f=0;j=7;break}if((i|0)==(e|0)){f=1;j=7;break}else{h=h+e|0;i=i-e|0}}if((j|0)==7)return f|0;return 0}function Xg(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;e=de(a)|0;if(!e){f=0;return f|0}if((c|0)%(e|0)|0)Ja(146868,146646,404,147486);g=a+532|0;if(!c){f=1;return f|0}else{h=b;i=c}while(1){if(!(xb[k[g>>2]&63](a,h,e,d)|0)){f=0;j=7;break}if((i|0)==(e|0)){f=1;j=7;break}else{h=h+e|0;i=i-e|0}}if((j|0)==7)return f|0;return 0}function Yg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0;b=r;r=r+16|0;c=b+8|0;d=b;e=k[a+576>>2]|0;f=a+90|0;g=m[f>>1]|0;a:do switch(g|0){case 32845:{if(dh(a)|0){h=a+536|0;if((j[a+88>>1]|0)==-30859){k[h>>2]=32;switch(k[e>>2]|0){case 2:{i=1;break a;break}case 0:{k[e+20>>2]=24;i=1;break a;break}case 1:{k[e+20>>2]=25;i=1;break a;break}default:{l=14;break a}}}else{k[h>>2]=33;switch(k[e>>2]|0){case 2:{i=1;break a;break}case 0:{k[e+20>>2]=26;i=1;break a;break}case 1:{k[e+20>>2]=27;i=1;break a;break}default:{l=14;break a}}}}else i=1;break}case 32844:{if(!(kh(a)|0))i=1;else{k[a+536>>2]=34;switch(k[e>>2]|0){case 1:{i=1;break a;break}case 0:break;default:{l=14;break a}}k[e+20>>2]=28;i=1}break}default:{h=k[a+628>>2]|0;k[d>>2]=g;k[d+4>>2]=147007;vc(h,146918,146936,d);i=1}}while(0);if((l|0)==14){l=k[a+628>>2]|0;k[c>>2]=(j[f>>1]|0)==-32692?147037:147042;vc(l,146918,147051,c);i=0}r=b;return i|0}function Zg(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;e=Pd(a)|0;if(!e){f=0;return f|0}if((c|0)%(e|0)|0)Ja(146868,146646,656,146900);g=a+536|0;if(!c){f=1;return f|0}else{h=b;i=c}while(1){if((xb[k[g>>2]&63](a,h,e,d)|0)!=1){f=0;j=7;break}if((i|0)==(e|0)){f=1;j=7;break}else{h=h+e|0;i=i-e|0}}if((j|0)==7)return f|0;return 0}function _g(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;e=de(a)|0;if(!e){f=0;return f|0}if((c|0)%(e|0)|0)Ja(146868,146646,674,146883);g=a+536|0;if(!c){f=1;return f|0}else{h=b;i=c}while(1){if((xb[k[g>>2]&63](a,h,e,d)|0)!=1){f=0;j=7;break}if((i|0)==(e|0)){f=1;j=7;break}else{h=h+e|0;i=i-e|0}}if((j|0)==7)return f|0;return 0}function $g(a){a=a|0;j[a+98>>1]=(j[a+90>>1]|0)==-32692?1:3;j[a+84>>1]=16;j[a+86>>1]=2;return}function ah(a){a=a|0;var b=0,c=0,d=0;b=a+576|0;c=k[b>>2]|0;if(!c)Ja(154168,146646,1537,146854);k[a+672>>2]=k[c+24>>2];k[a+668>>2]=k[c+28>>2];d=k[c+12>>2]|0;if(!d){ne(c);k[b>>2]=0;Ve(a);return}ne(d);ne(c);k[b>>2]=0;Ve(a);return}function bh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=k[a+576>>2]|0;if((b|0)==65560){e=k[d>>2]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[g>>2]=e;h=1;return h|0}else{h=nb[k[d+24>>2]&63](a,b,c)|0;return h|0}return 0}function ch(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;d=r;r=r+48|0;e=d+32|0;f=d+24|0;g=d+16|0;h=d+8|0;i=d;j=k[a+576>>2]|0;switch(b|0){case 65560:{l=(k[c>>2]|0)+(4-1)&~(4-1);m=k[l>>2]|0;k[c>>2]=l+4;k[j>>2]=m;switch(m|0){case 0:{n=32;o=3;break}case 1:{n=16;o=2;break}case 2:{k[i>>2]=1;Ob(a,277,i)|0;n=32;o=1;break}case 3:{n=8;o=1;break}default:{i=k[a+628>>2]|0;l=k[a>>2]|0;k[h>>2]=m;vc(i,l,146749,h);p=0;r=d;return p|0}}k[g>>2]=n;Ob(a,258,g)|0;k[f>>2]=o;Ob(a,339,f)|0;if(!(k[a+12>>2]&1024))q=-1;else q=ge(a)|0;k[a+496>>2]=q;q=Pd(a)|0;k[a+580>>2]=q;p=1;r=d;return p|0}case 65561:{q=(k[c>>2]|0)+(4-1)&~(4-1);f=k[q>>2]|0;k[c>>2]=q+4;k[j+4>>2]=f;if(f>>>0<2){p=1;r=d;return p|0}q=k[a+628>>2]|0;k[e>>2]=f;vc(q,146795,146811,e);p=0;r=d;return p|0}default:{p=nb[k[j+28>>2]&63](a,b,c)|0;r=d;return p|0}}return 0}function dh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0;b=r;r=r+32|0;c=b+16|0;d=b+8|0;e=k[a+576>>2]|0;if(!e)Ja(154187,146646,1335,147323);if((j[a+90>>1]|0)!=-32691)Ja(147339,146646,1336,147323);if((j[a+126>>1]|0)!=1){vc(k[a+628>>2]|0,147323,147380,b);f=0;r=b;return f|0}g=k[e>>2]|0;if((g|0)==-1){switch(m[a+84>>1]<<3|m[a+86>>1]|0){case 259:{h=0;break}case 258:case 257:case 260:{h=2;break}case 129:case 130:case 132:{h=1;break}case 65:case 68:{h=3;break}default:h=-1}switch(m[a+98>>1]|0){case 1:{i=(h|0)==2?2:-1;break}case 3:{i=(h|0)==2?-1:h;break}default:i=-1}k[e>>2]=i;l=i}else l=g;switch(l|0){case 0:{k[e+8>>2]=12;break}case 1:{k[e+8>>2]=6;break}case 2:{k[e+8>>2]=4;break}case 3:{k[e+8>>2]=3;break}default:{vc(k[a+628>>2]|0,147323,147433,d);f=0;r=b;return f|0}}if(!(k[a+12>>2]&1024))n=ha(k[a+100>>2]|0,k[a+56>>2]|0)|0;else n=ha(k[a+72>>2]|0,k[a+68>>2]|0)|0;k[e+16>>2]=n;if((n|0)!=0?(d=me(n<<2)|0,k[e+12>>2]=d,(d|0)!=0):0){f=1;r=b;return f|0}vc(k[a+628>>2]|0,147323,147254,c);f=0;r=b;return f|0}function eh(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,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=k[a+576>>2]|0;if(d<<16>>16)Ja(147105,146646,516,147308);if(!e)Ja(154187,146646,517,147308);d=(c|0)/(k[e+8>>2]|0)|0;do if((k[e>>2]|0)!=2)if((k[e+16>>2]|0)<(d|0))Ja(147125,146646,524,147308);else{c=k[e+12>>2]|0;vb[k[e+20>>2]&127](e,b,d);f=c;break}else f=b;while(0);b=a+604|0;e=k[b>>2]|0;c=a+592|0;g=k[c>>2]|0;h=a+608|0;j=g-(k[h>>2]|0)|0;do if(d){l=d;m=j;n=e;o=f;while(1){l=l+-1|0;if((m|0)<3){k[b>>2]=n;k[h>>2]=(k[c>>2]|0)-m;if(!(je(a)|0)){p=-1;q=17;break}r=(k[c>>2]|0)-(k[h>>2]|0)|0;s=k[b>>2]|0}else{r=m;s=n}i[s>>0]=(k[o>>2]|0)>>>16;i[s+1>>0]=(k[o>>2]|0)>>>8;t=s+3|0;i[s+2>>0]=k[o>>2];u=r+-3|0;if(!l){v=t;w=u;q=15;break}else{m=u;n=t;o=o+4|0}}if((q|0)==15){x=k[c>>2]|0;y=w;z=v;break}else if((q|0)==17)return p|0}else{x=g;y=j;z=e}while(0);k[b>>2]=z;k[h>>2]=x-y;p=1;return p|0}function fh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((c|0)<=0)return;d=a+4|0;e=c;c=k[a+12>>2]|0;a=b;while(1){b=Pg(a,k[d>>2]|0)|0;k[c>>2]=b;if((e|0)>1){e=e+-1|0;c=c+4|0;a=a+12|0}else break}return}function gh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;if((c|0)<=0)return;d=a+4|0;e=c;c=k[a+12>>2]|0;a=b;while(1){b=e;e=e+-1|0;f=j[a>>1]|0;g=f<<16>>16;do if(f<<16>>16>=1)if(f<<16>>16<=7409)if(!(k[d>>2]|0)){h=g+-3314>>2;break}else{h=~~((+(f<<16>>16)+-3314.0)*.25+ +(iq()|0)*4.656612875245797e-10+-.5);break}else h=1023;else h=0;while(0);f=Ng((+(j[a+2>>1]|0)+.5)*.000030517578125,(+(j[a+4>>1]|0)+.5)*.000030517578125,k[d>>2]|0)|0;k[c>>2]=((f|0)<0?12266:f)|h<<14;if((b|0)<=1)break;else{c=c+4|0;a=a+6|0}}return}function hh(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,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;e=k[a+576>>2]|0;if(d<<16>>16)Ja(147105,146646,568,147293);if(!e)Ja(154187,146646,569,147293);d=(c|0)/(k[e+8>>2]|0)|0;do if((k[e>>2]|0)!=2)if((k[e+16>>2]|0)<(d|0))Ja(147125,146646,577,147293);else{c=k[e+12>>2]|0;vb[k[e+20>>2]&127](e,b,d);f=c;break}else f=b;while(0);b=a+604|0;e=a+592|0;c=a+608|0;g=(d|0)>0;h=24;j=(k[e>>2]|0)-(k[c>>2]|0)|0;l=k[b>>2]|0;m=0;a:while(1){if(g){n=255<<h;o=0;p=j;q=l;r=m;while(1){if((p|0)<4){k[b>>2]=q;k[c>>2]=(k[e>>2]|0)-p;if(!(je(a)|0)){s=-1;t=43;break a}u=(k[e>>2]|0)-(k[c>>2]|0)|0;v=k[b>>2]|0}else{u=p;v=q}b:do if((o|0)<(d|0)){w=o;while(1){x=k[f+(w<<2)>>2]|0;y=1;while(1){z=y+w|0;A=(z|0)<(d|0);if(!A){B=z;C=A;D=y;break}if((k[f+(z<<2)>>2]^x)&n){B=z;C=A;D=y;break}A=y+1|0;if((A|0)<129)y=A;else{E=w;F=A;break b}}y=(D|0)>3;if(y|C^1){G=B;H=y;I=w;J=D;break}else w=B}E=H?I:G;F=J}else{E=o;F=r}while(0);c:do if((E-o&-2|0)==2){w=k[f+(o<<2)>>2]&n;y=o+1|0;while(1){x=y+1|0;if((k[f+(y<<2)>>2]&n|0)!=(w|0)){K=o;L=u;M=v;break c}if((x|0)==(E|0)){N=y;break}else y=x}i[v>>0]=127-o+N;i[v+1>>0]=w>>>h;K=E;L=u+-2|0;M=v+2|0}else{K=o;L=u;M=v}while(0);if((E|0)>(K|0)){y=~E;x=K;A=L;z=M;while(1){O=E-x|0;P=(O|0)>127?127:O;if((A|0)<(P+3|0)){k[b>>2]=z;k[c>>2]=(k[e>>2]|0)-A;if(!(je(a)|0)){s=-1;t=43;break a}Q=(k[e>>2]|0)-(k[c>>2]|0)|0;R=k[b>>2]|0}else{Q=A;R=z}i[R>>0]=P;O=R+1|0;if(!P){S=x;T=O;U=-1}else{V=x+y|0;W=(V|0)>-128?V:-128;V=R+(0-W)|0;X=x+-1|0;Y=x;Z=P;P=O;while(1){Z=Z+-1|0;i[P>>0]=(k[f+(Y<<2)>>2]|0)>>>h;if(!Z)break;else{Y=Y+1|0;P=P+1|0}}S=X-W|0;T=V;U=W}P=Q+U|0;if((E|0)>(S|0)){x=S;A=P;z=T}else{_=S;$=P;aa=T;break}}}else{_=K;$=L;aa=M}if((F|0)>3){i[aa>>0]=F+126;i[aa+1>>0]=(k[f+(E<<2)>>2]|0)>>>h;ba=$+-2|0;ca=aa+2|0;da=F}else{ba=$;ca=aa;da=0}o=da+_|0;if((o|0)>=(d|0)){ea=ba;fa=ca;ga=da;break}else{p=ba;q=ca;r=da}}}else{ea=j;fa=l;ga=m}h=h+-8|0;if((h|0)<=-1){ha=ea;ia=fa;t=42;break}else{j=ea;l=fa;m=ga}}if((t|0)==42){k[b>>2]=ia;k[c>>2]=(k[e>>2]|0)-ha;s=1;return s|0}else if((t|0)==43)return s|0;return 0}function ih(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((c|0)<=0)return;d=a+4|0;e=c;c=k[a+12>>2]|0;a=b;while(1){b=Qg(a,k[d>>2]|0)|0;k[c>>2]=b;if((e|0)>1){e=e+-1|0;c=c+4|0;a=a+12|0}else break}return}function jh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,u=0.0;d=k[a+12>>2]|0;e=a+4|0;a=k[e>>2]|0;f=(c|0)>0;if(!a){if(f){g=c;h=d;i=b}else return;while(1){k[h>>2]=((j[i+2>>1]|0)*410|0)>>>7&65280|m[i>>1]<<16|((j[i+4>>1]|0)*410|0)>>>15&255;if((g|0)>1){g=g+-1|0;h=h+4|0;i=i+6|0}else break}return}if(f){l=c;n=a;o=d;p=b}else return;while(1){b=m[p>>1]<<16;q=+(j[p+2>>1]|0)*.01251220703125;if(!n){r=q;s=0}else{t=q+ +(iq()|0)*4.656612875245797e-10+-.5;r=t;s=k[e>>2]|0}t=+(j[p+4>>1]|0)*.01251220703125;if(!s)u=t;else u=t+ +(iq()|0)*4.656612875245797e-10+-.5;k[o>>2]=~~r<<8&65280|b|~~u&255;if((l|0)<=1)break;l=l+-1|0;n=k[e>>2]|0;o=o+4|0;p=p+6|0}return}function kh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0;b=r;r=r+16|0;c=b+8|0;d=b;e=k[a+576>>2]|0;if(!e)Ja(154187,146646,1243,147148);if((j[a+90>>1]|0)!=-32692)Ja(147164,146646,1244,147148);f=k[e>>2]|0;if((f|0)==-1){switch(m[a+86>>1]|m[a+84>>1]<<6|m[a+98>>1]<<3|0){case 2059:{g=0;break}case 1033:case 1034:case 1036:{g=1;break}case 521:case 524:{g=3;break}default:g=-1}k[e>>2]=g;h=g}else h=f;switch(h|0){case 0:{k[e+8>>2]=4;break}case 1:{k[e+8>>2]=2;break}case 3:{k[e+8>>2]=1;break}default:{vc(k[a+628>>2]|0,147148,147203,d);i=0;r=b;return i|0}}if(!(k[a+12>>2]&1024))l=ha(k[a+100>>2]|0,k[a+56>>2]|0)|0;else l=ha(k[a+72>>2]|0,k[a+68>>2]|0)|0;k[e+16>>2]=l;if((l|0)!=0?(d=me(l<<1)|0,k[e+12>>2]=d,(d|0)!=0):0){i=1;r=b;return i|0}vc(k[a+628>>2]|0,147148,147254,c);i=0;r=b;return i|0}function lh(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,l=0,n=0,o=0,p=0,q=0,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;e=k[a+576>>2]|0;if(d<<16>>16)Ja(147105,146646,428,147112);if(!e)Ja(154187,146646,429,147112);d=(c|0)/(k[e+8>>2]|0)|0;do if((k[e>>2]|0)!=1)if((k[e+16>>2]|0)<(d|0))Ja(147125,146646,436,147112);else{c=k[e+12>>2]|0;vb[k[e+20>>2]&127](e,b,d);f=c;break}else f=b;while(0);b=a+604|0;e=a+592|0;c=a+608|0;g=(d|0)>0;h=8;l=(k[e>>2]|0)-(k[c>>2]|0)|0;n=k[b>>2]|0;o=0;a:while(1){if(g){p=255<<h;q=0;r=l;s=n;t=o;while(1){if((r|0)<4){k[b>>2]=s;k[c>>2]=(k[e>>2]|0)-r;if(!(je(a)|0)){u=-1;v=43;break a}w=(k[e>>2]|0)-(k[c>>2]|0)|0;x=k[b>>2]|0}else{w=r;x=s}b:do if((q|0)<(d|0)){y=q;while(1){z=(m[f+(y<<1)>>1]&p)<<16>>16;A=1;while(1){B=A+y|0;C=(B|0)<(d|0);if(!C){D=B;E=C;F=A;break}if((j[f+(B<<1)>>1]&p|0)!=(z|0)){D=B;E=C;F=A;break}C=A+1|0;if((C|0)<129)A=C;else{G=y;H=C;break b}}A=(F|0)>3;if(A|E^1){I=D;J=A;K=y;L=F;break}else y=D}G=J?K:I;H=L}else{G=q;H=t}while(0);c:do if((G-q&-2|0)==2){y=(m[f+(q<<1)>>1]&p)<<16>>16;A=q+1|0;while(1){z=A+1|0;if((j[f+(A<<1)>>1]&p|0)!=(y|0)){M=q;N=w;O=x;break c}if((z|0)==(G|0)){P=A;break}else A=z}i[x>>0]=127-q+P;i[x+1>>0]=y>>h;M=G;N=w+-2|0;O=x+2|0}else{M=q;N=w;O=x}while(0);if((G|0)>(M|0)){A=~G;z=M;C=N;B=O;while(1){Q=G-z|0;R=(Q|0)>127?127:Q;if((C|0)<(R+3|0)){k[b>>2]=B;k[c>>2]=(k[e>>2]|0)-C;if(!(je(a)|0)){u=-1;v=43;break a}S=(k[e>>2]|0)-(k[c>>2]|0)|0;T=k[b>>2]|0}else{S=C;T=B}i[T>>0]=R;Q=T+1|0;if(!R){U=z;V=Q;W=-1}else{X=z+A|0;Y=(X|0)>-128?X:-128;X=T+(0-Y)|0;Z=z+-1|0;_=z;$=R;R=Q;while(1){$=$+-1|0;i[R>>0]=j[f+(_<<1)>>1]>>h;if(!$)break;else{_=_+1|0;R=R+1|0}}U=Z-Y|0;V=X;W=Y}R=S+W|0;if((G|0)>(U|0)){z=U;C=R;B=V}else{aa=U;ba=R;ca=V;break}}}else{aa=M;ba=N;ca=O}if((H|0)>3){i[ca>>0]=H+126;i[ca+1>>0]=j[f+(G<<1)>>1]>>h;da=ba+-2|0;ea=ca+2|0;fa=H}else{da=ba;ea=ca;fa=0}q=fa+aa|0;if((q|0)>=(d|0)){ga=da;ha=ea;ia=fa;break}else{r=da;s=ea;t=fa}}}else{ga=l;ha=n;ia=o}h=h+-8|0;if((h|0)<=-1){ja=ga;ka=ha;v=42;break}else{l=ga;n=ha;o=ia}}if((v|0)==42){k[b>>2]=ka;k[c>>2]=(k[e>>2]|0)-ja;u=1;return u|0}else if((v|0)==43)return u|0;return 0}function mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0,g=0,h=0.0,i=0.0,l=0,m=0.0;if((c|0)<=0)return;d=a+4|0;e=c;c=k[a+12>>2]|0;a=b;while(1){b=e;e=e+-1|0;f=+o[a>>2];a=a+4|0;g=k[d>>2]|0;do if(!(f>=18371976.0e12))if(!(f<=-18371976.0e12)){if(f>5.4136769e-20){h=(+fa(+f)*1.4426950408889634+64.0)*256.0;if(!g)i=h;else i=h+ +(iq()|0)*4.656612875245797e-10+-.5;l=~~i;break}if(f<-5.4136769e-20){h=(+fa(+-f)*1.4426950408889634+64.0)*256.0;if(!g)m=h;else m=h+ +(iq()|0)*4.656612875245797e-10+-.5;l=~~m|-32768}else l=0}else l=65535;else l=32767;while(0);j[c>>1]=l;if((b|0)<=1)break;else c=c+2|0}return}function nh(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,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;e=r;r=r+16|0;f=e;g=k[a+576>>2]|0;if(d<<16>>16)Ja(147105,146646,263,147614);if(!g)Ja(154187,146646,264,147614);d=(c|0)/(k[g+8>>2]|0)|0;do if((k[g>>2]|0)!=2)if((k[g+16>>2]|0)<(d|0))Ja(147125,146646,271,147614);else{h=k[g+12>>2]|0;break}else h=b;while(0);c=a+604|0;i=k[c>>2]|0;j=a+608|0;m=k[j>>2]|0;if((m|0)>0&(d|0)>0){n=((m+((m|0)<3?~m:-4)+3|0)>>>0)/3|0;o=d+-1|0;p=n>>>0>o>>>0?o:n;n=~p;o=p+1|0;p=n*3|0;q=ha(n,-3)|0;n=i;s=0;while(1){k[h+(s<<2)>>2]=(l[n+1>>0]|0)<<8|(l[n>>0]|0)<<16|(l[n+2>>0]|0);s=s+1|0;if((s|0)==(o|0))break;else n=n+3|0}t=i+q|0;u=m+p|0;v=o}else{t=i;u=m;v=0}k[c>>2]=t;k[j>>2]=u;if((d|0)==(v|0)){vb[k[g+20>>2]&127](g,b,d);w=1;r=e;return w|0}else{b=k[a+628>>2]|0;g=d-v|0;k[f>>2]=k[a+444>>2];a=f+8|0;k[a>>2]=g;k[a+4>>2]=((g|0)<0)<<31>>31;vc(b,147614,147552,f);w=0;r=e;return w|0}return 0}function oh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)<=0)return;d=c;c=k[a+12>>2]|0;a=b;while(1){Og(k[c>>2]|0,a);if((d|0)>1){d=d+-1|0;c=c+4|0;a=a+12|0}else break}return}function ph(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0.0,i=0.0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;if((c|0)<=0)return;d=c;c=k[a+12>>2]|0;a=b;while(1){b=d;d=d+-1|0;e=k[c>>2]|0;f=a+2|0;j[a>>1]=(e>>>12&4093)+13314;g=e&16383;if(g>>>0>16288){h=.210526316;i=.473684211}else{e=0;l=163;a:while(1){m=e;while(1){if((l-m|0)<=1){n=m;p=8;break a}q=m+l>>1;r=j[107752+(q<<3)+6>>1]|0;s=g-(r<<16>>16)|0;if((s|0)>0)m=q;else{t=q;u=r;v=s;w=m;break}}if((v|0)<0){e=w;l=t}else{x=u;y=t;break}}if((p|0)==8){p=0;x=j[107752+(n<<3)+6>>1]|0;y=n}h=+o[107752+(y<<3)>>2]+(+(g-(x<<16>>16)|0)+.5)*3.5000001080334187e-03;i=(+(y|0)+.5)*3.5000001080334187e-03+.016939999535679817}j[f>>1]=~~(h*32768.0);j[a+4>>1]=~~(i*32768.0);if((b|0)<=1)break;else{c=c+4|0;a=a+6|0}}return}function qh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0.0,l=0.0,m=0.0,n=0.0,p=0.0,q=0.0,s=0,t=0,u=0;d=r;r=r+16|0;e=d;if((c|0)<=0){r=d;return}f=e+4|0;g=e+8|0;h=c;c=k[a+12>>2]|0;a=b;while(1){b=h;h=h+-1|0;Og(k[c>>2]|0,e);c=c+4|0;j=+o[e>>2];l=+o[f>>2];m=+o[g>>2];n=j*2.69-l*1.276-m*.414;p=l*1.978-j*1.022+m*.044;q=j*.061-l*.224+m*1.163;if(!(n<=0.0))if(!(n>=1.0))s=~~(+X(+n)*256.0)&255;else s=-1;else s=0;i[a>>0]=s;if(!(p<=0.0))if(!(p>=1.0))t=~~(+X(+p)*256.0)&255;else t=-1;else t=0;i[a+1>>0]=t;if(!(q<=0.0))if(!(q>=1.0))u=~~(+X(+q)*256.0)&255;else u=-1;else u=0;i[a+2>>0]=u;if((b|0)<=1)break;else a=a+3|0}r=d;return}function rh(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,j=0,m=0,n=0,o=0,p=0,q=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;e=r;r=r+16|0;f=e;if(d<<16>>16)Ja(147105,146646,319,147599);d=k[a+576>>2]|0;if(!d)Ja(154187,146646,321,147599);g=(c|0)/(k[d+8>>2]|0)|0;do if((k[d>>2]|0)!=2)if((k[d+16>>2]|0)<(g|0))Ja(147125,146646,328,147599);else{h=k[d+12>>2]|0;break}else h=b;while(0);pe(h,0,g<<2);c=a+604|0;j=k[c>>2]|0;m=a+608|0;n=k[m>>2]|0;a:do if((g|0)>0){o=j;p=n;q=32;while(1){q=q+-8|0;if((q|0)<=-1){s=o;t=p;u=26;break a}b:do if((p|0)>0){v=o;w=p;x=0;while(1){y=i[v>>0]|0;z=y&255;A=v+1|0;c:do if(y<<24>>24<0){B=v+2|0;C=(l[A>>0]|0)<<q;D=w+-2|0;if((x|0)<(g|0)){E=x-g|0;F=126-z|0;G=x-(E>>>0>F>>>0?E:F)|0;F=x;do{E=h+(F<<2)|0;F=F+1|0;k[E>>2]=k[E>>2]|C}while((F|0)!=(G|0));H=B;I=D;J=G}else{H=B;I=D;J=x}}else{G=w+-1|0;if(!G){K=A;L=0;M=x;break b}else{N=G;O=A;P=x;Q=z}while(1){if(!((P|0)<(g|0)&(Q|0)!=0)){H=O;I=N;J=P;break c}G=O+1|0;F=P+1|0;C=h+(P<<2)|0;k[C>>2]=(l[O>>0]|0)<<q|k[C>>2];N=N+-1|0;if(!N){K=G;L=0;M=F;break b}else{O=G;P=F;Q=Q+-1|0}}}while(0);if((g|0)>(J|0)&(I|0)>0){v=H;w=I;x=J}else{K=H;L=I;M=J;break}}}else{K=o;L=p;M=0}while(0);if((g|0)!=(M|0)){R=K;S=L;T=M;u=25;break}else{o=K;p=L}}}else{p=(g|0)==0;o=32;while(1){o=o+-8|0;if((o|0)<=-1){s=j;t=n;u=26;break a}if(!p){R=j;S=n;T=0;u=25;break}}}while(0);if((u|0)==25){n=k[a+628>>2]|0;j=g-T|0;k[f>>2]=k[a+444>>2];a=f+8|0;k[a>>2]=j;k[a+4>>2]=((j|0)<0)<<31>>31;vc(n,147599,147552,f);U=0;V=S;W=R;k[c>>2]=W;k[m>>2]=V;r=e;return U|0}else if((u|0)==26){vb[k[d+20>>2]&127](d,b,g);U=1;V=t;W=s;k[c>>2]=W;k[m>>2]=V;r=e;return U|0}return 0}function sh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0.0,i=0.0,j=0.0,l=0.0,m=0.0;if((c|0)<=0)return;d=c;c=k[a+12>>2]|0;a=b;while(1){b=d;d=d+-1|0;e=k[c>>2]|0;c=c+4|0;f=e>>16;g=f&32767;if((g|0)!=0?(h=+ea(+((+(g|0)+.5)*2.7076061740622863e-03+-44.3614195558365)),i=(f&32768|0)!=0?-h:h,!(i<=0.0)):0){h=(+((e>>>8&255)>>>0)+.5)*2.4390243902439024e-03;j=(+((e&255)>>>0)+.5)*2.4390243902439024e-03;l=1.0/(h*6.0-j*16.0+12.0);m=h*9.0*l;h=j*4.0*l;o[a>>2]=i*(m/h);o[a+4>>2]=i;o[a+8>>2]=i*((1.0-m-h)/h)}else{o[a+8>>2]=0.0;o[a+4>>2]=0.0;o[a>>2]=0.0}if((b|0)<=1)break;else a=a+12|0}return}function th(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)<=0)return;d=c;c=k[a+12>>2]|0;a=b;while(1){b=k[c>>2]|0;j[a>>1]=b>>>16;j[a+2>>1]=~~((+((b>>>8&255)>>>0)+.5)*2.4390243902439024e-03*32768.0);j[a+4>>1]=~~((+((b&255)>>>0)+.5)*2.4390243902439024e-03*32768.0);if((d|0)>1){d=d+-1|0;c=c+4|0;a=a+6|0}else break}return}function uh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0.0,j=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,t=0,u=0;if((c|0)<=0)return;d=c;c=k[a+12>>2]|0;a=b;while(1){b=d;d=d+-1|0;e=k[c>>2]|0;c=c+4|0;f=e>>16;g=f&32767;if((g|0)!=0?(h=+ea(+((+(g|0)+.5)*2.7076061740622863e-03+-44.3614195558365)),j=(f&32768|0)!=0?-h:h,!(j<=0.0)):0){h=(+((e>>>8&255)>>>0)+.5)*2.4390243902439024e-03;l=(+((e&255)>>>0)+.5)*2.4390243902439024e-03;m=1.0/(h*6.0-l*16.0+12.0);n=h*9.0*m;h=l*4.0*m;o=j*(n/h);p=j;q=j*((1.0-n-h)/h)}else{o=0.0;p=0.0;q=0.0}h=o;n=p;j=q;m=h*2.69-n*1.276-j*.414;l=j*.044+(n*1.978-h*1.022);r=j*1.163+(h*.061-n*.224);if(!(m<=0.0))if(!(m>=1.0))s=~~(+X(+m)*256.0)&255;else s=-1;else s=0;i[a>>0]=s;if(!(l<=0.0))if(!(l>=1.0))t=~~(+X(+l)*256.0)&255;else t=-1;else t=0;i[a+1>>0]=t;if(!(r<=0.0))if(!(r>=1.0))u=~~(+X(+r)*256.0)&255;else u=-1;else u=0;i[a+2>>0]=u;if((b|0)<=1)break;else a=a+3|0}return}function vh(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,n=0,o=0,p=0,q=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;e=r;r=r+16|0;f=e;g=k[a+576>>2]|0;if(d<<16>>16)Ja(147105,146646,197,147539);if(!g)Ja(154187,146646,198,147539);d=(c|0)/(k[g+8>>2]|0)|0;do if((k[g>>2]|0)!=1)if((k[g+16>>2]|0)<(d|0))Ja(147125,146646,205,147539);else{h=k[g+12>>2]|0;break}else h=b;while(0);pe(h,0,d<<1);c=a+604|0;n=a+608|0;o=(d|0)>0;p=k[c>>2]|0;q=k[n>>2]|0;s=16;while(1){s=s+-8|0;if((s|0)<=-1){t=p;u=q;v=23;break}a:do if(o&(q|0)>0){w=p;x=q;y=0;while(1){z=i[w>>0]|0;A=z&255;B=w+1|0;b:do if(z<<24>>24<0){C=w+2|0;D=(l[B>>0]|0)<<s;E=x+-2|0;if((y|0)<(d|0)){F=y-d|0;G=126-A|0;H=y-(F>>>0>G>>>0?F:G)|0;G=y;do{F=h+(G<<1)|0;G=G+1|0;j[F>>1]=m[F>>1]|0|D}while((G|0)!=(H|0));I=C;J=E;K=H}else{I=C;J=E;K=y}}else{H=x+-1|0;if(!H){L=B;M=0;N=y;break a}else{O=H;P=B;Q=y;R=A}while(1){if(!((Q|0)<(d|0)&(R|0)!=0)){I=P;J=O;K=Q;break b}H=P+1|0;G=Q+1|0;D=h+(Q<<1)|0;j[D>>1]=m[D>>1]|0|(l[P>>0]|0)<<s;O=O+-1|0;if(!O){L=H;M=0;N=G;break a}else{P=H;Q=G;R=R+-1|0}}}while(0);if((d|0)>(K|0)&(J|0)>0){w=I;x=J;y=K}else{L=I;M=J;N=K;break}}}else{L=p;M=q;N=0}while(0);if((d|0)!=(N|0)){S=L;T=M;U=N;v=22;break}else{p=L;q=M}}if((v|0)==22){M=k[a+628>>2]|0;q=d-U|0;k[f>>2]=k[a+444>>2];a=f+8|0;k[a>>2]=q;k[a+4>>2]=((q|0)<0)<<31>>31;vc(M,147539,147552,f);V=0;W=T;X=S;k[c>>2]=X;k[n>>2]=W;r=e;return V|0}else if((v|0)==23){vb[k[g+20>>2]&127](g,b,d);V=1;W=u;X=t;k[c>>2]=X;k[n>>2]=W;r=e;return V|0}return 0}function wh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0,g=0.0;if((c|0)<=0)return;d=c;c=k[a+12>>2]|0;a=b;while(1){b=j[c>>1]|0;e=b&32767;if(!e)f=0.0;else{g=+ea(+((+(e|0)+.5)*2.7076061740622863e-03+-44.3614195558365));f=(b&32768|0)!=0?-g:g}o[a>>2]=f;if((d|0)>1){d=d+-1|0;c=c+2|0;a=a+4|0}else break}return}function xh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0.0,h=0.0,l=0;if((c|0)<=0)return;d=c;c=b;b=k[a+12>>2]|0;while(1){a=d;d=d+-1|0;e=j[b>>1]|0;b=b+2|0;f=e&32767;if((f|0)!=0?(g=+ea(+((+(f|0)+.5)*2.7076061740622863e-03+-44.3614195558365)),h=(e&32768|0)!=0?-g:g,!(h<=0.0)):0)if(!(h>=1.0))l=~~(+X(+h)*256.0);else l=255;else l=0;i[c>>0]=l;if((a|0)<=1)break;else c=c+1|0}return}function yh(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;if((b|0)!=5)Ja(147656,147682,1110,147692);b=me(160)|0;k[a+576>>2]=b;if(!b){vc(k[a+628>>2]|0,147692,147704,c);d=0;r=c;return d|0}else{k[b+124>>2]=0;k[b+104>>2]=0;k[b+152>>2]=0;k[b+80>>2]=k[a+8>>2];k[a+504>>2]=25;k[a+508>>2]=26;k[a+512>>2]=31;k[a+532>>2]=35;k[a+540>>2]=35;k[a+548>>2]=35;k[a+516>>2]=27;k[a+524>>2]=32;k[a+528>>2]=28;k[a+536>>2]=36;k[a+544>>2]=36;k[a+552>>2]=36;k[a+564>>2]=21;Ii(a)|0;d=1;r=c;return d|0}return 0}function zh(a){a=a|0;return 1}function Ah(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0;b=r;r=r+16|0;c=b+8|0;d=b;e=a+576|0;f=k[e>>2]|0;do if(!f){g=me(160)|0;k[e>>2]=g;if(!g){vc(k[a+628>>2]|0,148271,147704,d);h=0;r=b;return h|0}else{k[g+124>>2]=0;k[g+104>>2]=0;Ii(a)|0;g=k[e>>2]|0;if(g){l=g;break}Ja(154187,147682,229,148271)}}else l=f;while(0);f=l+124|0;if(k[f>>2]|0){h=1;r=b;return h|0}l=me(40952)|0;k[f>>2]=l;if(!l){vc(k[a+628>>2]|0,148271,148286,c);h=0;r=b;return h|0}else m=255;while(1){c=m&255;i[l+(m<<3)+6>>0]=c;i[l+(m<<3)+7>>0]=c;j[l+(m<<3)+4>>1]=1;k[l+(m<<3)>>2]=0;if(!m)break;else m=m+-1|0}pe(l+2048|0,0,16);h=1;r=b;return h|0}function Bh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0;b=r;r=r+16|0;c=b;d=k[a+576>>2]|0;if(!d)Ja(154187,147682,267,148208);e=d+124|0;f=k[e>>2]|0;if(!f){ub[k[a+508>>2]&63](a)|0;g=k[e>>2]|0;if(!g){h=0;r=b;return h|0}else l=g}else l=f;f=k[a+588>>2]|0;if((i[f>>0]|0)==0?(i[f+1>>0]&1)!=0:0){f=d+104|0;if(!(k[f>>2]|0)){ie(k[a+628>>2]|0,148208,148221,c);k[a+532>>2]=37;k[a+540>>2]=37;k[a+548>>2]=37;ub[k[a+508>>2]&63](a)|0;k[f>>2]=37;m=k[e>>2]|0}else m=l;j[d+66>>1]=511;n=m}else{j[d+66>>1]=510;k[d+104>>2]=35;n=l}j[d+64>>1]=9;k[d+76>>2]=0;k[d+72>>2]=0;k[d+88>>2]=0;l=d+84|0;k[l>>2]=511;m=k[a+608>>2]|0;a=rr(m|0,((m|0)<0)<<31>>31|0,3)|0;m=d+96|0;k[m>>2]=a;k[m+4>>2]=L;m=n+2064|0;k[d+116>>2]=m;pe(m,0,38888);m=k[e>>2]|0;k[d+112>>2]=m+-8;k[d+120>>2]=m+((k[l>>2]|0)+-1<<3);h=1;r=b;return h|0}function Ch(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,n=0,o=0,p=0,q=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,M=0,N=0,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,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,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,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;d=r;r=r+80|0;e=d+64|0;f=d+56|0;g=d+48|0;h=d+40|0;n=d+32|0;o=d+24|0;p=d+16|0;q=d+8|0;s=d;t=k[a+576>>2]|0;if(!t)Ja(154187,147682,375,147871);u=t+124|0;if(!(k[u>>2]|0))Ja(147881,147682,376,147871);v=t+88|0;w=k[v>>2]|0;do if(!w){x=c;y=b}else{z=k[t+108>>2]|0;A=(m[z+4>>1]|0)-w|0;if((A|0)<=(c|0)){B=b+A|0;C=z;D=A;E=B;do{E=E+-1|0;F=C;C=k[C>>2]|0;i[E>>0]=i[F+6>>0]|0;D=D+-1|0}while((D|0)!=0&(C|0)!=0);k[v>>2]=0;x=c-A|0;y=B;break}k[v>>2]=w+c;C=z;D=A;do{C=k[C>>2]|0;D=D+-1|0;G=(C|0)!=0}while((D|0)>(c|0)&G);if(!G){H=1;r=d;return H|0}D=C;A=c;z=b+c|0;do{z=z+-1|0;i[z>>0]=i[D+6>>0]|0;D=k[D>>2]|0;A=A+-1|0}while((A|0)!=0&(D|0)!=0);H=1;r=d;return H|0}while(0);c=a+604|0;b=k[c>>2]|0;G=t+64|0;w=m[G>>1]|0;D=t+72|0;A=k[D>>2]|0;z=t+76|0;C=k[z>>2]|0;B=t+84|0;E=k[B>>2]|0;F=t+112|0;I=k[F>>2]|0;J=t+116|0;K=k[J>>2]|0;M=t+120|0;N=k[M>>2]|0;a:do if((x|0)>0){O=t+96|0;P=I;Q=b;R=K;S=N;T=w;U=E;V=C;W=A;X=x;Y=y;b:while(1){Z=O;_=k[Z>>2]|0;$=k[Z+4>>2]|0;Z=((T|0)<0)<<31>>31;if($>>>0<Z>>>0|($|0)==(Z|0)&_>>>0<T>>>0){aa=P;ba=Q;ca=R;da=S;ea=T;fa=U;ga=V;ha=W;ia=X;ja=18;break}ka=Q+1|0;la=l[Q>>0]|0|W<<8;ma=V+8|0;if((ma|0)<(T|0)){na=Q+2|0;oa=V+16|0;pa=l[ka>>0]|0|la<<8}else{na=ka;oa=ma;pa=la}la=oa-T|0;ma=pa>>>la&U;ka=ma&65535;qa=pr(_|0,$|0,T|0,Z|0)|0;Z=O;k[Z>>2]=qa;k[Z+4>>2]=L;Z=ma&65535;c:do switch(ka<<16>>16){case 257:{ra=na;sa=R;ta=S;ua=T;va=U;wa=la;xa=pa;ya=X;za=P;break a;break}case 256:{qa=k[u>>2]|0;$=na;_=la;Aa=pa;d:while(1){Ba=qa+2064|0;pe(Ba,0,38888);Ca=k[u>>2]|0;Da=O;Ea=k[Da>>2]|0;Fa=k[Da+4>>2]|0;if(Fa>>>0<0|(Fa|0)==0&Ea>>>0<9){Ga=Ba;Ha=Ca;Ia=P;Ka=$;La=_;Ma=Aa;Na=X;ja=24;break b}Da=$+1|0;Oa=l[$>>0]|0|Aa<<8;Pa=_+8|0;if((Pa|0)<9){Qa=$+2|0;Ra=_+16|0;Sa=l[Da>>0]|0|Oa<<8}else{Qa=Da;Ra=Pa;Sa=Oa}Oa=Ra+-9|0;Pa=Sa>>>Oa;Da=Pa&511;Ta=Da&65535;Ua=sr(Ea|0,Fa|0,-9,-1)|0;Fa=O;k[Fa>>2]=Ua;k[Fa+4>>2]=L;switch(Ta<<16>>16){case 257:{Va=Ba;Wa=Ca;Xa=Oa;Ya=P;Za=Qa;_a=Sa;$a=X;ja=55;break b;break}case 256:{qa=Ca;$=Qa;_=Oa;Aa=Sa;break}default:{ab=Ba;bb=Ca;cb=Oa;db=Pa;eb=Da;fb=Ta;gb=Qa;hb=Sa;break d}}}if((fb&65535)>256){ja=29;break b}i[Y>>0]=db;ib=gb;jb=ab;kb=bb+4080|0;lb=9;mb=511;nb=cb;ob=hb;pb=X+-1|0;qb=(k[u>>2]|0)+(eb<<3)|0;rb=Y+1|0;break}default:{Aa=k[u>>2]|0;_=Aa+(Z<<3)|0;$=Aa+40952|0;if(!(R>>>0>=Aa>>>0&R>>>0<$>>>0)){ja=33;break b}k[R>>2]=P;if(!(P>>>0>=Aa>>>0&P>>>0<$>>>0)){ja=35;break b}$=R+7|0;i[$>>0]=i[P+7>>0]|0;j[R+4>>1]=(m[P+4>>1]|0)+1;i[R+6>>0]=i[(_>>>0<R>>>0?Aa+(Z<<3)+7|0:$)>>0]|0;$=R+8|0;if($>>>0>S>>>0){qa=T+1|0;Ta=(qa|0)>12?12:qa;qa=1<<Ta;sb=Aa+(qa+-2<<3)|0;tb=Ta;ub=qa+-1|0}else{sb=S;tb=T;ub=U}if((ka&65535)<=255){i[Y>>0]=ma;ib=na;jb=$;kb=sb;lb=tb;mb=ub;nb=la;ob=pa;pb=X+-1|0;qb=_;rb=Y+1|0;break c}qa=j[Aa+(Z<<3)+4>>1]|0;Aa=qa&65535;if(!(qa<<16>>16)){ja=40;break b}if((X|0)<(Aa|0)){vb=la;wb=_;xb=$;yb=na;zb=sb;Ab=tb;Bb=ub;Cb=pa;Db=X;Eb=Y;ja=42;break b}qa=Y+Aa|0;Ta=_;Da=qa;do{Da=Da+-1|0;Pa=Ta;Ta=k[Ta>>2]|0;i[Da>>0]=i[Pa+6>>0]|0;Fb=(Ta|0)!=0}while(Da>>>0>Y>>>0&Fb);if(Fb){Gb=la;Hb=_;Ib=$;Jb=na;Kb=sb;Lb=tb;Mb=ub;Nb=pa;Ob=X;ja=52;break b}ib=na;jb=$;kb=sb;lb=tb;mb=ub;nb=la;ob=pa;pb=X-Aa|0;qb=_;rb=qa}}while(0);if((pb|0)>0){P=qb;Q=ib;R=jb;S=kb;T=lb;U=mb;V=nb;W=ob;X=pb;Y=rb}else{ra=ib;sa=jb;ta=kb;ua=lb;va=mb;wa=nb;xa=ob;ya=pb;za=qb;break a}}if((ja|0)==18){Y=k[a+628>>2]|0;k[s>>2]=k[a+452>>2];ie(Y,147871,147905,s);ra=ba;sa=ca;ta=da;ua=ea;va=fa;wa=ga;xa=ha;ya=ia;za=aa;break}else if((ja|0)==24){Y=k[a+628>>2]|0;k[q>>2]=k[a+452>>2];ie(Y,147871,147905,q);ra=Ka;sa=Ga;ta=Ha+4080|0;ua=9;va=511;wa=La;xa=Ma;ya=Na;za=Ia;break}else if((ja|0)==29){Y=k[a+628>>2]|0;X=k[a>>2]|0;k[p>>2]=k[a+444>>2];vc(Y,X,147954,p);H=0;r=d;return H|0}else if((ja|0)==33){X=k[a+628>>2]|0;k[o>>2]=k[a+444>>2];vc(X,147871,148e3,o);H=0;r=d;return H|0}else if((ja|0)==35){X=k[a+628>>2]|0;k[n>>2]=k[a+444>>2];vc(X,147871,148e3,n);H=0;r=d;return H|0}else if((ja|0)==40){X=k[a+628>>2]|0;k[h>>2]=k[a+444>>2];vc(X,147871,148035,h);H=0;r=d;return H|0}else if((ja|0)==42){k[t+108>>2]=wb;X=wb;while(1){Y=k[X>>2]|0;if(!Y){ra=yb;sa=xb;ta=zb;ua=Ab;va=Bb;wa=vb;xa=Cb;ya=Db;za=wb;break a}if((m[Y+4>>1]|0|0)>(Db|0))X=Y;else{Pb=Y;break}}k[v>>2]=Db;X=Pb;Y=Db;W=Eb+Db|0;do{W=W+-1|0;i[W>>0]=i[X+6>>0]|0;X=k[X>>2]|0;Y=Y+-1|0;Qb=(X|0)!=0}while((Y|0)!=0&Qb);if(!Qb){ra=yb;sa=xb;ta=zb;ua=Ab;va=Bb;wa=vb;xa=Cb;ya=Y;za=wb;break}X=k[a+628>>2]|0;k[g>>2]=k[a+444>>2];vc(X,147871,148106,g);ra=yb;sa=xb;ta=zb;ua=Ab;va=Bb;wa=vb;xa=Cb;ya=Y;za=wb;break}else if((ja|0)==52){X=k[a+628>>2]|0;k[f>>2]=k[a+444>>2];vc(X,147871,148106,f);ra=Jb;sa=Ib;ta=Kb;ua=Lb;va=Mb;wa=Gb;xa=Nb;ya=Ob;za=Hb;break}else if((ja|0)==55){ra=Za;sa=Va;ta=Wa+4080|0;ua=9;va=511;wa=Xa;xa=_a;ya=$a;za=Ya;break}}else{ra=b;sa=K;ta=N;ua=w;va=E;wa=C;xa=A;ya=x;za=I}while(0);k[c>>2]=ra;j[G>>1]=ua;k[D>>2]=xa;k[z>>2]=wa;k[B>>2]=va;k[F>>2]=za;k[J>>2]=sa;k[M>>2]=ta;if((ya|0)<=0){H=1;r=d;return H|0}ta=k[a+628>>2]|0;k[e>>2]=k[a+444>>2];a=e+8|0;k[a>>2]=ya;k[a+4>>2]=((ya|0)<0)<<31>>31;vc(ta,147871,148158,e);H=0;r=d;return H|0}function Dh(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+16|0;c=k[a+576>>2]|0;if(!c)Ja(154187,147682,788,147828);d=me(72008)|0;k[c+152>>2]=d;if(d){e=1;r=b;return e|0}vc(k[a+628>>2]|0,147828,147843,b);e=0;r=b;return e|0}function Eh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=k[a+576>>2]|0;if(!b)Ja(154187,147682,807,147815);c=b+152|0;d=k[c>>2]|0;if(!d){ub[k[a+516>>2]&63](a)|0;e=k[c>>2]|0}else e=d;j[b+64>>1]=9;j[b+66>>1]=511;j[b+68>>1]=258;k[b+76>>2]=0;k[b+72>>2]=0;k[b+132>>2]=1e4;k[b+136>>2]=0;k[b+140>>2]=0;k[b+144>>2]=0;k[b+148>>2]=(k[a+588>>2]|0)+((k[a+592>>2]|0)+-5);a=e+72e3|0;d=8993;while(1){d=d+-8|0;k[a+-56>>2]=-1;k[a+-48>>2]=-1;k[a+-40>>2]=-1;k[a+-32>>2]=-1;k[a+-24>>2]=-1;k[a+-16>>2]=-1;k[a+-8>>2]=-1;k[a>>2]=-1;if((d|0)<=-1)break;else a=a+-64|0}k[e>>2]=-1;k[b+128>>2]=65535;return 1}function Fh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;b=k[a+576>>2]|0;c=k[a+604>>2]|0;d=k[b+76>>2]|0;e=k[b+72>>2]|0;f=m[b+64>>1]|0;if(c>>>0>(k[b+148>>2]|0)>>>0){g=a+588|0;k[a+608>>2]=c-(k[g>>2]|0);je(a)|0;h=k[g>>2]|0}else h=c;c=b+128|0;b=k[c>>2]|0;if((b|0)==65535){j=d;l=e;n=h}else{g=b|e<<f;e=f+d|0;d=e+-8|0;b=h+1|0;i[h>>0]=g>>>d;if((d|0)>7){o=e+-16|0;i[b>>0]=g>>>o;p=o;q=h+2|0}else{p=d;q=b}k[c>>2]=65535;j=p;l=g;n=q}q=l<<f|257;l=j+f|0;f=l+-8|0;j=n+1|0;i[n>>0]=q>>>f;if((f|0)>7){g=l+-16|0;i[j>>0]=q>>>g;r=j;s=g;t=n+2|0}else{r=n;s=f;t=j}if((s|0)<=0){u=t;v=a+588|0;w=k[v>>2]|0;x=u;y=w;z=x-y|0;A=a+608|0;k[A>>2]=z;return 1}i[t>>0]=q<<8-s;u=r+2|0;v=a+588|0;w=k[v>>2]|0;x=u;y=w;z=x-y|0;A=a+608|0;k[A>>2]=z;return 1}function Gh(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,n=0,o=0,p=0,q=0,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,Ka=0,La=0,Ma=0,Na=0,Oa=0;d=k[a+576>>2]|0;if(!d){e=0;return e|0}f=d+152|0;if(!(k[f>>2]|0))Ja(147763,147682,888,147787);g=d+140|0;h=k[g>>2]|0;n=d+144|0;o=k[n>>2]|0;p=d+132|0;q=k[p>>2]|0;r=d+72|0;s=k[r>>2]|0;t=d+76|0;u=k[t>>2]|0;v=d+68|0;w=m[v>>1]|0;x=d+66|0;y=m[x>>1]|0;z=d+64|0;A=m[z>>1]|0;B=a+604|0;C=k[B>>2]|0;D=k[d+148>>2]|0;E=d+128|0;F=k[E>>2]|0;G=F&65535;if((c|0)>0&(F&65535|0)==65535){F=s<<A|256;H=A+u|0;I=H+-8|0;J=C+1|0;i[C>>0]=F>>>I;if((I|0)>7){K=H+-16|0;i[J>>0]=F>>>K;L=K;M=C+2|0}else{L=I;M=J}N=b+1|0;O=c+-1|0;P=l[b>>0]|0;Q=h+1|0;R=L;S=F;T=M;U=A+o|0}else{N=b;O=c;P=G;Q=h;R=u;S=s;T=C;U=o}a:do if((O|0)>0){o=a+588|0;C=a+608|0;s=d+136|0;u=N;h=O;G=q;c=P;b=w;M=Q;F=y;L=A;J=R;I=S;K=T;H=U;b:while(1){V=i[u>>0]|0;u=u+1|0;W=V&255;X=h;h=h+-1|0;Y=M+1|0;Z=c&65535;_=(W<<12)+Z|0;$=W<<5;W=$^Z;aa=k[f>>2]|0;ba=k[aa+(W<<3)>>2]|0;c:do if((ba|0)!=(_|0)){d:do if((ba|0)>-1){ca=($|0)==(Z|0)?1:9001-W|0;da=W;while(1){ea=da-ca|0;fa=(ea|0)<0?ea+9001|0:ea;ea=k[aa+(fa<<3)>>2]|0;if((ea|0)==(_|0)){ga=fa;break}if((ea|0)>-1)da=fa;else{ha=fa;break d}}ia=G;ja=j[aa+(ga<<3)+4>>1]|0;ka=b;la=Y;ma=F;na=L;oa=J;pa=I;qa=K;ra=H;break c}else ha=W;while(0);if(K>>>0>D>>>0){k[C>>2]=K-(k[o>>2]|0);je(a)|0;sa=k[o>>2]|0}else sa=K;da=I<<L|Z;ca=L+J|0;fa=ca+-8|0;ea=sa+1|0;i[sa>>0]=da>>>fa;if((fa|0)>7){ta=ca+-16|0;i[ea>>0]=da>>>ta;ua=ea;va=ta;wa=sa+2|0}else{ua=sa;va=fa;wa=ea}ea=L+H|0;fa=V&255;ta=b+1|0;j[aa+(ha<<3)+4>>1]=b;k[aa+(ha<<3)>>2]=_;if((ta|0)==4094){ca=k[f>>2]|0;xa=ca+72e3|0;ya=8993;while(1){ya=ya+-8|0;k[xa+-56>>2]=-1;k[xa+-48>>2]=-1;k[xa+-40>>2]=-1;k[xa+-32>>2]=-1;k[xa+-24>>2]=-1;k[xa+-16>>2]=-1;k[xa+-8>>2]=-1;k[xa>>2]=-1;if((ya|0)<=-1)break;else xa=xa+-64|0}k[ca>>2]=-1;k[s>>2]=0;xa=da<<L|256;ya=va+L|0;za=ya+-8|0;Aa=ua+2|0;i[wa>>0]=xa>>>za;if((za|0)<=7){ia=G;ja=fa;ka=258;la=0;ma=511;na=9;oa=za;pa=xa;qa=Aa;ra=L;break}za=ya+-16|0;i[Aa>>0]=xa>>>za;ia=G;ja=fa;ka=258;la=0;ma=511;na=9;oa=za;pa=xa;qa=ua+3|0;ra=L;break}if((b|0)>=(F|0)){xa=L+1|0;if((xa|0)>=13)break b;ia=G;ja=fa;ka=ta;la=Y;ma=(1<<xa)+-1|0;na=xa;oa=va;pa=da;qa=wa;ra=ea;break}if((Y|0)>=(G|0)){xa=M+10001|0;if((M|0)>8388606){za=ea>>8;if(!za)Ba=2147483647;else Ba=(Y|0)/(za|0)|0}else Ba=(Y<<8|0)/(ea|0)|0;if((Ba|0)>(k[s>>2]|0)){k[s>>2]=Ba;ia=xa;ja=fa;ka=ta;la=Y;ma=F;na=L;oa=va;pa=da;qa=wa;ra=ea;break}za=k[f>>2]|0;Aa=za+72e3|0;ya=8993;while(1){ya=ya+-8|0;k[Aa+-56>>2]=-1;k[Aa+-48>>2]=-1;k[Aa+-40>>2]=-1;k[Aa+-32>>2]=-1;k[Aa+-24>>2]=-1;k[Aa+-16>>2]=-1;k[Aa+-8>>2]=-1;k[Aa>>2]=-1;if((ya|0)<=-1)break;else Aa=Aa+-64|0}k[za>>2]=-1;k[s>>2]=0;Aa=da<<L|256;ya=va+L|0;ca=ya+-8|0;Ca=ua+2|0;i[wa>>0]=Aa>>>ca;if((ca|0)>7){Da=ya+-16|0;i[Ca>>0]=Aa>>>Da;ia=xa;ja=fa;ka=258;la=0;ma=511;na=9;oa=Da;pa=Aa;qa=ua+3|0;ra=L}else{ia=xa;ja=fa;ka=258;la=0;ma=511;na=9;oa=ca;pa=Aa;qa=Ca;ra=L}}else{ia=G;ja=fa;ka=ta;la=Y;ma=F;na=L;oa=va;pa=da;qa=wa;ra=ea}}else{ia=G;ja=j[aa+(W<<3)+4>>1]|0;ka=b;la=Y;ma=F;na=L;oa=J;pa=I;qa=K;ra=H}while(0);if((X|0)<=1){Ea=ia;Fa=ja;Ga=ka;Ha=la;Ia=ma;Ka=na;La=oa;Ma=pa;Na=qa;Oa=ra;break a}else{G=ia;c=ja;b=ka;M=la;F=ma;L=na;J=oa;I=pa;K=qa;H=ra}}Ja(147797,147682,986,147787)}else{Ea=q;Fa=P;Ga=w;Ha=Q;Ia=y;Ka=A;La=R;Ma=S;Na=T;Oa=U}while(0);k[g>>2]=Ha;k[n>>2]=Oa;k[p>>2]=Ea;k[E>>2]=Fa&65535;k[r>>2]=Ma;k[t>>2]=La;j[v>>1]=Ga;j[x>>1]=Ia;j[z>>1]=Ka;k[B>>2]=Na;e=1;return e|0}function Hh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;Ji(a)|0;b=a+576|0;c=k[b>>2]|0;if(!c)Ja(147733,147682,1092,147752);d=k[c+124>>2]|0;if(!d){e=c;f=c}else{ne(d);d=k[b>>2]|0;e=d;f=d}d=k[f+152>>2]|0;if(!d){g=e;ne(g);k[b>>2]=0;Ve(a);return}ne(d);g=k[b>>2]|0;ne(g);k[b>>2]=0;Ve(a);return}function Ih(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,n=0,o=0,p=0,q=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,M=0,N=0,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,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,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;d=r;r=r+64|0;e=d+48|0;f=d+40|0;g=d+32|0;h=d+24|0;n=d+16|0;o=d+8|0;p=d;q=k[a+576>>2]|0;if(!q)Ja(154187,147682,601,148255);s=q+88|0;t=k[s>>2]|0;do if(!t){u=c;v=b}else{w=k[q+108>>2]|0;x=(m[w+4>>1]|0)-t|0;if((x|0)<=(c|0)){y=b+x|0;z=w;A=x;B=y;while(1){B=B+-1|0;i[B>>0]=i[z+6>>0]|0;A=A+-1|0;if(!A)break;else z=k[z>>2]|0}k[s>>2]=0;u=c-x|0;v=y;break}k[s>>2]=t+c;z=w;A=x;while(1){B=k[z>>2]|0;A=A+-1|0;if((A|0)<=(c|0)){C=B;break}else z=B}z=C;A=c;x=b+c|0;while(1){x=x+-1|0;i[x>>0]=i[z+6>>0]|0;A=A+-1|0;if(!A){D=1;break}else z=k[z>>2]|0}r=d;return D|0}while(0);c=a+604|0;b=k[c>>2]|0;C=q+64|0;t=m[C>>1]|0;z=q+72|0;A=k[z>>2]|0;x=q+76|0;w=k[x>>2]|0;y=q+84|0;B=k[y>>2]|0;E=q+112|0;F=k[E>>2]|0;G=q+116|0;H=k[G>>2]|0;I=q+120|0;J=k[I>>2]|0;a:do if((u|0)>0){K=q+96|0;M=q+124|0;N=F;O=b;P=H;Q=J;R=t;S=B;T=w;U=A;V=u;W=v;b:while(1){X=K;Y=k[X>>2]|0;Z=k[X+4>>2]|0;X=((R|0)<0)<<31>>31;if(Z>>>0<X>>>0|(Z|0)==(X|0)&Y>>>0<R>>>0){_=N;$=O;aa=P;ba=Q;ca=R;da=S;ea=T;fa=U;ga=V;ha=16;break}ia=O+1|0;ja=(l[O>>0]|0)<<T|U;ka=T+8|0;if((ka|0)<(R|0)){la=O+2|0;ma=T+16|0;na=(l[ia>>0]|0)<<ka|ja}else{la=ia;ma=ka;na=ja}ja=na&S;ka=ja&65535;ia=na>>R;oa=ma-R|0;pa=pr(Y|0,Z|0,R|0,X|0)|0;X=K;k[X>>2]=pa;k[X+4>>2]=L;c:do switch(ka|0){case 257:{qa=la;ra=P;sa=Q;ta=R;ua=S;va=oa;wa=ia;xa=V;ya=N;break a;break}case 256:{X=k[M>>2]|0;pa=la;Z=oa;Y=ia;d:while(1){za=X+2064|0;pe(za,0,38888);Aa=k[M>>2]|0;Ba=K;Ca=k[Ba>>2]|0;Da=k[Ba+4>>2]|0;if(Da>>>0<0|(Da|0)==0&Ca>>>0<9){Ea=za;Fa=Aa;Ga=N;Ha=pa;Ia=Z;Ka=Y;La=V;ha=22;break b}Ba=pa+1|0;Ma=(l[pa>>0]|0)<<Z|Y;Na=Z+8|0;if((Na|0)<9){Oa=pa+2|0;Pa=Z+16|0;Qa=(l[Ba>>0]|0)<<Na|Ma}else{Oa=Ba;Pa=Na;Qa=Ma}Ma=Qa&511;Na=Qa>>9;Ba=Pa+-9|0;Ra=sr(Ca|0,Da|0,-9,-1)|0;Da=K;k[Da>>2]=Ra;k[Da+4>>2]=L;switch(Ma|0){case 257:{Sa=za;Ta=Aa;Ua=Na;Va=Ba;Wa=N;Xa=Oa;Ya=V;ha=47;break b;break}case 256:{X=Aa;pa=Oa;Z=Ba;Y=Na;break}default:{Za=za;_a=Aa;$a=Ma;ab=Na;bb=Ba;cb=Oa;db=Qa;break d}}}if($a>>>0>256){ha=27;break b}i[W>>0]=db;eb=cb;fb=Za;gb=_a+4088|0;hb=9;ib=511;jb=bb;kb=ab;lb=V+-1|0;mb=(k[M>>2]|0)+($a<<3)|0;nb=W+1|0;break}default:{Y=k[M>>2]|0;Z=Y+(ka<<3)|0;pa=Y+40952|0;if(!(P>>>0>=Y>>>0&P>>>0<pa>>>0)){ha=31;break b}k[P>>2]=N;if(!(N>>>0>=Y>>>0&N>>>0<pa>>>0)){ha=33;break b}pa=P+7|0;i[pa>>0]=i[N+7>>0]|0;j[P+4>>1]=(m[N+4>>1]|0)+1;i[P+6>>0]=i[(Z>>>0<P>>>0?Y+(ka<<3)+7|0:pa)>>0]|0;pa=P+8|0;if(pa>>>0>Q>>>0){X=R+1|0;Ba=(X|0)>12?12:X;X=(1<<Ba)+-1|0;ob=Y+(X<<3)|0;pb=Ba;qb=X}else{ob=Q;pb=R;qb=S}if(ka>>>0<=255){i[W>>0]=ja;eb=la;fb=pa;gb=ob;hb=pb;ib=qb;jb=oa;kb=ia;lb=V+-1|0;mb=Z;nb=W+1|0;break c}X=j[Y+(ka<<3)+4>>1]|0;Y=X&65535;if(!(X<<16>>16)){ha=38;break b}if((V|0)<(Y|0)){rb=ia;sb=oa;tb=Z;ub=pa;vb=la;wb=ob;xb=pb;yb=qb;zb=V;Ab=W;ha=40;break b}X=W+Y|0;Ba=Z;Na=X;do{Na=Na+-1|0;i[Na>>0]=i[Ba+6>>0]|0;Ba=k[Ba>>2]|0}while((Ba|0)!=0);eb=la;fb=pa;gb=ob;hb=pb;ib=qb;jb=oa;kb=ia;lb=V-Y|0;mb=Z;nb=X}}while(0);if((lb|0)>0){N=mb;O=eb;P=fb;Q=gb;R=hb;S=ib;T=jb;U=kb;V=lb;W=nb}else{qa=eb;ra=fb;sa=gb;ta=hb;ua=ib;va=jb;wa=kb;xa=lb;ya=mb;break a}}if((ha|0)==16){W=k[a+628>>2]|0;k[p>>2]=k[a+452>>2];ie(W,148255,147905,p);qa=$;ra=aa;sa=ba;ta=ca;ua=da;va=ea;wa=fa;xa=ga;ya=_;break}else if((ha|0)==22){W=k[a+628>>2]|0;k[o>>2]=k[a+452>>2];ie(W,148255,147905,o);qa=Ha;ra=Ea;sa=Fa+4088|0;ta=9;ua=511;va=Ia;wa=Ka;xa=La;ya=Ga;break}else if((ha|0)==27){W=k[a+628>>2]|0;V=k[a>>2]|0;k[n>>2]=k[a+444>>2];vc(W,V,147954,n);D=0;r=d;return D|0}else if((ha|0)==31){V=k[a+628>>2]|0;k[h>>2]=k[a+444>>2];vc(V,148255,148e3,h);D=0;r=d;return D|0}else if((ha|0)==33){V=k[a+628>>2]|0;k[g>>2]=k[a+444>>2];vc(V,148255,148e3,g);D=0;r=d;return D|0}else if((ha|0)==38){V=k[a+628>>2]|0;k[f>>2]=k[a+444>>2];vc(V,148255,148035,f);D=0;r=d;return D|0}else if((ha|0)==40){k[q+108>>2]=tb;V=tb;while(1){W=k[V>>2]|0;if((m[W+4>>1]|0|0)>(zb|0))V=W;else{Bb=W;break}}k[s>>2]=zb;V=Bb;W=zb;U=Ab+zb|0;while(1){U=U+-1|0;i[U>>0]=i[V+6>>0]|0;W=W+-1|0;if(!W){qa=vb;ra=ub;sa=wb;ta=xb;ua=yb;va=sb;wa=rb;xa=0;ya=tb;break}else V=k[V>>2]|0}}else if((ha|0)==47){qa=Xa;ra=Sa;sa=Ta+4088|0;ta=9;ua=511;va=Va;wa=Ua;xa=Ya;ya=Wa;break}}else{qa=b;ra=H;sa=J;ta=t;ua=B;va=w;wa=A;xa=u;ya=F}while(0);k[c>>2]=qa;j[C>>1]=ta;k[z>>2]=wa;k[x>>2]=va;k[y>>2]=ua;k[E>>2]=ya;k[G>>2]=ra;k[I>>2]=sa;if((xa|0)<=0){D=1;r=d;return D|0}sa=k[a+628>>2]|0;k[e>>2]=k[a+444>>2];a=e+8|0;k[a>>2]=xa;k[a+4>>2]=((xa|0)<0)<<31>>31;vc(sa,148255,148158,e);D=0;r=d;return D|0}function Jh(a,b){a=a|0;b=b|0;k[a+512>>2]=33;k[a+532>>2]=38;k[a+540>>2]=38;k[a+548>>2]=38;return 1}function Kh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;b=r;r=r+16|0;c=b;d=j[a+84>>1]|0;if(d<<16>>16==2){e=1;r=b;return e|0}f=k[a+628>>2]|0;k[c>>2]=d&65535;vc(f,148358,148372,c);e=0;r=b;return e|0}function Lh(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,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+16|0;e=d+8|0;f=(c|0)>0;if(f)qr(b|0,-1,c|0)|0;g=a+604|0;h=a+608|0;j=k[a+580>>2]|0;if((c|0)%(j|0)|0){vc(k[a+628>>2]|0,148314,153793,d);m=0;r=d;return m|0}n=k[h>>2]|0;o=k[g>>2]|0;a:do if((n|0)>0&f){p=a+56|0;q=a+12|0;s=a+68|0;t=j+1|0;u=c;v=o;w=n;x=b;b:while(1){y=v+1|0;z=l[v>>0]|0;A=w+-1|0;c:do switch(z|0){case 0:{if((w|0)<=(j|0))break b;qe(x,y,j);B=v+t|0;C=A-j|0;break}case 64:{if((w|0)<5)break b;D=(l[y>>0]|0)<<8|(l[v+2>>0]|0);E=(l[v+3>>0]|0)<<8|(l[v+4>>0]|0);F=E+4|0;if((w|0)<=(F|0)|(E+D|0)>(j|0))break b;qe(x+D|0,v+5|0,E);B=v+(E+5)|0;C=A-F|0;break}default:{F=k[((k[q>>2]&1024|0)==0?p:s)>>2]|0;E=y;D=A;G=z;H=0;I=x;while(1){J=G>>>6;K=G&63;L=H>>>0<F>>>0;d:do if((K|0)!=0&L){M=J<<6&255;N=J<<4;O=J<<2;P=K;Q=H;R=I;while(1){S=P;T=Q;e:while(1){U=S;S=S+-1|0;V=T+1|0;switch(T&3|0){case 3:{W=U;X=S;Y=V;break e;break}case 0:{i[R>>0]=M;break}case 1:{i[R>>0]=l[R>>0]|0|N;break}case 2:{i[R>>0]=l[R>>0]|0|O;break}default:{}}Z=V>>>0<F>>>0;if(!((U|0)>1&Z)){_=Z;$=V;aa=R;break d}else T=V}T=R+1|0;i[R>>0]=l[R>>0]|0|J;S=Y>>>0<F>>>0;if((W|0)>1&S){P=X;Q=Y;R=T}else{_=S;$=Y;aa=T;break}}}else{_=L;$=H;aa=I}while(0);if(!_){B=E;C=D;break c}if(!D)break b;L=l[E>>0]|0;E=E+1|0;D=D+-1|0;G=L;H=$;I=aa}}}while(0);u=u-j|0;if(!((C|0)>0&(u|0)>0)){ba=B;ca=C;break a}else{v=B;w=C;x=x+j|0}}x=k[a+628>>2]|0;k[e>>2]=k[a+444>>2];vc(x,148314,148325,e);m=0;r=d;return m|0}else{ba=o;ca=n}while(0);k[g>>2]=ba;k[h>>2]=ca;m=1;r=d;return m|0}function Mh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+32|0;d=c+16|0;if((b|0)!=6)Ja(148403,148429,424,148441);if(!(_b(a,109532,7)|0)){vc(k[a+628>>2]|0,148441,148455,c);e=0;r=c;return e|0}b=me(5368)|0;if(!b){vc(k[a+628>>2]|0,148441,148499,c+8|0);e=0;r=c;return e|0}else{pe(b,0,5368);k[b>>2]=a;i[b+224>>0]=1;i[b+228>>0]=2;i[b+229>>0]=2;k[d>>2]=2;k[d+4>>2]=2;Ob(a,530,d)|0;k[a+504>>2]=29;k[a+508>>2]=30;k[a+512>>2]=34;k[a+652>>2]=29;k[a+532>>2]=39;k[a+540>>2]=39;k[a+548>>2]=39;k[a+516>>2]=31;k[a+524>>2]=35;k[a+528>>2]=32;k[a+536>>2]=40;k[a+544>>2]=40;k[a+552>>2]=40;k[a+564>>2]=22;k[a+576>>2]=b;d=a+668|0;f=a+672|0;k[b+160>>2]=k[f>>2];k[f>>2]=21;k[b+164>>2]=k[d>>2];k[d>>2]=22;d=a+676|0;k[b+168>>2]=k[d>>2];k[d>>2]=30;d=a+12|0;k[d>>2]=k[d>>2]|131072;e=1;r=c;return e|0}return 0}function Nh(a){a=a|0;return 1}function Oh(a){a=a|0;var b=0;b=r;r=r+16|0;ie(k[a+628>>2]|0,151837,151854,b);r=b;return 1}function Ph(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=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,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;c=r;r=r+48|0;d=c+32|0;e=c+24|0;f=c+16|0;g=c+8|0;h=c;n=a+576|0;o=k[n>>2]|0;if(!(i[o+226>>0]|0))_h(a);do if(!(i[o+488>>0]|0)){p=k[n>>2]|0;q=p+488|0;if(i[q>>0]|0)Ja(151233,148429,1040,151256);s=k[a+56>>2]|0;k[p+184>>2]=s;t=k[a+60>>2]|0;k[p+188>>2]=t;if(!(k[a+12>>2]&1024)){u=t;v=s;w=k[a+100>>2]|0}else{s=k[a+72>>2]|0;x=t+-1+s|0;u=x-((x>>>0)%(s>>>0)|0)|0;v=k[a+68>>2]|0;w=s}k[p+192>>2]=v;k[p+196>>2]=w;k[p+200>>2]=u;a:do switch(j[a+98>>1]|0){case 1:{i[p+204>>0]=1;i[p+205>>0]=0;i[p+206>>0]=1;i[p+228>>0]=1;i[p+229>>0]=1;break}case 3:{i[p+204>>0]=3;i[p+205>>0]=0;s=p+206|0;if((j[a+126>>1]|0)==1){i[s>>0]=3;break a}else{i[s>>0]=1;break a}break}default:{s=k[a+628>>2]|0;k[h>>2]=l[p+204>>0];vc(s,151256,151276,h);y=0;r=c;return y|0}}while(0);do if(w>>>0<t>>>0){s=l[p+229>>0]<<3;if(!((w>>>0)%(s>>>0)|0)){x=l[p+228>>0]<<3;z=(ha((w>>>0)/(s>>>0)|0,((v+-1+x|0)>>>0)/(x>>>0)|0)|0)&65535;j[p+360>>1]=z;break}vc(k[a+628>>2]|0,151256,151337,g);y=0;r=c;return y|0}while(0);if(!($h(a)|0)){y=0;r=c;return y|0}else{i[p+392>>0]=1;k[p+396>>2]=k[p+1220>>2];k[p+400>>2]=k[p+1224>>2];t=p+1232|0;z=m[p+1256>>1]|0;x=pr(k[t>>2]|0,k[t+4>>2]|0,z|0,0)|0;t=p+408|0;k[t>>2]=x;k[t+4>>2]=L;t=p+1248|0;x=sr(z|0,0,k[t>>2]|0,k[t+4>>2]|0)|0;t=p+416|0;k[t>>2]=x;k[t+4>>2]=L;i[q>>0]=1;break}}while(0);g=b&65535;b:do if(!(i[o+392+(g<<5)>>0]|0)){v=k[n>>2]|0;if(!(b<<16>>16))Ja(151399,148429,1102,151403);if((b&65535)>=3)Ja(151425,148429,1103,151403);if(!(i[v+392>>0]|0))Ja(151429,148429,1104,151403);if(i[v+392+(g<<5)>>0]|0)Ja(151451,148429,1105,151403);w=g+255&255;while(1){h=w&255;if(!(i[v+392+(h<<5)>>0]|0))w=w+-1<<24>>24;else{A=h;B=w;break}}w=v+205|0;i[w>>0]=B;q=v+1220|0;k[q>>2]=k[v+392+(A<<5)+4>>2];p=v+1224|0;k[p>>2]=k[v+392+(A<<5)+8>>2];h=v+392+(A<<5)+16|0;u=k[h+4>>2]|0;t=v+1232|0;x=t;k[x>>2]=k[h>>2];k[x+4>>2]=u;i[v+1240>>0]=0;u=v+392+(A<<5)+24|0;x=k[u+4>>2]|0;h=v+1248|0;z=h;k[z>>2]=k[u>>2];k[z+4>>2]=x;x=v+1256|0;j[x>>1]=0;z=v+1260|0;k[z>>2]=0;if(A>>>0<g>>>0){u=0;c:while(1){if(!(u<<16>>16)){if(!(ai(v)|0)){y=0;C=105;break}s=j[x>>1]|0;if(!(s<<16>>16)){C=36;break}else D=s}else D=u;s=k[z>>2]|0;E=i[s>>0]|0;F=s+1|0;k[z>>2]=F;s=D+-1<<16>>16;j[x>>1]=s;if(E<<24>>24==-1){G=s;H=F}else{u=s;continue}d:while(1){if(!(G<<16>>16)){if(!(ai(v)|0)){y=0;C=105;break c}s=j[x>>1]|0;if(!(s<<16>>16)){C=42;break c}I=k[z>>2]|0;J=s}else{I=H;J=G}s=i[I>>0]|0;F=I+1|0;k[z>>2]=F;E=J+-1<<16>>16;j[x>>1]=E;switch(s<<24>>24){case -1:{G=E;H=F;break}case -38:{break d;break}default:{u=E;continue c}}}i[w>>0]=(i[w>>0]|0)+1<<24>>24;if(!(bi(a)|0)){y=0;C=105;break}E=l[w>>0]|0;i[v+392+(E<<5)>>0]=1;k[v+392+(E<<5)+4>>2]=k[q>>2];k[v+392+(E<<5)+8>>2]=k[p>>2];F=t;u=j[x>>1]|0;s=u&65535;K=pr(k[F>>2]|0,k[F+4>>2]|0,s|0,0)|0;F=v+392+(E<<5)+16|0;k[F>>2]=K;k[F+4>>2]=L;F=h;K=sr(s|0,0,k[F>>2]|0,k[F+4>>2]|0)|0;F=v+392+(E<<5)+24|0;k[F>>2]=K;k[F+4>>2]=L;if(E>>>0>=g>>>0)break b}if((C|0)==36)Ja(149747,148429,2016,149786);else if((C|0)==42)Ja(149747,148429,2016,149786);else if((C|0)==105){r=c;return y|0}}}while(0);H=k[((k[a+12>>2]&1024|0)==0?a+452|0:a+492|0)>>2]|0;G=o+489|0;J=o+490|0;do if(!(i[G>>0]|0))C=54;else{if((j[J>>1]|0)==b<<16>>16?(I=o+492|0,D=k[I>>2]|0,D>>>0<=H>>>0):0){M=I;N=D;break}do if(i[o+496>>0]|0){D=k[n>>2]|0;I=D+496|0;if(!(i[I>>0]|0))Ja(150963,148429,1245,150993);else{Bk(D+632|0);i[I>>0]=0;break}}while(0);i[G>>0]=0;C=54}while(0);do if((C|0)==54){i[o+205>>0]=b;j[J>>1]=b;G=ha(k[a+164>>2]|0,g)|0;I=o+492|0;k[I>>2]=G;G=o+1240|0;if(i[G>>0]|0){D=o+1232|0;A=D;B=o+1256|0;v=pr(k[A>>2]|0,k[A+4>>2]|0,m[B>>1]|0,0)|0;A=o+392+(g<<5)+16|0;h=k[A>>2]|0;u=k[A+4>>2]|0;if(!((v|0)==(h|0)&(L|0)==(u|0))){O=D;P=B;Q=h;R=u;C=57}}else{u=o+392+(g<<5)+16|0;O=o+1232|0;P=o+1256|0;Q=k[u>>2]|0;R=k[u+4>>2]|0;C=57}if((C|0)==57){k[o+1220>>2]=k[o+392+(g<<5)+4>>2];k[o+1224>>2]=k[o+392+(g<<5)+8>>2];u=O;k[u>>2]=Q;k[u+4>>2]=R;i[G>>0]=0;G=o+392+(g<<5)+24|0;u=k[G+4>>2]|0;h=o+1248|0;k[h>>2]=k[G>>2];k[h+4>>2]=u;j[P>>1]=0;k[o+1260>>2]=0}u=k[n>>2]|0;h=u+496|0;if(i[h>>0]|0){y=0;r=c;return y|0}k[u+3312>>2]=0;i[u+362>>0]=0;G=u+500|0;Ql(G)|0;k[u+508>>2]=23;k[G>>2]=24;B=u+632|0;k[B>>2]=G;k[u+644>>2]=a;if(!(gi(u,B)|0)){y=0;r=c;return y|0}i[h>>0]=1;k[u+1124>>2]=0;k[u+1128>>2]=25;k[u+1132>>2]=33;k[u+1136>>2]=5;k[u+1140>>2]=36;k[u+1144>>2]=26;k[u+656>>2]=u+1120;if(!(mi(u,B)|0)){y=0;r=c;return y|0}h=i[u+206>>0]|0;if((i[u+230>>0]|0)==0&(h&255)>1){k[u+700>>2]=1;k[u+708>>2]=0;i[u+497>>0]=0;G=u+1148|0;if(!(i[G>>0]|0)){D=u+1180|0;if(k[D>>2]|0)Ja(151473,148429,1185,151509);v=u+1200|0;if(k[v>>2]|0)Ja(151530,148429,1186,151509);A=u+192|0;x=u+228|0;t=l[x>>0]|0;p=t<<3;q=(k[A>>2]|0)+-1+p|0;w=q-((q>>>0)%(p>>>0)|0)|0;p=u+1152|0;k[p>>2]=w;q=u+229|0;z=l[q>>0]<<3;E=u+1156|0;k[E>>2]=z;F=(w>>>0)/(t>>>0)|0;t=u+1160|0;k[t>>2]=F;K=u+1164|0;k[K>>2]=8;s=ha(z,w)|0;w=u+1168|0;k[w>>2]=s;z=u+1172|0;k[z>>2]=F<<3;S=s+(F<<4)|0;k[u+1176>>2]=S;F=me(S)|0;k[D>>2]=F;if(!F){vc(k[a+628>>2]|0,151509,150005,f);y=0;r=c;return y|0}D=u+1184|0;k[D>>2]=F;S=k[w>>2]|0;w=u+1188|0;k[w>>2]=F+S;s=u+1192|0;k[s>>2]=F+((k[z>>2]|0)+S);S=(k[E>>2]|0)+3+(k[K>>2]<<1)|0;k[u+1196>>2]=S;z=me(S<<2)|0;k[v>>2]=z;if(!z){vc(k[a+628>>2]|0,151509,150005,e);y=0;r=c;return y|0}S=z+12|0;k[z>>2]=S;F=k[E>>2]|0;E=F+3|0;k[z+4>>2]=(k[v>>2]|0)+(E<<2);T=k[K>>2]|0;k[z+8>>2]=(k[v>>2]|0)+(T+E<<2);if(!F)U=S;else{E=k[p>>2]|0;p=F>>>0>1?(F<<2)+12|0:16;v=S;S=0;while(1){K=(k[D>>2]|0)+(ha(S,E)|0)|0;k[v>>2]=K;S=S+1|0;if((S|0)==(F|0))break;else v=v+4|0}U=z+p|0}if(T){v=k[t>>2]|0;F=T>>>0>1;S=U;E=0;while(1){D=(k[w>>2]|0)+(ha(E,v)|0)|0;k[S>>2]=D;E=E+1|0;if((E|0)==(T|0))break;else S=S+4|0}S=U+((F?T:1)<<2)|0;E=0;while(1){w=(k[s>>2]|0)+(ha(E,v)|0)|0;k[S>>2]=w;E=E+1|0;if((E|0)==(T|0))break;else S=S+4|0}}S=l[x>>0]|0;T=(((k[A>>2]|0)+-1+S|0)>>>0)/(S>>>0)|0;k[u+1204>>2]=T;k[u+1208>>2]=0;E=l[q>>0]|0;v=ha((ha(E,S)|0)+2|0,T)|0;k[u+1212>>2]=v;k[u+1216>>2]=(((k[u+196>>2]|0)+-1+E|0)>>>0)/(E>>>0)|0;i[G>>0]=1}}else{k[u+672>>2]=0;k[u+676>>2]=0;i[u+497>>0]=1;E=ha(k[u+192>>2]|0,h&255)|0;k[u+1212>>2]=E;k[u+1216>>2]=k[u+196>>2]}if(!(ni(u,B)|0)){y=0;r=c;return y|0}else{i[u+489>>0]=1;M=I;N=k[I>>2]|0;break}}while(0);if(N>>>0>=H>>>0){y=1;r=c;return y|0}N=o+497|0;e:while(1){o=k[n>>2]|0;f:do if(!(i[N>>0]|0)){U=k[o+1216>>2]|0;e=o+1208|0;f=k[e>>2]|0;P=o+1164|0;g=k[P>>2]|0;do if(f){R=g-f|0;if(U>>>0>R>>>0){k[e>>2]=0;V=U-R|0;break}else{R=f+U|0;k[e>>2]=(R|0)==(g|0)?0:R;break f}}else V=U;while(0);if(V>>>0<g>>>0)W=V;else{U=o+632|0;f=o+1200|0;R=o+229|0;Q=V;while(1){if(!(ci(o,U,k[f>>2]|0,l[R>>0]<<3)|0)){y=0;C=105;break e}O=k[P>>2]|0;b=Q-O|0;if(b>>>0<O>>>0){W=b;break}else Q=b}}if(W){if(!(ci(o,o+632|0,k[o+1200>>2]|0,l[o+229>>0]<<3)|0)){y=0;C=105;break e}k[e>>2]=W}}else{Q=o+5364|0;if((k[Q>>2]|0)==0?(P=me(k[o+1212>>2]|0)|0,k[Q>>2]=P,(P|0)==0):0){C=101;break e}P=o+632|0;R=o+1216|0;if(k[R>>2]|0){f=0;do{f=f+1|0;if(!(di(o,P,Q)|0)){y=0;C=105;break e}}while(f>>>0<(k[R>>2]|0)>>>0)}}while(0);o=(k[M>>2]|0)+1|0;k[M>>2]=o;if(o>>>0>=H>>>0){y=1;C=105;break}}if((C|0)==101){vc(k[a+628>>2]|0,151568,150005,d);y=0;r=c;return y|0}else if((C|0)==105){r=c;return y|0}return 0}function Qh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;c=k[a+576>>2]|0;b=c+492|0;d=(k[b>>2]|0)+1|0;k[b>>2]=d;if((d>>>0)%((k[a+164>>2]|0)>>>0)|0)return;a=c+496|0;if(!(i[a>>0]|0))Ja(150963,148429,891,151217);Bk(c+632|0);i[a>>0]=0;i[c+489>>0]=0;return}function Rh(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,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+16|0;e=d+8|0;f=d;g=d+12|0;h=k[a+576>>2]|0;if(i[h+497>>0]|0){j=h+1212|0;a:do if(!((c>>>0)%((k[j>>2]|0)>>>0)|0)){if((c|0)<=0)Ja(151191,148429,869,151196);k[g>>2]=b;m=h+632|0;n=c;do{if(!(di(h,m,g)|0))break a;o=k[j>>2]|0;k[g>>2]=(k[g>>2]|0)+o;n=n-o|0}while((n|0)>0);p=1;r=d;return p|0}else vc(k[a+628>>2]|0,151196,151162,e);while(0);p=0;r=d;return p|0}e=h+1212|0;if((c>>>0)%((k[e>>2]|0)>>>0)|0){vc(k[a+628>>2]|0,151147,151162,f);p=0;r=d;return p|0}if((c|0)<=0)Ja(151191,148429,821,151147);f=h+632|0;a=h+1200|0;g=h+1208|0;j=h+229|0;n=h+1184|0;m=h+1152|0;o=h+1188|0;q=h+1160|0;s=h+1192|0;t=h+1204|0;u=h+1164|0;v=h+228|0;w=k[g>>2]|0;x=b;b=c;while(1){if(!w){if(!(ci(h,f,k[a>>2]|0,l[j>>0]<<3)|0)){p=0;y=30;break}z=k[g>>2]|0}else z=w;c=ha(k[q>>2]|0,z)|0;if(!(k[t>>2]|0))A=z;else{B=i[j>>0]|0;C=ha(B&255,z)|0;D=B;B=(k[o>>2]|0)+c|0;E=(k[s>>2]|0)+c|0;c=(k[n>>2]|0)+(ha(C,k[m>>2]|0)|0)|0;C=x;F=0;while(1){G=i[v>>0]|0;if(!(D<<24>>24)){H=G;I=C}else{J=G;K=D;L=G;G=C;M=c;N=0;while(1){if(!(L<<24>>24)){O=J;P=0;Q=K;R=G;S=M}else{T=G;U=M;V=0;while(1){W=U+1|0;X=T+1|0;i[T>>0]=i[U>>0]|0;V=V+1<<24>>24;Y=i[v>>0]|0;if((V&255)>=(Y&255)){Z=W;_=X;$=Y;break}else{T=X;U=W}}O=$;P=$;Q=i[j>>0]|0;R=_;S=Z}N=N+1<<24>>24;if((N&255)>=(Q&255)){H=O;I=R;break}else{J=O;K=Q;L=P;G=R;M=S+((k[m>>2]|0)-(P&255))|0}}}i[I>>0]=i[B>>0]|0;i[I+1>>0]=i[E>>0]|0;M=F+1|0;if(M>>>0>=(k[t>>2]|0)>>>0)break;D=i[j>>0]|0;B=B+1|0;E=E+1|0;c=c+(H&255)|0;C=I+2|0;F=M}A=k[g>>2]|0}F=A+1|0;w=(F|0)==(k[u>>2]|0)?0:F;k[g>>2]=w;F=k[e>>2]|0;b=b-F|0;if((b|0)<=0){p=1;y=30;break}else x=x+F|0}if((y|0)==30){r=d;return p|0}return 0}function Sh(a){a=a|0;var b=0;b=r;r=r+16|0;vc(k[a+628>>2]|0,151130,151030,b);r=b;return 0}function Th(a,b){a=a|0;b=b|0;b=r;r=r+16|0;vc(k[a+628>>2]|0,151115,151030,b);r=b;return 0}function Uh(a){a=a|0;var b=0;b=r;r=r+16|0;vc(k[a+628>>2]|0,151099,151030,b);r=b;return 0}function Vh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=r;r=r+16|0;vc(k[a+628>>2]|0,151018,151030,d);r=d;return 0}function Wh(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+576|0;c=k[b>>2]|0;if(!c)return;k[a+672>>2]=k[c+160>>2];k[a+668>>2]=k[c+164>>2];k[a+676>>2]=k[c+168>>2];d=k[c+312>>2]|0;if(d)ne(d);d=k[c+316>>2]|0;if(d)ne(d);d=k[c+320>>2]|0;if(d)ne(d);d=k[c+324>>2]|0;if(d)ne(d);d=k[c+328>>2]|0;if(d)ne(d);d=k[c+332>>2]|0;if(d)ne(d);d=k[c+336>>2]|0;if(d)ne(d);d=k[c+340>>2]|0;if(d)ne(d);d=k[c+344>>2]|0;if(d)ne(d);d=k[c+348>>2]|0;if(d)ne(d);d=k[c+352>>2]|0;if(d)ne(d);d=k[c+356>>2]|0;if(d)ne(d);do if(i[c+496>>0]|0){d=k[b>>2]|0;e=d+496|0;if(!(i[e>>0]|0))Ja(150963,148429,1245,150993);else{Bk(d+632|0);i[e>>0]=0;break}}while(0);e=k[c+1180>>2]|0;if(e)ne(e);e=k[c+1200>>2]|0;if(e)ne(e);e=k[c+5364>>2]|0;if(e)ne(e);ne(c);k[b>>2]=0;Ve(a);return}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,m=0;d=k[a+576>>2]|0;switch(b|0){case 513:{e=d+208|0;f=k[e>>2]|0;g=k[e+4>>2]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);h=k[e>>2]|0;k[c>>2]=e+4;e=h;k[e>>2]=f;k[e+4>>2]=g;m=1;return m|0}case 514:{g=d+216|0;e=k[g>>2]|0;f=k[g+4>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;g=h;k[g>>2]=e;k[g+4>>2]=f;m=1;return m|0}case 530:{if(!(i[d+226>>0]|0))_h(a);f=l[d+228>>0]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);e=k[g>>2]|0;k[c>>2]=g+4;j[e>>1]=f;f=l[d+229>>0]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);g=k[e>>2]|0;k[c>>2]=e+4;j[g>>1]=f;m=1;return m|0}case 519:{f=l[d+231>>0]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);e=k[g>>2]|0;k[c>>2]=g+4;k[e>>2]=f;f=(k[c>>2]|0)+(4-1)&~(4-1);e=k[f>>2]|0;k[c>>2]=f+4;k[e>>2]=d+240;m=1;return m|0}case 520:{e=l[d+232>>0]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[g>>2]=e;e=(k[c>>2]|0)+(4-1)&~(4-1);g=k[e>>2]|0;k[c>>2]=e+4;k[g>>2]=d+264;m=1;return m|0}case 521:{g=l[d+233>>0]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);f=k[e>>2]|0;k[c>>2]=e+4;k[f>>2]=g;g=(k[c>>2]|0)+(4-1)&~(4-1);f=k[g>>2]|0;k[c>>2]=g+4;k[f>>2]=d+288;m=1;return m|0}case 512:{f=l[d+224>>0]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);e=k[g>>2]|0;k[c>>2]=g+4;j[e>>1]=f;m=1;return m|0}case 515:{f=j[d+360>>1]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);g=k[e>>2]|0;k[c>>2]=e+4;j[g>>1]=f;m=1;return m|0}default:{m=nb[k[d+160>>2]&63](a,b,c)|0;return m|0}}return 0}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0;d=r;r=r+32|0;e=d+16|0;f=d+8|0;g=d;h=k[a+576>>2]|0;switch(b|0){case 513:{m=(k[c>>2]|0)+(8-1)&~(8-1);n=m;o=k[n>>2]|0;p=k[n+4>>2]|0;k[c>>2]=m+8;m=h+208|0;k[m>>2]=o;k[m+4>>2]=p;break}case 514:{p=(k[c>>2]|0)+(8-1)&~(8-1);m=p;o=k[m>>2]|0;n=k[m+4>>2]|0;k[c>>2]=p+8;p=h+216|0;k[p>>2]=o;k[p+4>>2]=n;break}case 530:{i[h+227>>0]=1;n=(k[c>>2]|0)+(4-1)&~(4-1);p=k[n>>2]|0;k[c>>2]=n+4;n=h+228|0;i[n>>0]=p;p=(k[c>>2]|0)+(4-1)&~(4-1);o=k[p>>2]|0;k[c>>2]=p+4;i[h+229>>0]=o;j[a+192>>1]=l[n>>0]|0;j[a+194>>1]=o&255;break}case 519:{o=(k[c>>2]|0)+(4-1)&~(4-1);n=k[o>>2]|0;k[c>>2]=o+4;if(n)if(n>>>0>3){vc(k[a+628>>2]|0,148714,148729,g);q=0;r=d;return q|0}else{i[h+231>>0]=n;g=(k[c>>2]|0)+(4-1)&~(4-1);o=k[g>>2]|0;k[c>>2]=g+4;g=0;do{p=o+(g<<3)|0;m=k[p+4>>2]|0;s=h+240+(g<<3)|0;k[s>>2]=k[p>>2];k[s+4>>2]=m;g=g+1|0}while((g|0)!=(n|0))}break}case 520:{n=(k[c>>2]|0)+(4-1)&~(4-1);g=k[n>>2]|0;k[c>>2]=n+4;if(g)if(g>>>0>3){vc(k[a+628>>2]|0,148714,148765,f);q=0;r=d;return q|0}else{i[h+232>>0]=g;f=(k[c>>2]|0)+(4-1)&~(4-1);n=k[f>>2]|0;k[c>>2]=f+4;f=0;do{o=n+(f<<3)|0;m=k[o+4>>2]|0;s=h+264+(f<<3)|0;k[s>>2]=k[o>>2];k[s+4>>2]=m;f=f+1|0}while((f|0)!=(g|0))}break}case 521:{g=(k[c>>2]|0)+(4-1)&~(4-1);f=k[g>>2]|0;k[c>>2]=g+4;if(f)if(f>>>0>3){vc(k[a+628>>2]|0,148714,148802,e);q=0;r=d;return q|0}else{i[h+233>>0]=f;e=(k[c>>2]|0)+(4-1)&~(4-1);g=k[e>>2]|0;k[c>>2]=e+4;e=0;do{n=g+(e<<3)|0;m=k[n+4>>2]|0;s=h+288+(e<<3)|0;k[s>>2]=k[n>>2];k[s+4>>2]=m;e=e+1|0}while((e|0)!=(f|0))}break}case 512:{f=(k[c>>2]|0)+(4-1)&~(4-1);e=k[f>>2]|0;k[c>>2]=f+4;i[h+224>>0]=e;break}case 515:{e=(k[c>>2]|0)+(4-1)&~(4-1);f=k[e>>2]|0;k[c>>2]=e+4;j[h+360>>1]=f;break}default:{q=nb[k[h+164>>2]&63](a,b,c)|0;r=d;return q|0}}c=cc(a,b)|0;if(!c){q=0;r=d;return q|0}b=j[c+24>>1]|0;c=a+40+(((b&65535)>>>5&65535)<<2)|0;k[c>>2]=1<<(b&31)|k[c>>2];c=a+12|0;k[c>>2]=k[c>>2]|8;q=1;r=d;return q|0}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;d=r;r=r+64|0;e=d+48|0;f=d+40|0;g=d+32|0;h=d+24|0;j=d+16|0;n=d+8|0;o=d;p=k[a+576>>2]|0;if(!p)Ja(148530,148429,616,148539);q=a+48|0;s=k[q>>2]|0;if(!(s&4))t=s;else{k[o>>2]=k[p+208>>2];wq(b,148553,o)|0;t=k[q>>2]|0}if(!(t&8))u=t;else{k[n>>2]=k[p+216>>2];wq(b,148583,n)|0;u=k[q>>2]|0}if(!(u&16))v=u;else{zq(148619,14,1,b)|0;u=p+231|0;if(i[u>>0]|0){n=0;do{k[j>>2]=k[p+240+((n&255)<<3)>>2];wq(b,148634,j)|0;n=n+1<<24>>24}while((n&255)<(l[u>>0]|0))}xq(10,b)|0;v=k[q>>2]|0}if(!(v&32))w=v;else{zq(148639,15,1,b)|0;v=p+232|0;if(i[v>>0]|0){u=0;do{k[h>>2]=k[p+264+((u&255)<<3)>>2];wq(b,148634,h)|0;u=u+1<<24>>24}while((u&255)<(l[v>>0]|0))}xq(10,b)|0;w=k[q>>2]|0}if(!(w&64))x=w;else{zq(148655,15,1,b)|0;w=p+233|0;if(i[w>>0]|0){v=0;do{k[g>>2]=k[p+288+((v&255)<<3)>>2];wq(b,148634,g)|0;v=v+1<<24>>24}while((v&255)<(l[w>>0]|0))}xq(10,b)|0;x=k[q>>2]|0}if(!(x&128))y=x;else{k[f>>2]=l[p+224>>0];wq(b,148671,f)|0;y=k[q>>2]|0}if(y&256){k[e>>2]=m[p+360>>1];wq(b,148687,e)|0}e=k[p+168>>2]|0;if(!e){r=d;return}vb[e&127](a,b,c);r=d;return}function _h(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=r;r=r+64|0;c=b+48|0;d=b+40|0;e=b+32|0;f=b+16|0;g=b+8|0;h=b;m=k[a+576>>2]|0;gc(a)|0;n=m+226|0;if(i[n>>0]|0)Ja(148839,148429,989,148870);a:do if((j[a+98>>1]|0)==3){switch(j[a+90>>1]|0){case 10:case 6:break;default:break a}i[n>>0]=1;o=m+228|0;p=i[o>>0]|0;q=m+229|0;s=i[q>>0]|0;t=m+225|0;i[t>>0]=1;$h(a)|0;u=m+230|0;v=(i[u>>0]|0)==0;if(v)w=i[o>>0]|0;else{i[o>>0]=1;i[q>>0]=1;w=1}i[t>>0]=0;t=p&255;if(w<<24>>24==p<<24>>24?(i[q>>0]|0)==s<<24>>24:0)x=17;else x=13;do if((x|0)==13)if(v){p=k[a+628>>2]|0;y=w&255;z=l[q>>0]|0;if(!(i[m+227>>0]|0)){k[g>>2]=y;k[g+4>>2]=z;ie(p,148870,148970,g);x=17;break}else{k[f>>2]=y;k[f+4>>2]=z;k[f+8>>2]=t;k[f+12>>2]=s&255;ie(p,148870,149125,f);x=17;break}}else x=18;while(0);if((x|0)==17?(i[u>>0]|0)!=0:0)x=18;if((x|0)==18){v=k[a+628>>2]|0;if(!(i[m+227>>0]|0))ie(v,148870,149258,e);else{k[d>>2]=t;k[d+4>>2]=s&255;ie(v,148870,149488,d)}if(i[u>>0]|0){i[n>>0]=1;r=b;return}}v=i[o>>0]|0;p=i[q>>0]|0;if((v&255)>=(p&255)){i[n>>0]=1;r=b;return}z=k[a+628>>2]|0;k[c>>2]=v&255;k[c+4>>2]=p&255;ie(z,148870,149696,c);i[n>>0]=1;r=b;return}while(0);if(i[m+227>>0]|0)ie(k[a+628>>2]|0,148870,148894,h);i[m+228>>0]=1;i[m+229>>0]=1;i[m+230>>0]=0;i[n>>0]=1;r=b;return}
function Cj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,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;c=a+116|0;d=(b|0)==0;e=a+72|0;f=a+88|0;g=a+108|0;h=a+56|0;m=a+84|0;n=a+68|0;o=a+52|0;p=a+64|0;q=a+96|0;r=a+120|0;s=a+112|0;t=a+100|0;u=a+5792|0;v=a+5796|0;w=a+5784|0;x=a+5788|0;y=a+104|0;z=a+92|0;A=a+128|0;B=a+44|0;C=a+136|0;a:while(1){D=k[c>>2]|0;while(1){if(D>>>0<262){zj(a);E=k[c>>2]|0;if(d&E>>>0<262){F=0;G=55;break a}if(!E){G=38;break a}if(E>>>0<=2){k[r>>2]=k[q>>2];k[t>>2]=k[s>>2];k[q>>2]=2;H=2;G=16}else G=8}else G=8;do if((G|0)==8){G=0;E=k[g>>2]|0;I=((l[(k[h>>2]|0)+(E+2)>>0]|0)^k[e>>2]<<k[f>>2])&k[m>>2];k[e>>2]=I;J=(k[n>>2]|0)+(I<<1)|0;I=j[J>>1]|0;j[(k[p>>2]|0)+((k[o>>2]&E)<<1)>>1]=I;K=I&65535;j[J>>1]=E;E=k[q>>2]|0;k[r>>2]=E;k[t>>2]=k[s>>2];k[q>>2]=2;if(I<<16>>16)if(E>>>0<(k[A>>2]|0)>>>0)if(((k[g>>2]|0)-K|0)>>>0<=((k[B>>2]|0)+-262|0)>>>0){I=Dj(a,K)|0;k[q>>2]=I;if(I>>>0<6){if((k[C>>2]|0)!=1){if((I|0)!=3){H=I;G=16;break}if(((k[g>>2]|0)-(k[s>>2]|0)|0)>>>0<=4096){H=3;G=16;break}}k[q>>2]=2;H=2;G=16}else{H=I;G=16}}else{H=2;G=16}else{L=E;M=2}else{H=2;G=16}}while(0);if((G|0)==16){G=0;L=k[r>>2]|0;M=H}if(!(L>>>0<3|M>>>0>L>>>0)){N=L;break}if(!(k[y>>2]|0)){k[y>>2]=1;k[g>>2]=(k[g>>2]|0)+1;E=(k[c>>2]|0)+-1|0;k[c>>2]=E;D=E;continue}E=i[(k[h>>2]|0)+((k[g>>2]|0)+-1)>>0]|0;I=k[u>>2]|0;j[(k[v>>2]|0)+(I<<1)>>1]=0;k[u>>2]=I+1;i[(k[w>>2]|0)+I>>0]=E;I=a+148+((E&255)<<2)|0;j[I>>1]=(j[I>>1]|0)+1<<16>>16;if((k[u>>2]|0)==((k[x>>2]|0)+-1|0)){I=k[z>>2]|0;if((I|0)>-1)O=(k[h>>2]|0)+I|0;else O=0;Pj(a,O,(k[g>>2]|0)-I|0,0);k[z>>2]=k[g>>2];I=k[a>>2]|0;E=k[I+28>>2]|0;Nj(E);K=E+20|0;J=k[K>>2]|0;P=I+16|0;Q=k[P>>2]|0;R=J>>>0>Q>>>0?Q:J;if((R|0)!=0?(J=I+12|0,Q=E+16|0,wr(k[J>>2]|0,k[Q>>2]|0,R|0)|0,k[J>>2]=(k[J>>2]|0)+R,k[Q>>2]=(k[Q>>2]|0)+R,J=I+20|0,k[J>>2]=(k[J>>2]|0)+R,k[P>>2]=(k[P>>2]|0)-R,P=k[K>>2]|0,k[K>>2]=P-R,(P|0)==(R|0)):0)k[Q>>2]=k[E+8>>2]}k[g>>2]=(k[g>>2]|0)+1;D=(k[c>>2]|0)+-1|0;k[c>>2]=D;if(!(k[(k[a>>2]|0)+16>>2]|0)){F=0;G=55;break a}}D=k[g>>2]|0;E=D+-3+(k[c>>2]|0)|0;Q=N+253|0;R=D+65535-(k[t>>2]|0)|0;D=k[u>>2]|0;j[(k[v>>2]|0)+(D<<1)>>1]=R;k[u>>2]=D+1;i[(k[w>>2]|0)+D>>0]=Q;D=a+148+((l[155385+(Q&255)>>0]|0|256)+1<<2)|0;j[D>>1]=(j[D>>1]|0)+1<<16>>16;D=R+65535&65535;R=a+2440+((l[154873+(D>>>0<256?D:(D>>>7)+256|0)>>0]|0)<<2)|0;j[R>>1]=(j[R>>1]|0)+1<<16>>16;R=k[u>>2]|0;D=(k[x>>2]|0)+-1|0;Q=k[r>>2]|0;k[c>>2]=1-Q+(k[c>>2]|0);P=Q+-2|0;k[r>>2]=P;Q=k[g>>2]|0;K=P;while(1){P=Q+1|0;k[g>>2]=P;if(P>>>0<=E>>>0){J=((l[(k[h>>2]|0)+(Q+3)>>0]|0)^k[e>>2]<<k[f>>2])&k[m>>2];k[e>>2]=J;I=(k[n>>2]|0)+(J<<1)|0;j[(k[p>>2]|0)+((k[o>>2]&P)<<1)>>1]=j[I>>1]|0;j[I>>1]=P}K=K+-1|0;k[r>>2]=K;if(!K){S=Q;break}else Q=P}k[y>>2]=0;k[q>>2]=2;Q=S+2|0;k[g>>2]=Q;if((R|0)!=(D|0))continue;K=k[z>>2]|0;if((K|0)>-1)T=(k[h>>2]|0)+K|0;else T=0;Pj(a,T,Q-K|0,0);k[z>>2]=k[g>>2];K=k[a>>2]|0;Q=k[K+28>>2]|0;Nj(Q);E=Q+20|0;P=k[E>>2]|0;I=K+16|0;J=k[I>>2]|0;U=P>>>0>J>>>0?J:P;if((U|0)!=0?(P=K+12|0,J=Q+16|0,wr(k[P>>2]|0,k[J>>2]|0,U|0)|0,k[P>>2]=(k[P>>2]|0)+U,k[J>>2]=(k[J>>2]|0)+U,P=K+20|0,k[P>>2]=(k[P>>2]|0)+U,k[I>>2]=(k[I>>2]|0)-U,I=k[E>>2]|0,k[E>>2]=I-U,(I|0)==(U|0)):0)k[J>>2]=k[Q+8>>2];if(!(k[(k[a>>2]|0)+16>>2]|0)){F=0;G=55;break}}if((G|0)==38){if(k[y>>2]|0){T=i[(k[h>>2]|0)+((k[g>>2]|0)+-1)>>0]|0;S=k[u>>2]|0;j[(k[v>>2]|0)+(S<<1)>>1]=0;k[u>>2]=S+1;i[(k[w>>2]|0)+S>>0]=T;S=a+148+((T&255)<<2)|0;j[S>>1]=(j[S>>1]|0)+1<<16>>16;k[y>>2]=0}y=k[g>>2]|0;k[a+5812>>2]=y>>>0<2?y:2;if((b|0)==4){b=k[z>>2]|0;if((b|0)>-1)V=(k[h>>2]|0)+b|0;else V=0;Pj(a,V,y-b|0,1);k[z>>2]=k[g>>2];b=k[a>>2]|0;V=k[b+28>>2]|0;Nj(V);S=V+20|0;T=k[S>>2]|0;w=b+16|0;v=k[w>>2]|0;q=T>>>0>v>>>0?v:T;if((q|0)!=0?(T=b+12|0,v=V+16|0,wr(k[T>>2]|0,k[v>>2]|0,q|0)|0,k[T>>2]=(k[T>>2]|0)+q,k[v>>2]=(k[v>>2]|0)+q,T=b+20|0,k[T>>2]=(k[T>>2]|0)+q,k[w>>2]=(k[w>>2]|0)-q,w=k[S>>2]|0,k[S>>2]=w-q,(w|0)==(q|0)):0)k[v>>2]=k[V+8>>2];F=(k[(k[a>>2]|0)+16>>2]|0)==0?2:3;return F|0}if(k[u>>2]|0){u=k[z>>2]|0;if((u|0)>-1)W=(k[h>>2]|0)+u|0;else W=0;Pj(a,W,y-u|0,0);k[z>>2]=k[g>>2];g=k[a>>2]|0;z=k[g+28>>2]|0;Nj(z);u=z+20|0;y=k[u>>2]|0;W=g+16|0;h=k[W>>2]|0;V=y>>>0>h>>>0?h:y;if((V|0)!=0?(y=g+12|0,h=z+16|0,wr(k[y>>2]|0,k[h>>2]|0,V|0)|0,k[y>>2]=(k[y>>2]|0)+V,k[h>>2]=(k[h>>2]|0)+V,y=g+20|0,k[y>>2]=(k[y>>2]|0)+V,k[W>>2]=(k[W>>2]|0)-V,W=k[u>>2]|0,k[u>>2]=W-V,(W|0)==(V|0)):0)k[h>>2]=k[z+8>>2];if(!(k[(k[a>>2]|0)+16>>2]|0)){F=0;return F|0}}F=1;return F|0}else if((G|0)==55)return F|0;return 0}function Dj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,n=0,o=0,p=0,q=0,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;c=k[a+124>>2]|0;d=k[a+56>>2]|0;e=k[a+108>>2]|0;f=d+e|0;g=k[a+120>>2]|0;h=k[a+144>>2]|0;j=(k[a+44>>2]|0)+-262|0;l=e>>>0>j>>>0?e-j|0:0;j=k[a+64>>2]|0;n=k[a+52>>2]|0;o=d+(e+258)|0;p=k[a+116>>2]|0;q=h>>>0>p>>>0?p:h;h=a+112|0;r=d+(e+1)|0;s=d+(e+2)|0;t=o;u=e+257|0;v=b;b=g;w=g>>>0<(k[a+140>>2]|0)>>>0?c:c>>>2;c=i[d+(g+e)>>0]|0;a=i[d+(e+-1+g)>>0]|0;while(1){g=d+v|0;if((((i[d+(v+b)>>0]|0)==c<<24>>24?(i[d+(b+-1+v)>>0]|0)==a<<24>>24:0)?(i[g>>0]|0)==(i[f>>0]|0):0)?(i[d+(v+1)>>0]|0)==(i[r>>0]|0):0){g=d+(v+2)|0;x=s;while(1){y=x+1|0;if((i[y>>0]|0)!=(i[g+1>>0]|0)){z=y;break}y=x+2|0;if((i[y>>0]|0)!=(i[g+2>>0]|0)){z=y;break}y=x+3|0;if((i[y>>0]|0)!=(i[g+3>>0]|0)){z=y;break}y=x+4|0;if((i[y>>0]|0)!=(i[g+4>>0]|0)){z=y;break}y=x+5|0;if((i[y>>0]|0)!=(i[g+5>>0]|0)){z=y;break}y=x+6|0;if((i[y>>0]|0)!=(i[g+6>>0]|0)){z=y;break}y=x+7|0;if((i[y>>0]|0)!=(i[g+7>>0]|0)){z=y;break}y=x+8|0;g=g+8|0;if(!(y>>>0<o>>>0?(i[y>>0]|0)==(i[g>>0]|0):0)){z=y;break}else x=y}x=z-t|0;g=x+258|0;if((g|0)>(b|0)){k[h>>2]=v;if((g|0)>=(q|0)){A=g;B=20;break}C=g;D=i[d+(g+e)>>0]|0;E=i[d+(u+x)>>0]|0}else{C=b;D=c;E=a}}else{C=b;D=c;E=a}v=m[j+((v&n)<<1)>>1]|0;if(v>>>0<=l>>>0){A=C;B=20;break}w=w+-1|0;if(!w){A=C;B=20;break}else{b=C;c=D;a=E}}if((B|0)==20)return (A>>>0>p>>>0?p:A)|0;return 0}function Ej(a){a=a|0;var b=0,c=0,d=0;if(!a){b=-2;return b|0}c=k[a+28>>2]|0;if(!c){b=-2;return b|0}k[c+40>>2]=0;k[c+44>>2]=0;k[c+48>>2]=0;k[c+28>>2]=0;k[a+20>>2]=0;k[a+8>>2]=0;k[a+24>>2]=0;d=k[c+8>>2]|0;if(d)k[a+48>>2]=d&1;k[c>>2]=0;k[c+4>>2]=0;k[c+12>>2]=0;k[c+20>>2]=32768;k[c+32>>2]=0;k[c+56>>2]=0;k[c+60>>2]=0;d=c+1328|0;k[c+108>>2]=d;k[c+80>>2]=d;k[c+76>>2]=d;k[c+7104>>2]=1;k[c+7108>>2]=-1;b=0;return b|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;if(!b){d=-6;return d|0}if((c|0)!=56|(i[b>>0]|0)!=49){d=-6;return d|0}if(!a){d=-2;return d|0}b=a+24|0;k[b>>2]=0;c=a+32|0;e=k[c>>2]|0;if(!e){k[c>>2]=29;k[a+40>>2]=0;f=29}else f=e;e=a+36|0;if(!(k[e>>2]|0))k[e>>2]=6;e=nb[f&63](k[a+40>>2]|0,1,7116)|0;if(!e){d=-4;return d|0}k[a+28>>2]=e;k[e+52>>2]=0;k[e+8>>2]=1;k[e+36>>2]=15;k[e+40>>2]=0;k[e+44>>2]=0;k[e+48>>2]=0;k[e+28>>2]=0;k[a+20>>2]=0;k[a+8>>2]=0;k[b>>2]=0;k[a+48>>2]=1;k[e>>2]=0;k[e+4>>2]=0;k[e+12>>2]=0;k[e+20>>2]=32768;k[e+32>>2]=0;k[e+56>>2]=0;k[e+60>>2]=0;a=e+1328|0;k[e+108>>2]=a;k[e+80>>2]=a;k[e+76>>2]=a;k[e+7104>>2]=1;k[e+7108>>2]=-1;d=0;return d|0}function Gj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=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,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,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,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0,Kd=0,Ld=0,Md=0,Nd=0,Od=0,Pd=0,Qd=0,Rd=0,Sd=0,Td=0,Ud=0,Vd=0,Wd=0,Xd=0,Yd=0,Zd=0,_d=0,$d=0,ae=0,be=0,ce=0,de=0,ee=0,fe=0,ge=0,he=0,ie=0,je=0,ke=0,le=0,me=0,ne=0,oe=0,pe=0,qe=0,re=0,se=0,te=0,ue=0,ve=0,we=0,xe=0,ye=0,ze=0,Ae=0,Be=0,Ce=0,De=0,Ee=0,Fe=0,Ge=0,He=0,Ie=0,Je=0,Ke=0,Le=0,Me=0,Ne=0,Oe=0,Pe=0,Qe=0,Re=0,Se=0,Te=0,Ue=0,Ve=0,We=0,Xe=0,Ye=0,Ze=0,_e=0,$e=0,af=0,bf=0,cf=0,df=0,ef=0,ff=0,gf=0,hf=0,jf=0,kf=0,lf=0,mf=0,nf=0,of=0,pf=0,qf=0,rf=0,sf=0,tf=0,uf=0,vf=0,wf=0,xf=0,yf=0,zf=0,Af=0,Bf=0,Cf=0,Df=0,Ef=0,Ff=0,Gf=0,Hf=0,If=0,Jf=0,Kf=0,Lf=0,Mf=0,Nf=0,Of=0,Pf=0,Qf=0,Rf=0,Sf=0,Tf=0,Uf=0,Vf=0,Wf=0,Xf=0,Yf=0,Zf=0,_f=0,$f=0,ag=0,bg=0,cg=0,dg=0,eg=0,fg=0,gg=0,hg=0,ig=0,jg=0,kg=0,lg=0,mg=0,ng=0,og=0,pg=0,qg=0,rg=0,sg=0,tg=0,ug=0,vg=0,wg=0,xg=0,yg=0,zg=0,Ag=0,Bg=0,Cg=0,Dg=0,Eg=0,Fg=0,Gg=0,Hg=0,Ig=0,Jg=0,Kg=0,Lg=0,Mg=0,Ng=0,Og=0,Pg=0,Qg=0,Rg=0,Sg=0,Tg=0,Ug=0,Vg=0,Wg=0,Xg=0,Yg=0,Zg=0;c=r;r=r+16|0;d=c;if(!a){e=-2;r=c;return e|0}f=k[a+28>>2]|0;if(!f){e=-2;r=c;return e|0}g=a+12|0;h=k[g>>2]|0;if(!h){e=-2;r=c;return e|0}n=k[a>>2]|0;if((n|0)==0?(k[a+4>>2]|0)!=0:0){e=-2;r=c;return e|0}o=k[f>>2]|0;if((o|0)==11){k[f>>2]=12;p=12}else p=o;o=a+16|0;q=k[o>>2]|0;s=a+4|0;t=k[s>>2]|0;u=f+56|0;v=f+60|0;w=f+8|0;x=f+24|0;y=d+1|0;z=f+16|0;A=f+32|0;B=a+24|0;C=f+36|0;D=f+20|0;E=a+48|0;F=f+64|0;G=f+12|0;H=(b+-5|0)>>>0<2;I=f+4|0;J=f+76|0;K=f+84|0;L=f+80|0;M=f+88|0;N=(b|0)==6;O=f+7108|0;P=f+72|0;Q=f+7112|0;R=f+68|0;S=f+44|0;T=f+7104|0;U=f+48|0;V=f+52|0;W=f+40|0;X=a+20|0;Y=f+28|0;Z=d+2|0;_=d+3|0;$=f+104|0;aa=f+96|0;ba=f+100|0;ca=f+624|0;da=f+1328|0;ea=f+108|0;fa=f+112|0;ga=f+752|0;ha=f+92|0;ia=h;h=p;p=k[v>>2]|0;ja=t;ka=k[u>>2]|0;la=q;ma=n;n=q;q=0;a:while(1){b:do switch(h|0){case 28:{na=ia;oa=la;pa=p;qa=ja;ra=ka;sa=ma;ta=n;ua=1;break a;break}case 29:{va=ia;wa=p;xa=ja;ya=ka;za=la;Aa=ma;Ba=n;Ca=281;break a;break}case 30:{e=-4;Ca=296;break a;break}case 0:{Da=k[w>>2]|0;if(!Da){k[f>>2]=12;Ea=p;Fa=ja;Ga=ka;Ha=la;Ia=ma;Ja=n;Ka=ia;La=q;break b}if(p>>>0<16){Ma=p;Na=ja;Oa=ka;Pa=ma;while(1){if(!Na){na=ia;oa=la;pa=Ma;qa=0;ra=Oa;sa=Pa;ta=n;ua=q;break a}Qa=Na+-1|0;Ra=Pa+1|0;Sa=(l[Pa>>0]<<Ma)+Oa|0;Ta=Ma+8|0;if(Ta>>>0<16){Ma=Ta;Na=Qa;Oa=Sa;Pa=Ra}else{Ua=Ta;Va=Qa;Wa=Sa;Xa=Ra;break}}}else{Ua=p;Va=ja;Wa=ka;Xa=ma}if((Wa|0)==35615&(Da&2|0)!=0){Pa=Xj(0,0,0)|0;k[x>>2]=Pa;i[d>>0]=31;i[y>>0]=-117;Pa=Xj(k[x>>2]|0,d,2)|0;k[x>>2]=Pa;k[f>>2]=1;Ea=0;Fa=Va;Ga=0;Ha=la;Ia=Xa;Ja=n;Ka=ia;La=q;break b}k[z>>2]=0;Pa=k[A>>2]|0;if(Pa)k[Pa+48>>2]=-1;if((Da&1|0)!=0?((((Wa<<8&65280)+(Wa>>>8)|0)>>>0)%31|0|0)==0:0){if((Wa&15|0)!=8){k[B>>2]=154515;k[f>>2]=29;Ea=Ua;Fa=Va;Ga=Wa;Ha=la;Ia=Xa;Ja=n;Ka=ia;La=q;break b}Pa=Wa>>>4;Oa=Ua+-4|0;Na=(Pa&15)+8|0;Ma=k[C>>2]|0;if(Ma){if(Na>>>0>Ma>>>0){k[B>>2]=154542;k[f>>2]=29;Ea=Oa;Fa=Va;Ga=Pa;Ha=la;Ia=Xa;Ja=n;Ka=ia;La=q;break b}}else k[C>>2]=Na;k[D>>2]=1<<Na;Na=Wj(0,0,0)|0;k[x>>2]=Na;k[E>>2]=Na;k[f>>2]=Wa>>>12&2^11;Ea=0;Fa=Va;Ga=0;Ha=la;Ia=Xa;Ja=n;Ka=ia;La=q;break b}k[B>>2]=154492;k[f>>2]=29;Ea=Ua;Fa=Va;Ga=Wa;Ha=la;Ia=Xa;Ja=n;Ka=ia;La=q;break}case 1:{if(p>>>0<16){Na=p;Pa=ja;Oa=ka;Ma=ma;while(1){if(!Pa){na=ia;oa=la;pa=Na;qa=0;ra=Oa;sa=Ma;ta=n;ua=q;break a}Ra=Pa+-1|0;Sa=Ma+1|0;Qa=(l[Ma>>0]<<Na)+Oa|0;Ta=Na+8|0;if(Ta>>>0<16){Na=Ta;Pa=Ra;Oa=Qa;Ma=Sa}else{Ya=Qa;Za=Ta;_a=Ra;$a=Sa;break}}}else{Ya=ka;Za=p;_a=ja;$a=ma}k[z>>2]=Ya;if((Ya&255|0)!=8){k[B>>2]=154515;k[f>>2]=29;Ea=Za;Fa=_a;Ga=Ya;Ha=la;Ia=$a;Ja=n;Ka=ia;La=q;break b}if(Ya&57344){k[B>>2]=154562;k[f>>2]=29;Ea=Za;Fa=_a;Ga=Ya;Ha=la;Ia=$a;Ja=n;Ka=ia;La=q;break b}Ma=k[A>>2]|0;if(Ma)k[Ma>>2]=Ya>>>8&1;if(Ya&512){i[d>>0]=Ya;i[y>>0]=Ya>>>8;Ma=Xj(k[x>>2]|0,d,2)|0;k[x>>2]=Ma}k[f>>2]=2;ab=0;bb=_a;cb=0;db=$a;Ca=47;break}case 2:{if(p>>>0<32){ab=p;bb=ja;cb=ka;db=ma;Ca=47}else{eb=ja;fb=ka;gb=ma;Ca=49}break}case 3:{if(p>>>0<16){hb=p;ib=ja;jb=ka;kb=ma;Ca=55}else{lb=ja;mb=ka;nb=ma;Ca=57}break}case 4:{ob=p;pb=ja;qb=ka;rb=ma;Ca=62;break}case 5:{sb=p;tb=ja;ub=ka;vb=ma;Ca=73;break}case 6:{wb=p;xb=ja;yb=ka;zb=ma;Ca=83;break}case 7:{Ab=p;Bb=ja;Cb=ka;Db=ma;Ca=96;break}case 8:{Eb=p;Fb=ja;Gb=ka;Hb=ma;Ca=109;break}case 9:{if(p>>>0<32){Ma=p;Oa=ja;Pa=ka;Na=ma;while(1){if(!Oa){na=ia;oa=la;pa=Ma;qa=0;ra=Pa;sa=Na;ta=n;ua=q;break a}Da=Oa+-1|0;Sa=Na+1|0;Ra=(l[Na>>0]<<Ma)+Pa|0;Ma=Ma+8|0;if(Ma>>>0>=32){Ib=Da;Jb=Ra;Kb=Sa;break}else{Oa=Da;Pa=Ra;Na=Sa}}}else{Ib=ja;Jb=ka;Kb=ma}Na=xr(Jb|0)|0;k[x>>2]=Na;k[E>>2]=Na;k[f>>2]=10;Lb=0;Mb=Ib;Nb=0;Ob=Kb;Ca=121;break}case 10:{Lb=p;Mb=ja;Nb=ka;Ob=ma;Ca=121;break}case 11:{Pb=p;Qb=ja;Rb=ka;Sb=ma;Ca=124;break}case 12:{Tb=p;Ub=ja;Vb=ka;Wb=ma;Ca=125;break}case 13:{Na=p&7;Pa=ka>>>Na;Oa=p-Na|0;if(Oa>>>0<32){Na=Oa;Ma=ja;Sa=Pa;Ra=ma;while(1){if(!Ma){na=ia;oa=la;pa=Na;qa=0;ra=Sa;sa=Ra;ta=n;ua=q;break a}Da=Ma+-1|0;Ta=Ra+1|0;Qa=(l[Ra>>0]<<Na)+Sa|0;Xb=Na+8|0;if(Xb>>>0<32){Na=Xb;Ma=Da;Sa=Qa;Ra=Ta}else{Yb=Xb;Zb=Da;_b=Qa;$b=Ta;break}}}else{Yb=Oa;Zb=ja;_b=Pa;$b=ma}Ra=_b&65535;if((Ra|0)==(_b>>>16^65535|0)){k[F>>2]=Ra;k[f>>2]=14;if(N){na=ia;oa=la;pa=0;qa=Zb;ra=0;sa=$b;ta=n;ua=q;break a}else{ac=0;bc=Zb;cc=0;dc=$b;Ca=143;break b}}else{k[B>>2]=154626;k[f>>2]=29;Ea=Yb;Fa=Zb;Ga=_b;Ha=la;Ia=$b;Ja=n;Ka=ia;La=q;break b}break}case 14:{ac=p;bc=ja;cc=ka;dc=ma;Ca=143;break}case 15:{ec=p;fc=ja;gc=ka;hc=ma;Ca=144;break}case 16:{if(p>>>0<14){Ra=p;Sa=ja;Ma=ka;Na=ma;while(1){if(!Sa){na=ia;oa=la;pa=Ra;qa=0;ra=Ma;sa=Na;ta=n;ua=q;break a}Ta=Sa+-1|0;Qa=Na+1|0;Da=(l[Na>>0]<<Ra)+Ma|0;Xb=Ra+8|0;if(Xb>>>0<14){Ra=Xb;Sa=Ta;Ma=Da;Na=Qa}else{ic=Xb;jc=Ta;kc=Da;lc=Qa;break}}}else{ic=p;jc=ja;kc=ka;lc=ma}Na=(kc&31)+257|0;k[aa>>2]=Na;Ma=(kc>>>5&31)+1|0;k[ba>>2]=Ma;Sa=(kc>>>10&15)+4|0;k[ha>>2]=Sa;Ra=kc>>>14;Pa=ic+-14|0;if(Na>>>0>286|Ma>>>0>30){k[B>>2]=154655;k[f>>2]=29;Ea=Pa;Fa=jc;Ga=Ra;Ha=la;Ia=lc;Ja=n;Ka=ia;La=q;break b}else{k[$>>2]=0;k[f>>2]=17;mc=Sa;nc=0;oc=Pa;pc=jc;qc=Ra;rc=lc;Ca=154;break b}break}case 17:{Ra=k[$>>2]|0;Pa=k[ha>>2]|0;if(Ra>>>0<Pa>>>0){mc=Pa;nc=Ra;oc=p;pc=ja;qc=ka;rc=ma;Ca=154}else{sc=Ra;tc=p;uc=ja;vc=ka;wc=ma;Ca=155}break}case 18:{xc=k[$>>2]|0;yc=p;zc=ja;Ac=ka;Bc=ma;Cc=q;Ca=165;break}case 19:{Dc=p;Ec=ja;Fc=ka;Gc=ma;Hc=q;Ca=199;break}case 20:{Ic=p;Jc=ja;Kc=ka;Lc=ma;Mc=q;Ca=200;break}case 21:{Nc=k[P>>2]|0;Oc=p;Pc=ja;Qc=ka;Rc=ma;Sc=q;Ca=218;break}case 22:{Tc=p;Uc=ja;Vc=ka;Wc=ma;Xc=q;Ca=225;break}case 23:{Yc=k[P>>2]|0;Zc=p;_c=ja;$c=ka;ad=ma;bd=q;Ca=237;break}case 24:{cd=p;dd=ja;ed=ka;fd=ma;gd=q;Ca=243;break}case 25:{if(!la){na=ia;oa=0;pa=p;qa=ja;ra=ka;sa=ma;ta=n;ua=q;break a}i[ia>>0]=k[F>>2];k[f>>2]=20;Ea=p;Fa=ja;Ga=ka;Ha=la+-1|0;Ia=ma;Ja=n;Ka=ia+1|0;La=q;break}case 26:{if(k[w>>2]|0){if(p>>>0<32){Ra=p;Pa=ja;Sa=ka;Ma=ma;while(1){if(!Pa){na=ia;oa=la;pa=Ra;qa=0;ra=Sa;sa=Ma;ta=n;ua=q;break a}Na=Pa+-1|0;Oa=Ma+1|0;Qa=(l[Ma>>0]<<Ra)+Sa|0;Da=Ra+8|0;if(Da>>>0<32){Ra=Da;Pa=Na;Sa=Qa;Ma=Oa}else{hd=Da;id=Na;jd=Qa;kd=Oa;break}}}else{hd=p;id=ja;jd=ka;kd=ma}Ma=n-la|0;k[X>>2]=(k[X>>2]|0)+Ma;k[Y>>2]=(k[Y>>2]|0)+Ma;if((n|0)==(la|0))ld=k[x>>2]|0;else{Sa=k[x>>2]|0;Pa=ia+(0-Ma)|0;if(!(k[z>>2]|0))md=Wj(Sa,Pa,Ma)|0;else md=Xj(Sa,Pa,Ma)|0;k[x>>2]=md;k[E>>2]=md;ld=md}Ma=(k[z>>2]|0)==0;Pa=xr(jd|0)|0;if(((Ma?Pa:jd)|0)==(ld|0)){nd=0;od=id;pd=0;qd=kd;rd=la}else{k[B>>2]=154829;k[f>>2]=29;Ea=hd;Fa=id;Ga=jd;Ha=la;Ia=kd;Ja=la;Ka=ia;La=q;break b}}else{nd=p;od=ja;pd=ka;qd=ma;rd=n}k[f>>2]=27;sd=nd;td=od;ud=pd;vd=qd;wd=rd;Ca=273;break}case 27:{sd=p;td=ja;ud=ka;vd=ma;wd=n;Ca=273;break}default:{Ca=295;break a}}while(0);if((Ca|0)==47)while(1){Ca=0;if(!bb){na=ia;oa=la;pa=ab;qa=0;ra=cb;sa=db;ta=n;ua=q;break a}Pa=bb+-1|0;Ma=db+1|0;Sa=(l[db>>0]<<ab)+cb|0;ab=ab+8|0;if(ab>>>0>=32){eb=Pa;fb=Sa;gb=Ma;Ca=49;break}else{bb=Pa;cb=Sa;db=Ma;Ca=47}}else if((Ca|0)==121){Ca=0;if(!(k[G>>2]|0)){xd=ia;yd=Lb;zd=Mb;Ad=Nb;Bd=la;Cd=Ob;Ca=122;break}Ma=Wj(0,0,0)|0;k[x>>2]=Ma;k[E>>2]=Ma;k[f>>2]=11;Pb=Lb;Qb=Mb;Rb=Nb;Sb=Ob;Ca=124}else if((Ca|0)==143){Ca=0;k[f>>2]=15;ec=ac;fc=bc;gc=cc;hc=dc;Ca=144}else if((Ca|0)==154){Ca=0;Ma=nc;Sa=oc;Pa=pc;Ra=qc;Oa=rc;while(1){if(Sa>>>0<3){Qa=Sa;Na=Pa;Da=Ra;Ta=Oa;while(1){if(!Na){na=ia;oa=la;pa=Qa;qa=0;ra=Da;sa=Ta;ta=n;ua=q;break a}Xb=Na+-1|0;Dd=Ta+1|0;Ed=(l[Ta>>0]<<Qa)+Da|0;Fd=Qa+8|0;if(Fd>>>0<3){Qa=Fd;Na=Xb;Da=Ed;Ta=Dd}else{Gd=Fd;Hd=Xb;Id=Ed;Jd=Dd;break}}}else{Gd=Sa;Hd=Pa;Id=Ra;Jd=Oa}Ta=Ma+1|0;k[$>>2]=Ta;j[f+112+(m[127246+(Ma<<1)>>1]<<1)>>1]=Id&7;Da=Id>>>3;Na=Gd+-3|0;if(Ta>>>0<mc>>>0){Ma=Ta;Sa=Na;Pa=Hd;Ra=Da;Oa=Jd}else{sc=Ta;tc=Na;uc=Hd;vc=Da;wc=Jd;Ca=155;break}}}else if((Ca|0)==273){Ca=0;if(!(k[w>>2]|0)){Kd=ia;Ld=sd;Md=td;Nd=ud;Od=la;Pd=vd;Qd=wd;Ca=280;break}if(!(k[z>>2]|0)){Kd=ia;Ld=sd;Md=td;Nd=ud;Od=la;Pd=vd;Qd=wd;Ca=280;break}if(sd>>>0<32){Oa=sd;Ra=td;Pa=ud;Sa=vd;while(1){if(!Ra){na=ia;oa=la;pa=Oa;qa=0;ra=Pa;sa=Sa;ta=wd;ua=q;break a}Ma=Ra+-1|0;Da=Sa+1|0;Na=(l[Sa>>0]<<Oa)+Pa|0;Ta=Oa+8|0;if(Ta>>>0<32){Oa=Ta;Ra=Ma;Pa=Na;Sa=Da}else{Rd=Ta;Sd=Ma;Td=Na;Ud=Da;break}}}else{Rd=sd;Sd=td;Td=ud;Ud=vd}if((Td|0)==(k[Y>>2]|0)){Kd=ia;Ld=0;Md=Sd;Nd=0;Od=la;Pd=Ud;Qd=wd;Ca=280;break}k[B>>2]=154850;k[f>>2]=29;Ea=Rd;Fa=Sd;Ga=Td;Ha=la;Ia=Ud;Ja=wd;Ka=ia;La=q}do if((Ca|0)==49){Ca=0;Sa=k[A>>2]|0;if(Sa)k[Sa+4>>2]=fb;if(k[z>>2]&512){i[d>>0]=fb;i[y>>0]=fb>>>8;i[Z>>0]=fb>>>16;i[_>>0]=fb>>>24;Sa=Xj(k[x>>2]|0,d,4)|0;k[x>>2]=Sa}k[f>>2]=3;hb=0;ib=eb;jb=0;kb=gb;Ca=55}else if((Ca|0)==124){Ca=0;if(H){na=ia;oa=la;pa=Pb;qa=Qb;ra=Rb;sa=Sb;ta=n;ua=q;break a}else{Tb=Pb;Ub=Qb;Vb=Rb;Wb=Sb;Ca=125}}else if((Ca|0)==144){Ca=0;Sa=k[F>>2]|0;if(!Sa){k[f>>2]=11;Ea=ec;Fa=fc;Ga=gc;Ha=la;Ia=hc;Ja=n;Ka=ia;La=q;break}Pa=Sa>>>0>fc>>>0?fc:Sa;Sa=Pa>>>0>la>>>0?la:Pa;if(!Sa){na=ia;oa=la;pa=ec;qa=fc;ra=gc;sa=hc;ta=n;ua=q;break a}wr(ia|0,hc|0,Sa|0)|0;k[F>>2]=(k[F>>2]|0)-Sa;Ea=ec;Fa=fc-Sa|0;Ga=gc;Ha=la-Sa|0;Ia=hc+Sa|0;Ja=n;Ka=ia+Sa|0;La=q}else if((Ca|0)==155){Ca=0;if(sc>>>0<19){Sa=sc;do{j[f+112+(m[127246+(Sa<<1)>>1]<<1)>>1]=0;Sa=Sa+1|0}while((Sa|0)!=19);k[$>>2]=19}k[ea>>2]=da;k[J>>2]=da;k[K>>2]=7;Sa=Kj(0,fa,19,ea,K,ga)|0;if(!Sa){k[$>>2]=0;k[f>>2]=18;xc=0;yc=tc;zc=uc;Ac=vc;Bc=wc;Cc=0;Ca=165;break}else{k[B>>2]=154691;k[f>>2]=29;Ea=tc;Fa=uc;Ga=vc;Ha=la;Ia=wc;Ja=n;Ka=ia;La=Sa;break}}while(0);c:do if((Ca|0)==55)while(1){Ca=0;if(!ib){na=ia;oa=la;pa=hb;qa=0;ra=jb;sa=kb;ta=n;ua=q;break a}Sa=ib+-1|0;Pa=kb+1|0;Ra=(l[kb>>0]<<hb)+jb|0;hb=hb+8|0;if(hb>>>0>=16){lb=Sa;mb=Ra;nb=Pa;Ca=57;break}else{ib=Sa;jb=Ra;kb=Pa;Ca=55}}else if((Ca|0)==125){Ca=0;if(k[I>>2]|0){Pa=Tb&7;k[f>>2]=26;Ea=Tb-Pa|0;Fa=Ub;Ga=Vb>>>Pa;Ha=la;Ia=Wb;Ja=n;Ka=ia;La=q;break}if(Tb>>>0<3){Pa=Tb;Ra=Ub;Sa=Vb;Oa=Wb;while(1){if(!Ra){na=ia;oa=la;pa=Pa;qa=0;ra=Sa;sa=Oa;ta=n;ua=q;break a}Da=Ra+-1|0;Na=Oa+1|0;Ma=(l[Oa>>0]<<Pa)+Sa|0;Ta=Pa+8|0;if(Ta>>>0<3){Pa=Ta;Ra=Da;Sa=Ma;Oa=Na}else{Vd=Ta;Wd=Da;Xd=Ma;Yd=Na;break}}}else{Vd=Tb;Wd=Ub;Xd=Vb;Yd=Wb}k[I>>2]=Xd&1;switch(Xd>>>1&3|0){case 0:{k[f>>2]=13;break}case 1:{k[J>>2]=125070;k[K>>2]=9;k[L>>2]=127118;k[M>>2]=5;k[f>>2]=19;if(N){Zd=ia;_d=Vd;$d=Wd;ae=Xd;be=la;ce=Yd;de=n;ee=q;Ca=133;break a}break}case 2:{k[f>>2]=16;break}case 3:{k[B>>2]=154607;k[f>>2]=29;break}default:{}}Ea=Vd+-3|0;Fa=Wd;Ga=Xd>>>3;Ha=la;Ia=Yd;Ja=n;Ka=ia;La=q}else if((Ca|0)==165){Ca=0;Oa=k[aa>>2]|0;Sa=k[ba>>2]|0;do if(xc>>>0<(Sa+Oa|0)>>>0){Ra=xc;Pa=Sa;Na=Oa;Ma=yc;Da=zc;Ta=Ac;Qa=Bc;d:while(1){Dd=(1<<k[K>>2])+-1|0;Ed=Dd&Ta;Xb=k[J>>2]|0;Fd=l[Xb+(Ed<<2)+1>>0]|0;if(Ma>>>0<Fd>>>0){fe=Ma;ge=Da;he=Ta;ie=Qa;while(1){if(!ge){na=ia;oa=la;pa=fe;qa=0;ra=he;sa=ie;ta=n;ua=Cc;break a}je=ge+-1|0;ke=ie+1|0;le=(l[ie>>0]<<fe)+he|0;me=fe+8|0;ne=Dd&le;oe=l[Xb+(ne<<2)+1>>0]|0;if(me>>>0<oe>>>0){fe=me;ge=je;he=le;ie=ke}else{pe=oe;qe=ne;re=me;se=je;te=le;ue=ke;break}}}else{pe=Fd;qe=Ed;re=Ma;se=Da;te=Ta;ue=Qa}ie=j[Xb+(qe<<2)+2>>1]|0;if((ie&65535)>=16){switch(ie<<16>>16){case 16:{he=pe+2|0;if(re>>>0<he>>>0){ge=re;fe=se;Dd=te;ke=ue;while(1){if(!fe){na=ia;oa=la;pa=ge;qa=0;ra=Dd;sa=ke;ta=n;ua=Cc;break a}le=fe+-1|0;je=ke+1|0;me=(l[ke>>0]<<ge)+Dd|0;ne=ge+8|0;if(ne>>>0<he>>>0){ge=ne;fe=le;Dd=me;ke=je}else{ve=ne;we=le;xe=me;ye=je;break}}}else{ve=re;we=se;xe=te;ye=ue}ke=xe>>>pe;Dd=ve-pe|0;if(!Ra){ze=ke;Ae=Dd;Be=we;Ce=ye;Ca=179;break d}De=Dd+-2|0;Ee=(ke&3)+3|0;Fe=we;Ge=ke>>>2;He=m[f+112+(Ra+-1<<1)>>1]|0;Ie=ye;break}case 17:{ke=pe+3|0;if(re>>>0<ke>>>0){Dd=re;fe=se;ge=te;he=ue;while(1){if(!fe){na=ia;oa=la;pa=Dd;qa=0;ra=ge;sa=he;ta=n;ua=Cc;break a}Xb=fe+-1|0;Ed=he+1|0;Fd=(l[he>>0]<<Dd)+ge|0;je=Dd+8|0;if(je>>>0<ke>>>0){Dd=je;fe=Xb;ge=Fd;he=Ed}else{Je=je;Ke=Xb;Le=Fd;Me=Ed;break}}}else{Je=re;Ke=se;Le=te;Me=ue}he=Le>>>pe;De=-3-pe+Je|0;Ee=(he&7)+3|0;Fe=Ke;Ge=he>>>3;He=0;Ie=Me;break}default:{he=pe+7|0;if(re>>>0<he>>>0){ge=re;fe=se;Dd=te;ke=ue;while(1){if(!fe){na=ia;oa=la;pa=ge;qa=0;ra=Dd;sa=ke;ta=n;ua=Cc;break a}Ed=fe+-1|0;Fd=ke+1|0;Xb=(l[ke>>0]<<ge)+Dd|0;je=ge+8|0;if(je>>>0<he>>>0){ge=je;fe=Ed;Dd=Xb;ke=Fd}else{Ne=je;Oe=Ed;Pe=Xb;Qe=Fd;break}}}else{Ne=re;Oe=se;Pe=te;Qe=ue}ke=Pe>>>pe;De=-7-pe+Ne|0;Ee=(ke&127)+11|0;Fe=Oe;Ge=ke>>>7;He=0;Ie=Qe}}if((Ra+Ee|0)>>>0>(Pa+Na|0)>>>0){Re=De;Se=Fe;Te=Ge;Ue=Ie;Ca=189;break}ke=He&65535;Dd=Ee+-1|0;k[$>>2]=Ra+1;j[f+112+(Ra<<1)>>1]=ke;if(!Dd){Ve=De;We=Fe;Xe=Ge;Ye=Ie}else{fe=Dd;do{Dd=k[$>>2]|0;fe=fe+-1|0;k[$>>2]=Dd+1;j[f+112+(Dd<<1)>>1]=ke}while((fe|0)!=0);Ve=De;We=Fe;Xe=Ge;Ye=Ie}}else{k[$>>2]=Ra+1;j[f+112+(Ra<<1)>>1]=ie;Ve=re-pe|0;We=se;Xe=te>>>pe;Ye=ue}Ra=k[$>>2]|0;fe=k[aa>>2]|0;Pa=k[ba>>2]|0;if(Ra>>>0>=(Pa+fe|0)>>>0){Ze=fe;_e=Ve;$e=We;af=Xe;bf=Ye;Ca=191;break}else{Na=fe;Ma=Ve;Da=We;Ta=Xe;Qa=Ye}}if((Ca|0)==179){Ca=0;k[B>>2]=154716;k[f>>2]=29;Ea=Ae;Fa=Be;Ga=ze;Ha=la;Ia=Ce;Ja=n;Ka=ia;La=Cc;break c}else if((Ca|0)==189){Ca=0;k[B>>2]=154716;k[f>>2]=29;Ea=Re;Fa=Se;Ga=Te;Ha=la;Ia=Ue;Ja=n;Ka=ia;La=Cc;break c}else if((Ca|0)==191){Ca=0;if((k[f>>2]|0)==29){Ea=_e;Fa=$e;Ga=af;Ha=la;Ia=bf;Ja=n;Ka=ia;La=Cc;break c}else{cf=Ze;df=_e;ef=$e;ff=af;gf=bf;break}}}else{cf=Oa;df=yc;ef=zc;ff=Ac;gf=Bc}while(0);if(!(j[ca>>1]|0)){k[B>>2]=154742;k[f>>2]=29;Ea=df;Fa=ef;Ga=ff;Ha=la;Ia=gf;Ja=n;Ka=ia;La=Cc;break}k[ea>>2]=da;k[J>>2]=da;k[K>>2]=9;Oa=Kj(1,fa,cf,ea,K,ga)|0;if(Oa){k[B>>2]=154779;k[f>>2]=29;Ea=df;Fa=ef;Ga=ff;Ha=la;Ia=gf;Ja=n;Ka=ia;La=Oa;break}k[L>>2]=k[ea>>2];k[M>>2]=6;Oa=Kj(2,f+112+(k[aa>>2]<<1)|0,k[ba>>2]|0,ea,M,ga)|0;if(!Oa){k[f>>2]=19;if(N){na=ia;oa=la;pa=df;qa=ef;ra=ff;sa=gf;ta=n;ua=0;break a}else{Dc=df;Ec=ef;Fc=ff;Gc=gf;Hc=0;Ca=199;break}}else{k[B>>2]=154807;k[f>>2]=29;Ea=df;Fa=ef;Ga=ff;Ha=la;Ia=gf;Ja=n;Ka=ia;La=Oa;break}}while(0);if((Ca|0)==57){Ca=0;Oa=k[A>>2]|0;if(Oa){k[Oa+8>>2]=mb&255;k[Oa+12>>2]=mb>>>8}if(k[z>>2]&512){i[d>>0]=mb;i[y>>0]=mb>>>8;Oa=Xj(k[x>>2]|0,d,2)|0;k[x>>2]=Oa}k[f>>2]=4;ob=0;pb=lb;qb=0;rb=nb;Ca=62}else if((Ca|0)==199){Ca=0;k[f>>2]=20;Ic=Dc;Jc=Ec;Kc=Fc;Lc=Gc;Mc=Hc;Ca=200}do if((Ca|0)==62){Ca=0;Oa=k[z>>2]|0;if(!(Oa&1024)){Sa=k[A>>2]|0;if(!Sa){hf=ob;jf=pb;kf=qb;lf=rb}else{k[Sa+16>>2]=0;hf=ob;jf=pb;kf=qb;lf=rb}}else{if(ob>>>0<16){Sa=ob;Qa=pb;Ta=qb;Da=rb;while(1){if(!Qa){na=ia;oa=la;pa=Sa;qa=0;ra=Ta;sa=Da;ta=n;ua=q;break a}Ma=Qa+-1|0;Na=Da+1|0;Pa=(l[Da>>0]<<Sa)+Ta|0;Sa=Sa+8|0;if(Sa>>>0>=16){mf=Ma;nf=Pa;of=Na;break}else{Qa=Ma;Ta=Pa;Da=Na}}}else{mf=pb;nf=qb;of=rb}k[F>>2]=nf;Da=k[A>>2]|0;if(Da)k[Da+20>>2]=nf;if(!(Oa&512)){hf=0;jf=mf;kf=0;lf=of}else{i[d>>0]=nf;i[y>>0]=nf>>>8;Da=Xj(k[x>>2]|0,d,2)|0;k[x>>2]=Da;hf=0;jf=mf;kf=0;lf=of}}k[f>>2]=5;sb=hf;tb=jf;ub=kf;vb=lf;Ca=73}else if((Ca|0)==200){Ca=0;if(la>>>0>257&Jc>>>0>5){k[g>>2]=ia;k[o>>2]=la;k[a>>2]=Lc;k[s>>2]=Jc;k[u>>2]=Kc;k[v>>2]=Ic;Yj(a,n);Da=k[g>>2]|0;Ta=k[o>>2]|0;Qa=k[a>>2]|0;Sa=k[s>>2]|0;Na=k[u>>2]|0;Pa=k[v>>2]|0;if((k[f>>2]|0)!=11){Ea=Pa;Fa=Sa;Ga=Na;Ha=Ta;Ia=Qa;Ja=n;Ka=Da;La=Mc;break}k[O>>2]=-1;Ea=Pa;Fa=Sa;Ga=Na;Ha=Ta;Ia=Qa;Ja=n;Ka=Da;La=Mc;break}k[O>>2]=0;Da=(1<<k[K>>2])+-1|0;Qa=Da&Kc;Ta=k[J>>2]|0;Na=i[Ta+(Qa<<2)+1>>0]|0;Sa=Na&255;if(Sa>>>0>Ic>>>0){Pa=Ic;Ma=Jc;Ra=Kc;fe=Lc;while(1){if(!Ma){na=ia;oa=la;pa=Pa;qa=0;ra=Ra;sa=fe;ta=n;ua=Mc;break a}ke=Ma+-1|0;Dd=fe+1|0;ge=(l[fe>>0]<<Pa)+Ra|0;he=Pa+8|0;Fd=Da&ge;Xb=i[Ta+(Fd<<2)+1>>0]|0;Ed=Xb&255;if(Ed>>>0>he>>>0){Pa=he;Ma=ke;Ra=ge;fe=Dd}else{pf=Xb;qf=Ed;rf=Fd;sf=he;tf=ke;uf=ge;vf=Dd;break}}}else{pf=Na;qf=Sa;rf=Qa;sf=Ic;tf=Jc;uf=Kc;vf=Lc}fe=i[Ta+(rf<<2)>>0]|0;Ra=j[Ta+(rf<<2)+2>>1]|0;Ma=fe&255;if(fe<<24>>24!=0&(Ma&240|0)==0){Pa=Ra&65535;Da=(1<<qf+Ma)+-1|0;Ma=((uf&Da)>>>qf)+Pa|0;Oa=i[Ta+(Ma<<2)+1>>0]|0;if(((Oa&255)+qf|0)>>>0>sf>>>0){Dd=sf;ge=tf;ke=uf;he=vf;while(1){if(!ge){na=ia;oa=la;pa=Dd;qa=0;ra=ke;sa=he;ta=n;ua=Mc;break a}Fd=ge+-1|0;Ed=he+1|0;Xb=(l[he>>0]<<Dd)+ke|0;je=Dd+8|0;me=((Xb&Da)>>>qf)+Pa|0;le=i[Ta+(me<<2)+1>>0]|0;if(((le&255)+qf|0)>>>0>je>>>0){Dd=je;ge=Fd;ke=Xb;he=Ed}else{wf=me;xf=le;yf=je;zf=Fd;Af=Xb;Bf=Ed;break}}}else{wf=Ma;xf=Oa;yf=sf;zf=tf;Af=uf;Bf=vf}he=j[Ta+(wf<<2)+2>>1]|0;ke=i[Ta+(wf<<2)>>0]|0;k[O>>2]=qf;Cf=qf;Df=yf-qf|0;Ef=zf;Ff=ke;Gf=xf;Hf=he;If=Af>>>qf;Jf=Bf}else{Cf=0;Df=sf;Ef=tf;Ff=fe;Gf=pf;Hf=Ra;If=uf;Jf=vf}he=Gf&255;ke=If>>>he;ge=Df-he|0;k[O>>2]=Cf+he;k[F>>2]=Hf&65535;he=Ff&255;if(!(Ff<<24>>24)){k[f>>2]=25;Ea=ge;Fa=Ef;Ga=ke;Ha=la;Ia=Jf;Ja=n;Ka=ia;La=Mc;break}if(he&32){k[O>>2]=-1;k[f>>2]=11;Ea=ge;Fa=Ef;Ga=ke;Ha=la;Ia=Jf;Ja=n;Ka=ia;La=Mc;break}if(!(he&64)){Dd=he&15;k[P>>2]=Dd;k[f>>2]=21;Nc=Dd;Oc=ge;Pc=Ef;Qc=ke;Rc=Jf;Sc=Mc;Ca=218;break}else{k[B>>2]=155829;k[f>>2]=29;Ea=ge;Fa=Ef;Ga=ke;Ha=la;Ia=Jf;Ja=n;Ka=ia;La=Mc;break}}while(0);if((Ca|0)==73){Ca=0;ke=k[z>>2]|0;if(ke&1024){ge=k[F>>2]|0;Dd=ge>>>0>tb>>>0?tb:ge;if(!Dd){Kf=ge;Lf=tb;Mf=vb}else{he=k[A>>2]|0;if((he|0)!=0?(Pa=k[he+16>>2]|0,(Pa|0)!=0):0){Da=(k[he+20>>2]|0)-ge|0;ge=k[he+24>>2]|0;wr(Pa+Da|0,vb|0,((Da+Dd|0)>>>0>ge>>>0?ge-Da|0:Dd)|0)|0;Nf=k[z>>2]|0}else Nf=ke;if(Nf&512){ke=Xj(k[x>>2]|0,vb,Dd)|0;k[x>>2]=ke}ke=(k[F>>2]|0)-Dd|0;k[F>>2]=ke;Kf=ke;Lf=tb-Dd|0;Mf=vb+Dd|0}if(!Kf){Of=Lf;Pf=Mf}else{na=ia;oa=la;pa=sb;qa=Lf;ra=ub;sa=Mf;ta=n;ua=q;break}}else{Of=tb;Pf=vb}k[F>>2]=0;k[f>>2]=6;wb=sb;xb=Of;yb=ub;zb=Pf;Ca=83}else if((Ca|0)==218){Ca=0;if(!Nc){Qf=k[F>>2]|0;Rf=Oc;Sf=Pc;Tf=Qc;Uf=Rc}else{if(Oc>>>0<Nc>>>0){Dd=Oc;ke=Pc;Da=Qc;ge=Rc;while(1){if(!ke){na=ia;oa=la;pa=Dd;qa=0;ra=Da;sa=ge;ta=n;ua=Sc;break a}Pa=ke+-1|0;he=ge+1|0;Qa=(l[ge>>0]<<Dd)+Da|0;Sa=Dd+8|0;if(Sa>>>0<Nc>>>0){Dd=Sa;ke=Pa;Da=Qa;ge=he}else{Vf=Sa;Wf=Pa;Xf=Qa;Yf=he;break}}}else{Vf=Oc;Wf=Pc;Xf=Qc;Yf=Rc}ge=(k[F>>2]|0)+((1<<Nc)+-1&Xf)|0;k[F>>2]=ge;k[O>>2]=(k[O>>2]|0)+Nc;Qf=ge;Rf=Vf-Nc|0;Sf=Wf;Tf=Xf>>>Nc;Uf=Yf}k[Q>>2]=Qf;k[f>>2]=22;Tc=Rf;Uc=Sf;Vc=Tf;Wc=Uf;Xc=Sc;Ca=225}do if((Ca|0)==83){Ca=0;if(!(k[z>>2]&2048)){ge=k[A>>2]|0;if(!ge){Zf=xb;_f=zb}else{k[ge+28>>2]=0;Zf=xb;_f=zb}}else{if(!xb){na=ia;oa=la;pa=wb;qa=0;ra=yb;sa=zb;ta=n;ua=q;break a}else $f=0;while(1){ge=$f+1|0;Da=i[zb+$f>>0]|0;ke=k[A>>2]|0;if(((ke|0)!=0?(Dd=k[ke+28>>2]|0,(Dd|0)!=0):0)?(he=k[F>>2]|0,he>>>0<(k[ke+32>>2]|0)>>>0):0){k[F>>2]=he+1;i[Dd+he>>0]=Da}he=Da<<24>>24!=0;if(he&xb>>>0>ge>>>0)$f=ge;else{ag=ge;bg=he;break}}if(k[z>>2]&512){Ra=Xj(k[x>>2]|0,zb,ag)|0;k[x>>2]=Ra}Ra=xb-ag|0;fe=zb+ag|0;if(bg){na=ia;oa=la;pa=wb;qa=Ra;ra=yb;sa=fe;ta=n;ua=q;break a}else{Zf=Ra;_f=fe}}k[F>>2]=0;k[f>>2]=7;Ab=wb;Bb=Zf;Cb=yb;Db=_f;Ca=96}else if((Ca|0)==225){Ca=0;fe=(1<<k[M>>2])+-1|0;Ra=fe&Vc;Ta=k[L>>2]|0;Oa=i[Ta+(Ra<<2)+1>>0]|0;Ma=Oa&255;if(Ma>>>0>Tc>>>0){he=Tc;ge=Uc;Da=Vc;Dd=Wc;while(1){if(!ge){na=ia;oa=la;pa=he;qa=0;ra=Da;sa=Dd;ta=n;ua=Xc;break a}ke=ge+-1|0;Qa=Dd+1|0;Pa=(l[Dd>>0]<<he)+Da|0;Sa=he+8|0;Na=fe&Pa;Ed=i[Ta+(Na<<2)+1>>0]|0;Xb=Ed&255;if(Xb>>>0>Sa>>>0){he=Sa;ge=ke;Da=Pa;Dd=Qa}else{cg=Ed;dg=Xb;eg=Na;fg=Sa;gg=ke;hg=Pa;ig=Qa;break}}}else{cg=Oa;dg=Ma;eg=Ra;fg=Tc;gg=Uc;hg=Vc;ig=Wc}Dd=i[Ta+(eg<<2)>>0]|0;Da=j[Ta+(eg<<2)+2>>1]|0;ge=Dd&255;if(!(ge&240)){he=Da&65535;fe=(1<<dg+ge)+-1|0;ge=((hg&fe)>>>dg)+he|0;Qa=i[Ta+(ge<<2)+1>>0]|0;if(((Qa&255)+dg|0)>>>0>fg>>>0){Pa=fg;ke=gg;Sa=hg;Na=ig;while(1){if(!ke){na=ia;oa=la;pa=Pa;qa=0;ra=Sa;sa=Na;ta=n;ua=Xc;break a}Xb=ke+-1|0;Ed=Na+1|0;Fd=(l[Na>>0]<<Pa)+Sa|0;je=Pa+8|0;le=((Fd&fe)>>>dg)+he|0;me=i[Ta+(le<<2)+1>>0]|0;if(((me&255)+dg|0)>>>0>je>>>0){Pa=je;ke=Xb;Sa=Fd;Na=Ed}else{jg=le;kg=me;lg=je;mg=Xb;ng=Fd;og=Ed;break}}}else{jg=ge;kg=Qa;lg=fg;mg=gg;ng=hg;og=ig}Na=j[Ta+(jg<<2)+2>>1]|0;Sa=i[Ta+(jg<<2)>>0]|0;ke=(k[O>>2]|0)+dg|0;k[O>>2]=ke;pg=ke;qg=lg-dg|0;rg=mg;sg=Sa;tg=kg;ug=Na;vg=ng>>>dg;wg=og}else{pg=k[O>>2]|0;qg=fg;rg=gg;sg=Dd;tg=cg;ug=Da;vg=hg;wg=ig}Na=tg&255;Sa=vg>>>Na;ke=qg-Na|0;k[O>>2]=pg+Na;Na=sg&255;if(!(Na&64)){k[R>>2]=ug&65535;Pa=Na&15;k[P>>2]=Pa;k[f>>2]=23;Yc=Pa;Zc=ke;_c=rg;$c=Sa;ad=wg;bd=Xc;Ca=237;break}else{k[B>>2]=155807;k[f>>2]=29;Ea=ke;Fa=rg;Ga=Sa;Ha=la;Ia=wg;Ja=n;Ka=ia;La=Xc;break}}while(0);if((Ca|0)==96){Ca=0;if(!(k[z>>2]&4096)){Sa=k[A>>2]|0;if(!Sa){xg=Bb;yg=Db}else{k[Sa+36>>2]=0;xg=Bb;yg=Db}}else{if(!Bb){na=ia;oa=la;pa=Ab;qa=0;ra=Cb;sa=Db;ta=n;ua=q;break}else zg=0;while(1){Sa=zg+1|0;ke=i[Db+zg>>0]|0;Pa=k[A>>2]|0;if(((Pa|0)!=0?(Na=k[Pa+36>>2]|0,(Na|0)!=0):0)?(he=k[F>>2]|0,he>>>0<(k[Pa+40>>2]|0)>>>0):0){k[F>>2]=he+1;i[Na+he>>0]=ke}he=ke<<24>>24!=0;if(he&Bb>>>0>Sa>>>0)zg=Sa;else{Ag=Sa;Bg=he;break}}if(k[z>>2]&512){he=Xj(k[x>>2]|0,Db,Ag)|0;k[x>>2]=he}he=Bb-Ag|0;Sa=Db+Ag|0;if(Bg){na=ia;oa=la;pa=Ab;qa=he;ra=Cb;sa=Sa;ta=n;ua=q;break}else{xg=he;yg=Sa}}k[f>>2]=8;Eb=Ab;Fb=xg;Gb=Cb;Hb=yg;Ca=109}else if((Ca|0)==237){Ca=0;if(!Yc){Cg=Zc;Dg=_c;Eg=$c;Fg=ad}else{if(Zc>>>0<Yc>>>0){Sa=Zc;he=_c;ke=$c;Na=ad;while(1){if(!he){na=ia;oa=la;pa=Sa;qa=0;ra=ke;sa=Na;ta=n;ua=bd;break a}Pa=he+-1|0;fe=Na+1|0;Ra=(l[Na>>0]<<Sa)+ke|0;Ma=Sa+8|0;if(Ma>>>0<Yc>>>0){Sa=Ma;he=Pa;ke=Ra;Na=fe}else{Gg=Ma;Hg=Pa;Ig=Ra;Jg=fe;break}}}else{Gg=Zc;Hg=_c;Ig=$c;Jg=ad}k[R>>2]=(k[R>>2]|0)+((1<<Yc)+-1&Ig);k[O>>2]=(k[O>>2]|0)+Yc;Cg=Gg-Yc|0;Dg=Hg;Eg=Ig>>>Yc;Fg=Jg}k[f>>2]=24;cd=Cg;dd=Dg;ed=Eg;fd=Fg;gd=bd;Ca=243}do if((Ca|0)==109){Ca=0;Na=k[z>>2]|0;if(Na&512){if(Eb>>>0<16){ke=Eb;he=Fb;Sa=Gb;fe=Hb;while(1){if(!he){na=ia;oa=la;pa=ke;qa=0;ra=Sa;sa=fe;ta=n;ua=q;break a}Ra=he+-1|0;Pa=fe+1|0;Ma=(l[fe>>0]<<ke)+Sa|0;Oa=ke+8|0;if(Oa>>>0<16){ke=Oa;he=Ra;Sa=Ma;fe=Pa}else{Kg=Oa;Lg=Ra;Mg=Ma;Ng=Pa;break}}}else{Kg=Eb;Lg=Fb;Mg=Gb;Ng=Hb}if((Mg|0)==(k[x>>2]&65535|0)){Og=0;Pg=Lg;Qg=0;Rg=Ng}else{k[B>>2]=154587;k[f>>2]=29;Ea=Kg;Fa=Lg;Ga=Mg;Ha=la;Ia=Ng;Ja=n;Ka=ia;La=q;break}}else{Og=Eb;Pg=Fb;Qg=Gb;Rg=Hb}fe=k[A>>2]|0;if(fe){k[fe+44>>2]=Na>>>9&1;k[fe+48>>2]=1}fe=Xj(0,0,0)|0;k[x>>2]=fe;k[E>>2]=fe;k[f>>2]=11;Ea=Og;Fa=Pg;Ga=Qg;Ha=la;Ia=Rg;Ja=n;Ka=ia;La=q}else if((Ca|0)==243){Ca=0;if(!la){na=ia;oa=0;pa=cd;qa=dd;ra=ed;sa=fd;ta=n;ua=gd;break a}fe=n-la|0;Sa=k[R>>2]|0;if(Sa>>>0>fe>>>0){he=Sa-fe|0;if(he>>>0>(k[S>>2]|0)>>>0?(k[T>>2]|0)!=0:0){k[B>>2]=155777;k[f>>2]=29;Ea=cd;Fa=dd;Ga=ed;Ha=la;Ia=fd;Ja=n;Ka=ia;La=gd;break}fe=k[U>>2]|0;if(he>>>0>fe>>>0){ke=he-fe|0;Sg=ke;Tg=(k[V>>2]|0)+((k[W>>2]|0)-ke)|0}else{Sg=he;Tg=(k[V>>2]|0)+(fe-he)|0}he=k[F>>2]|0;Ug=he;Vg=Sg>>>0>he>>>0?he:Sg;Wg=Tg}else{he=k[F>>2]|0;Ug=he;Vg=he;Wg=ia+(0-Sa)|0}Sa=Vg>>>0>la>>>0?la:Vg;k[F>>2]=Ug-Sa;he=Vg>>>0>la>>>0?la:Vg;fe=Sa;ke=Wg;Da=ia;while(1){i[Da>>0]=i[ke>>0]|0;fe=fe+-1|0;if(!fe)break;else{ke=ke+1|0;Da=Da+1|0}}Da=la-Sa|0;ke=ia+he|0;if(!(k[F>>2]|0)){k[f>>2]=20;Ea=cd;Fa=dd;Ga=ed;Ha=Da;Ia=fd;Ja=n;Ka=ke;La=gd}else{Ea=cd;Fa=dd;Ga=ed;Ha=Da;Ia=fd;Ja=n;Ka=ke;La=gd}}while(0);ia=Ka;h=k[f>>2]|0;p=Ea;ja=Fa;ka=Ga;la=Ha;ma=Ia;n=Ja;q=La}if((Ca|0)==122){k[g>>2]=xd;k[o>>2]=Bd;k[a>>2]=Cd;k[s>>2]=zd;k[u>>2]=Ad;k[v>>2]=yd;e=2;r=c;return e|0}else if((Ca|0)==133){na=Zd;oa=be;pa=_d+-3|0;qa=$d;ra=ae>>>3;sa=ce;ta=de;ua=ee}else if((Ca|0)==280){k[f>>2]=28;na=Kd;oa=Od;pa=Ld;qa=Md;ra=Nd;sa=Pd;ta=Qd;ua=1}else if((Ca|0)==281){na=va;oa=za;pa=wa;qa=xa;ra=ya;sa=Aa;ta=Ba;ua=-3}else if((Ca|0)==295){e=-2;r=c;return e|0}else if((Ca|0)==296){r=c;return e|0}k[g>>2]=na;k[o>>2]=oa;k[a>>2]=sa;k[s>>2]=qa;k[u>>2]=ra;k[v>>2]=pa;if(!(k[W>>2]|0))if(((ta|0)!=(oa|0)?(W=k[f>>2]|0,W>>>0<29):0)?(b|0)!=4|W>>>0<26:0)Ca=286;else{Xg=qa;Yg=oa}else Ca=286;do if((Ca|0)==286){if(!(Jj(a,na,ta-oa|0)|0)){Xg=k[s>>2]|0;Yg=k[o>>2]|0;break}k[f>>2]=30;e=-4;r=c;return e|0}while(0);o=ta-Yg|0;s=a+8|0;k[s>>2]=t-Xg+(k[s>>2]|0);k[X>>2]=(k[X>>2]|0)+o;k[Y>>2]=(k[Y>>2]|0)+o;if((ta|0)!=(Yg|0)&(k[w>>2]|0)!=0){w=k[x>>2]|0;Y=(k[g>>2]|0)+(0-o)|0;if(!(k[z>>2]|0))Zg=Wj(w,Y,o)|0;else Zg=Xj(w,Y,o)|0;k[x>>2]=Zg;k[E>>2]=Zg}Zg=k[f>>2]|0;k[a+44>>2]=((k[I>>2]|0)!=0?64:0)+(k[v>>2]|0)+((Zg|0)==11?128:0)+((Zg|0)==19|(Zg|0)==14?256:0);e=(ua|0)==0&((b|0)==4|(t|0)==(Xg|0)&(ta|0)==(Yg|0))?-5:ua;r=c;return e|0}function Hj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a){b=-2;return b|0}c=a+28|0;d=k[c>>2]|0;if(!d){b=-2;return b|0}e=a+36|0;f=k[e>>2]|0;if(!f){b=-2;return b|0}g=k[d+52>>2]|0;h=a+40|0;if(!g){i=f;j=d}else{rb[f&31](k[h>>2]|0,g);i=k[e>>2]|0;j=k[c>>2]|0}rb[i&31](k[h>>2]|0,j);k[c>>2]=0;b=0;return b|0}function Ij(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;b=r;r=r+16|0;c=b;if(!a){d=-2;r=b;return d|0}e=k[a+28>>2]|0;if(!e){d=-2;r=b;return d|0}f=a+4|0;g=k[f>>2]|0;if((g|0)==0?(k[e+60>>2]|0)>>>0<8:0){d=-5;r=b;return d|0}if((k[e>>2]|0)==31){h=e+104|0;j=h;l=g;m=k[h>>2]|0}else{k[e>>2]=31;h=e+60|0;g=k[h>>2]|0;n=e+56|0;o=k[n>>2]<<(g&7);k[n>>2]=o;p=g&-8;k[h>>2]=p;if(p>>>0>7){g=7-p|0;q=(p+(g>>>0>4294967288?g:-8)|0)>>>3;g=q<<3;s=q+1|0;q=o;o=0;while(1){i[c+o>>0]=q;o=o+1|0;t=q>>>8;if((o|0)==(s|0)){u=t;break}else q=t}k[n>>2]=u;k[h>>2]=p+-8-g;g=e+104|0;k[g>>2]=0;p=0;h=0;while(1){u=i[c+h>>0]|0;if((u&255|0)==((p>>>0<2?0:255)|0))v=p+1|0;else v=u<<24>>24==0?4-p|0:0;h=h+1|0;if(!(h>>>0<s>>>0&v>>>0<4)){w=g;x=v;break}else p=v}}else{v=e+104|0;k[v>>2]=0;w=v;x=0}k[w>>2]=x;j=w;l=k[f>>2]|0;m=x}x=k[a>>2]|0;if((l|0)!=0&m>>>0<4){w=m;v=0;while(1){p=i[x+v>>0]|0;if((p&255|0)==((w>>>0<2?0:255)|0))y=w+1|0;else y=p<<24>>24==0?4-w|0:0;p=v+1|0;if(p>>>0<l>>>0&y>>>0<4){w=y;v=p}else{z=y;A=p;break}}}else{z=m;A=0}k[j>>2]=z;k[f>>2]=(k[f>>2]|0)-A;k[a>>2]=x+A;x=a+8|0;f=(k[x>>2]|0)+A|0;k[x>>2]=f;if((z|0)!=4){d=-3;r=b;return d|0}z=a+20|0;A=k[z>>2]|0;k[e+40>>2]=0;k[e+44>>2]=0;k[e+48>>2]=0;k[e+28>>2]=0;k[z>>2]=0;k[x>>2]=0;k[a+24>>2]=0;j=k[e+8>>2]|0;if(j)k[a+48>>2]=j&1;k[e+4>>2]=0;k[e+12>>2]=0;k[e+20>>2]=32768;k[e+32>>2]=0;k[e+56>>2]=0;k[e+60>>2]=0;j=e+1328|0;k[e+108>>2]=j;k[e+80>>2]=j;k[e+76>>2]=j;k[e+7104>>2]=1;k[e+7108>>2]=-1;k[x>>2]=f;k[z>>2]=A;k[e>>2]=11;d=0;r=b;return d|0}function Jj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;d=k[a+28>>2]|0;e=d+52|0;f=k[e>>2]|0;if(!f){g=nb[k[a+32>>2]&63](k[a+40>>2]|0,1<<k[d+36>>2],1)|0;k[e>>2]=g;if(!g){h=1;return h|0}else i=g}else i=f;f=d+40|0;g=k[f>>2]|0;if(!g){a=1<<k[d+36>>2];k[f>>2]=a;k[d+48>>2]=0;k[d+44>>2]=0;j=a}else j=g;if(j>>>0<=c>>>0){wr(i|0,b+(0-j)|0,j|0)|0;k[d+48>>2]=0;k[d+44>>2]=k[f>>2];h=0;return h|0}g=d+48|0;a=k[g>>2]|0;l=j-a|0;j=l>>>0>c>>>0?c:l;wr(i+a|0,b+(0-c)|0,j|0)|0;a=c-j|0;if((j|0)!=(c|0)){wr(k[e>>2]|0,b+(0-a)|0,a|0)|0;k[g>>2]=a;k[d+44>>2]=k[f>>2];h=0;return h|0}a=(k[g>>2]|0)+c|0;b=k[f>>2]|0;k[g>>2]=(a|0)==(b|0)?0:a;a=d+44|0;d=k[a>>2]|0;if(d>>>0>=b>>>0){h=0;return h|0}k[a>>2]=d+c;h=0;return h|0}function Kj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,l=0,n=0,o=0,p=0,q=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;g=r;r=r+64|0;h=g+32|0;l=g;n=h;o=n+32|0;do{j[n>>1]=0;n=n+2|0}while((n|0)<(o|0));n=(c|0)==0;if(!n){o=0;do{p=h+(m[b+(o<<1)>>1]<<1)|0;j[p>>1]=(j[p>>1]|0)+1<<16>>16;o=o+1|0}while((o|0)!=(c|0));o=j[h+30>>1]|0;p=k[e>>2]|0;if(!(o<<16>>16)){q=p;s=5}else{t=p;u=o;v=15;s=6}}else{q=k[e>>2]|0;s=5}do if((s|0)==5)if(!(j[h+28>>1]|0))if(!(j[h+26>>1]|0))if(!(j[h+24>>1]|0))if(!(j[h+22>>1]|0))if(!(j[h+20>>1]|0))if(!(j[h+18>>1]|0))if(!(j[h+16>>1]|0))if(!(j[h+14>>1]|0))if(!(j[h+12>>1]|0))if(!(j[h+10>>1]|0))if(!(j[h+8>>1]|0))if(!(j[h+6>>1]|0))if(!(j[h+4>>1]|0)){if(j[h+2>>1]|0){w=0;x=q>>>0>1?1:q;y=1;z=1;break}o=k[d>>2]|0;k[d>>2]=o+4;i[o>>0]=64;i[o+1>>0]=1;j[o+2>>1]=0;o=k[d>>2]|0;k[d>>2]=o+4;i[o>>0]=64;i[o+1>>0]=1;j[o+2>>1]=0;k[e>>2]=1;A=0;r=g;return A|0}else{t=q;u=0;v=2;s=6}else{t=q;u=0;v=3;s=6}else{t=q;u=0;v=4;s=6}else{t=q;u=0;v=5;s=6}else{t=q;u=0;v=6;s=6}else{t=q;u=0;v=7;s=6}else{t=q;u=0;v=8;s=6}else{t=q;u=0;v=9;s=6}else{t=q;u=0;v=10;s=6}else{t=q;u=0;v=11;s=6}else{t=q;u=0;v=12;s=6}else{t=q;u=0;v=13;s=6}else{t=q;u=0;v=14;s=6}while(0);a:do if((s|0)==6){q=t>>>0>v>>>0?v:t;o=1;while(1){if(j[h+(o<<1)>>1]|0){w=u;x=q;y=v;z=o;break a}p=o+1|0;if(p>>>0<v>>>0)o=p;else{w=u;x=q;y=v;z=p;break}}}while(0);v=x>>>0<z>>>0?z:x;x=j[h+2>>1]|0;u=2-(x&65535)|0;if((u|0)<0){A=-1;r=g;return A|0}t=(u<<1)-(m[h+4>>1]|0)|0;if((t|0)<0){A=-1;r=g;return A|0}u=(t<<1)-(m[h+6>>1]|0)|0;if((u|0)<0){A=-1;r=g;return A|0}t=(u<<1)-(m[h+8>>1]|0)|0;if((t|0)<0){A=-1;r=g;return A|0}u=(t<<1)-(m[h+10>>1]|0)|0;if((u|0)<0){A=-1;r=g;return A|0}t=(u<<1)-(m[h+12>>1]|0)|0;if((t|0)<0){A=-1;r=g;return A|0}u=(t<<1)-(m[h+14>>1]|0)|0;if((u|0)<0){A=-1;r=g;return A|0}t=(u<<1)-(m[h+16>>1]|0)|0;if((t|0)<0){A=-1;r=g;return A|0}u=(t<<1)-(m[h+18>>1]|0)|0;if((u|0)<0){A=-1;r=g;return A|0}t=(u<<1)-(m[h+20>>1]|0)|0;if((t|0)<0){A=-1;r=g;return A|0}u=(t<<1)-(m[h+22>>1]|0)|0;if((u|0)<0){A=-1;r=g;return A|0}t=(u<<1)-(m[h+24>>1]|0)|0;if((t|0)<0){A=-1;r=g;return A|0}u=(t<<1)-(m[h+26>>1]|0)|0;if((u|0)<0){A=-1;r=g;return A|0}t=(u<<1)-(m[h+28>>1]|0)|0;if((t|0)<0){A=-1;r=g;return A|0}u=(t<<1)-(w&65535)|0;if((u|0)<0){A=-1;r=g;return A|0}if((u|0)>0?(a|0)==0|(y|0)!=1:0){A=-1;r=g;return A|0}j[l+2>>1]=0;j[l+4>>1]=x;u=(m[h+4>>1]|0)+(x&65535)|0;j[l+6>>1]=u;x=(m[h+6>>1]|0)+(u&65535)|0;j[l+8>>1]=x;u=(m[h+8>>1]|0)+(x&65535)|0;j[l+10>>1]=u;x=(m[h+10>>1]|0)+(u&65535)|0;j[l+12>>1]=x;u=(m[h+12>>1]|0)+(x&65535)|0;j[l+14>>1]=u;x=(m[h+14>>1]|0)+(u&65535)|0;j[l+16>>1]=x;u=(m[h+16>>1]|0)+(x&65535)|0;j[l+18>>1]=u;x=(m[h+18>>1]|0)+(u&65535)|0;j[l+20>>1]=x;u=(m[h+20>>1]|0)+(x&65535)|0;j[l+22>>1]=u;x=(m[h+22>>1]|0)+(u&65535)|0;j[l+24>>1]=x;u=(m[h+24>>1]|0)+(x&65535)|0;j[l+26>>1]=u;x=(m[h+26>>1]|0)+(u&65535)|0;j[l+28>>1]=x;j[l+30>>1]=(m[h+28>>1]|0)+(x&65535);if(!n){n=0;do{x=j[b+(n<<1)>>1]|0;if(x<<16>>16){u=l+((x&65535)<<1)|0;x=j[u>>1]|0;j[u>>1]=x+1<<16>>16;j[f+((x&65535)<<1)>>1]=n}n=n+1|0}while((n|0)!=(c|0))}switch(a|0){case 0:{B=0;C=0;D=f;E=19;F=f;break}case 1:{if(v>>>0>9){A=1;r=g;return A|0}else{B=0;C=1;D=126834;E=256;F=126960}break}default:{c=(a|0)==2;if(c&v>>>0>9){A=1;r=g;return A|0}else{B=c;C=0;D=127284;E=-1;F=127410}}}c=1<<v;a=c+-1|0;n=v&255;l=v;x=0;u=0;w=z;z=-1;t=k[d>>2]|0;q=0;o=c;b:while(1){c=1<<l;p=u;G=w;H=q;while(1){I=G-x|0;J=I&255;K=j[f+(H<<1)>>1]|0;L=K&65535;do if((L|0)<(E|0)){M=0;N=K}else{if((L|0)<=(E|0)){M=96;N=0;break}M=j[F+(L<<1)>>1]&255;N=j[D+(L<<1)>>1]|0}while(0);L=1<<I;K=p>>>x;O=c;do{P=O;O=O-L|0;Q=O+K|0;i[t+(Q<<2)>>0]=M;i[t+(Q<<2)+1>>0]=J;j[t+(Q<<2)+2>>1]=N}while((P|0)!=(L|0));L=1<<G+-1;while(1)if(!(L&p)){R=L;break}else L=L>>>1;if(!R)S=0;else S=(R+-1&p)+R|0;L=H+1|0;K=h+(G<<1)|0;O=(j[K>>1]|0)+-1<<16>>16;j[K>>1]=O;if(!(O<<16>>16)){if((G|0)==(y|0)){T=J;U=S;V=t;W=o;break b}X=m[b+(m[f+(L<<1)>>1]<<1)>>1]|0}else X=G;if(X>>>0<=v>>>0){p=S;G=X;H=L;continue}O=S&a;if((O|0)==(z|0)){p=S;G=X;H=L}else{Y=L;Z=O;_=S;$=X;break}}H=(x|0)==0?v:x;G=t+(c<<2)|0;p=$-H|0;c:do if($>>>0<y>>>0){O=$;L=p;K=1<<p;while(1){I=K-(m[h+(O<<1)>>1]|0)|0;if((I|0)<1){aa=L;break c}P=L+1|0;O=P+H|0;if(O>>>0>=y>>>0){aa=P;break}else{L=P;K=I<<1}}}else aa=p;while(0);p=(1<<aa)+o|0;if(C&p>>>0>852|B&p>>>0>592){A=1;s=44;break}c=k[d>>2]|0;i[c+(Z<<2)>>0]=aa;i[c+(Z<<2)+1>>0]=n;j[c+(Z<<2)+2>>1]=(G-c|0)>>>2;l=aa;x=H;u=_;w=$;z=Z;t=G;q=Y;o=p}if((s|0)==44){r=g;return A|0}if(U){i[V+(U<<2)>>0]=64;i[V+(U<<2)+1>>0]=T;j[V+(U<<2)+2>>1]=0}k[d>>2]=(k[d>>2]|0)+(W<<2);k[e>>2]=v;A=0;r=g;return A|0}function Lj(a){a=a|0;k[a+2840>>2]=a+148;k[a+2848>>2]=110108;k[a+2852>>2]=a+2440;k[a+2860>>2]=110128;k[a+2864>>2]=a+2684;k[a+2872>>2]=110148;j[a+5816>>1]=0;k[a+5820>>2]=0;Qj(a);return}function Mj(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,l=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=a+5820|0;f=k[e>>2]|0;g=d&65535;d=a+5816|0;h=m[d>>1]|0|g<<f;j[d>>1]=h;if((f|0)>13){l=a+20|0;n=k[l>>2]|0;k[l>>2]=n+1;o=a+8|0;i[(k[o>>2]|0)+n>>0]=h;n=(m[d>>1]|0)>>>8&255;p=k[l>>2]|0;k[l>>2]=p+1;i[(k[o>>2]|0)+p>>0]=n;n=k[e>>2]|0;p=g>>>(16-n|0);j[d>>1]=p;q=p;r=n+-13|0}else{q=h;r=f+3|0}f=q&255;k[e>>2]=r;do if((r|0)<=8){q=a+20|0;if((r|0)>0){h=k[q>>2]|0;k[q>>2]=h+1;n=a+8|0;i[(k[n>>2]|0)+h>>0]=f;s=q;t=n;break}else{s=q;t=a+8|0;break}}else{q=a+20|0;n=k[q>>2]|0;k[q>>2]=n+1;h=a+8|0;i[(k[h>>2]|0)+n>>0]=f;n=(m[d>>1]|0)>>>8&255;p=k[q>>2]|0;k[q>>2]=p+1;i[(k[h>>2]|0)+p>>0]=n;s=q;t=h}while(0);j[d>>1]=0;k[e>>2]=0;e=k[s>>2]|0;k[s>>2]=e+1;i[(k[t>>2]|0)+e>>0]=c;e=k[s>>2]|0;k[s>>2]=e+1;i[(k[t>>2]|0)+e>>0]=c>>>8;e=c&65535^65535;d=k[s>>2]|0;k[s>>2]=d+1;i[(k[t>>2]|0)+d>>0]=e;d=k[s>>2]|0;k[s>>2]=d+1;i[(k[t>>2]|0)+d>>0]=e>>>8;if(!c)return;else{u=c;v=b}while(1){u=u+-1|0;b=i[v>>0]|0;c=k[s>>2]|0;k[s>>2]=c+1;i[(k[t>>2]|0)+c>>0]=b;if(!u)break;else v=v+1|0}return}function Nj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=a+5820|0;c=k[b>>2]|0;if((c|0)==16){d=a+5816|0;e=j[d>>1]&255;f=a+20|0;g=k[f>>2]|0;k[f>>2]=g+1;h=a+8|0;i[(k[h>>2]|0)+g>>0]=e;e=(m[d>>1]|0)>>>8&255;g=k[f>>2]|0;k[f>>2]=g+1;i[(k[h>>2]|0)+g>>0]=e;j[d>>1]=0;k[b>>2]=0;return}if((c|0)<=7)return;c=a+5816|0;d=j[c>>1]&255;e=a+20|0;g=k[e>>2]|0;k[e>>2]=g+1;i[(k[a+8>>2]|0)+g>>0]=d;j[c>>1]=(m[c>>1]|0)>>>8;k[b>>2]=(k[b>>2]|0)+-8;return}function Oj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,p=0,q=0;b=a+5820|0;c=k[b>>2]|0;d=a+5816|0;e=m[d>>1]|0|2<<c;j[d>>1]=e;if((c|0)>13){f=a+20|0;g=k[f>>2]|0;k[f>>2]=g+1;h=a+8|0;i[(k[h>>2]|0)+g>>0]=e;g=(m[d>>1]|0)>>>8&255;l=k[f>>2]|0;k[f>>2]=l+1;i[(k[h>>2]|0)+l>>0]=g;g=k[b>>2]|0;l=2>>>(16-g|0);j[d>>1]=l;n=l;o=g+-13|0}else{n=e;o=c+3|0}c=n&255;k[b>>2]=o;if((o|0)>9){n=a+20|0;e=k[n>>2]|0;k[n>>2]=e+1;g=a+8|0;i[(k[g>>2]|0)+e>>0]=c;e=(m[d>>1]|0)>>>8&255;l=k[n>>2]|0;k[n>>2]=l+1;i[(k[g>>2]|0)+l>>0]=e;j[d>>1]=0;p=0;q=(k[b>>2]|0)+-9|0}else{p=c;q=o+7|0}k[b>>2]=q;if((q|0)==16){o=a+20|0;c=k[o>>2]|0;k[o>>2]=c+1;e=a+8|0;i[(k[e>>2]|0)+c>>0]=p;c=(m[d>>1]|0)>>>8&255;l=k[o>>2]|0;k[o>>2]=l+1;i[(k[e>>2]|0)+l>>0]=c;j[d>>1]=0;k[b>>2]=0;return}if((q|0)<=7)return;q=a+20|0;c=k[q>>2]|0;k[q>>2]=c+1;i[(k[a+8>>2]|0)+c>>0]=p;j[d>>1]=(m[d>>1]|0)>>>8;k[b>>2]=(k[b>>2]|0)+-8;return}function Pj(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,n=0,o=0,p=0,q=0,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;if((k[a+132>>2]|0)>0){e=(k[a>>2]|0)+44|0;if((k[e>>2]|0)==2){f=-201342849;g=0;while(1){if((f&1|0)!=0?(j[a+148+(g<<2)>>1]|0)!=0:0){h=0;break}g=g+1|0;if((g|0)>=32){n=6;break}else f=f>>>1}a:do if((n|0)==6)if(((j[a+184>>1]|0)==0?(j[a+188>>1]|0)==0:0)?(j[a+200>>1]|0)==0:0){f=32;while(1){if(j[a+148+(f<<2)>>1]|0){h=1;break a}f=f+1|0;if((f|0)>=256){h=0;break}}}else h=1;while(0);k[e>>2]=h}Rj(a,a+2840|0);Rj(a,a+2852|0);h=k[a+2844>>2]|0;e=j[a+150>>1]|0;n=e<<16>>16==0;j[a+148+(h+1<<2)+2>>1]=-1;f=a+2752|0;g=a+2756|0;o=a+2748|0;p=n?138:7;q=n?3:4;n=0;r=e&65535;e=-1;b:while(1){s=0;t=n;while(1){if((t|0)>(h|0))break b;u=t+1|0;v=j[a+148+(u<<2)+2>>1]|0;w=v&65535;x=s+1|0;y=(r|0)==(w|0);if((x|0)<(p|0)&y){s=x;t=u}else{z=u;A=v;B=w;C=x;D=y;break}}do if((C|0)>=(q|0))if(!r)if((C|0)<11){j[f>>1]=(j[f>>1]|0)+1<<16>>16;break}else{j[g>>1]=(j[g>>1]|0)+1<<16>>16;break}else{if((r|0)!=(e|0)){t=a+2684+(r<<2)|0;j[t>>1]=(j[t>>1]|0)+1<<16>>16}j[o>>1]=(j[o>>1]|0)+1<<16>>16;break}else{t=a+2684+(r<<2)|0;j[t>>1]=(m[t>>1]|0)+C}while(0);t=A<<16>>16==0;s=r;p=t?138:D?6:7;q=t|D?3:4;n=z;r=B;e=s}e=k[a+2856>>2]|0;B=j[a+2442>>1]|0;r=B<<16>>16==0;j[a+2440+(e+1<<2)+2>>1]=-1;z=r?138:7;n=r?3:4;r=0;D=B&65535;B=-1;c:while(1){q=0;p=r;while(1){if((p|0)>(e|0))break c;A=p+1|0;C=j[a+2440+(A<<2)+2>>1]|0;h=C&65535;s=q+1|0;t=(D|0)==(h|0);if((s|0)<(z|0)&t){q=s;p=A}else{E=A;F=C;G=h;H=s;I=t;break}}do if((H|0)>=(n|0))if(!D)if((H|0)<11){j[f>>1]=(j[f>>1]|0)+1<<16>>16;break}else{j[g>>1]=(j[g>>1]|0)+1<<16>>16;break}else{if((D|0)!=(B|0)){p=a+2684+(D<<2)|0;j[p>>1]=(j[p>>1]|0)+1<<16>>16}j[o>>1]=(j[o>>1]|0)+1<<16>>16;break}else{p=a+2684+(D<<2)|0;j[p>>1]=(m[p>>1]|0)+H}while(0);p=F<<16>>16==0;q=D;z=p?138:I?6:7;n=p|I?3:4;r=E;D=G;B=q}Rj(a,a+2864|0);if(!(j[a+2746>>1]|0))if(!(j[a+2690>>1]|0))if(!(j[a+2742>>1]|0))if(!(j[a+2694>>1]|0))if(!(j[a+2738>>1]|0))if(!(j[a+2698>>1]|0))if(!(j[a+2734>>1]|0))if(!(j[a+2702>>1]|0))if(!(j[a+2730>>1]|0))if(!(j[a+2706>>1]|0))if(!(j[a+2726>>1]|0))if(!(j[a+2710>>1]|0))if(!(j[a+2722>>1]|0))if(!(j[a+2714>>1]|0))if(!(j[a+2718>>1]|0))J=(j[a+2686>>1]|0)==0?2:3;else J=4;else J=5;else J=6;else J=7;else J=8;else J=9;else J=10;else J=11;else J=12;else J=13;else J=14;else J=15;else J=16;else J=17;else J=18;B=a+5800|0;G=(J*3|0)+17+(k[B>>2]|0)|0;k[B>>2]=G;B=(G+10|0)>>>3;G=((k[a+5804>>2]|0)+10|0)>>>3;K=J;L=G>>>0>B>>>0?B:G;M=G}else{G=c+5|0;K=0;L=G;M=G}do if((b|0)!=0&(c+4|0)>>>0<=L>>>0)Mj(a,b,c,d);else{G=a+5820|0;B=k[G>>2]|0;J=(B|0)>13;if((M|0)==(L|0)?1:(k[a+136>>2]|0)==4){D=d+2&65535;E=a+5816|0;r=m[E>>1]|D<<B;j[E>>1]=r;if(J){I=a+20|0;n=k[I>>2]|0;k[I>>2]=n+1;z=a+8|0;i[(k[z>>2]|0)+n>>0]=r;r=(m[E>>1]|0)>>>8&255;n=k[I>>2]|0;k[I>>2]=n+1;i[(k[z>>2]|0)+n>>0]=r;r=k[G>>2]|0;j[E>>1]=D>>>(16-r|0);N=r+-13|0}else N=B+3|0;k[G>>2]=N;Sj(a,127536,128688);break}r=d+4&65535;D=a+5816|0;E=m[D>>1]|r<<B;j[D>>1]=E;if(J){J=a+20|0;n=k[J>>2]|0;k[J>>2]=n+1;z=a+8|0;i[(k[z>>2]|0)+n>>0]=E;n=(m[D>>1]|0)>>>8&255;I=k[J>>2]|0;k[J>>2]=I+1;i[(k[z>>2]|0)+I>>0]=n;n=k[G>>2]|0;I=r>>>(16-n|0);j[D>>1]=I;O=I;P=n+-13|0}else{O=E;P=B+3|0}k[G>>2]=P;B=k[a+2844>>2]|0;E=k[a+2856>>2]|0;n=B+65280&65535;I=O&65535|n<<P;j[D>>1]=I;if((P|0)>11){r=a+20|0;z=k[r>>2]|0;k[r>>2]=z+1;J=a+8|0;i[(k[J>>2]|0)+z>>0]=I;z=(m[D>>1]|0)>>>8&255;F=k[r>>2]|0;k[r>>2]=F+1;i[(k[J>>2]|0)+F>>0]=z;z=k[G>>2]|0;F=n>>>(16-z|0);j[D>>1]=F;Q=z+-11|0;R=F}else{Q=P+5|0;R=I}k[G>>2]=Q;I=E&65535;F=I<<Q|R&65535;j[D>>1]=F;if((Q|0)>11){z=a+20|0;n=k[z>>2]|0;k[z>>2]=n+1;J=a+8|0;i[(k[J>>2]|0)+n>>0]=F;n=(m[D>>1]|0)>>>8&255;r=k[z>>2]|0;k[z>>2]=r+1;i[(k[J>>2]|0)+r>>0]=n;n=k[G>>2]|0;r=I>>>(16-n|0);j[D>>1]=r;S=n+-11|0;T=r}else{S=Q+5|0;T=F}k[G>>2]=S;F=K+65533&65535;r=F<<S|T&65535;j[D>>1]=r;if((S|0)>12){n=a+20|0;I=k[n>>2]|0;k[n>>2]=I+1;J=a+8|0;i[(k[J>>2]|0)+I>>0]=r;I=(m[D>>1]|0)>>>8&255;z=k[n>>2]|0;k[n>>2]=z+1;i[(k[J>>2]|0)+z>>0]=I;I=k[G>>2]|0;z=F>>>(16-I|0);j[D>>1]=z;U=J;V=n;W=z;X=I+-12|0}else{U=a+8|0;V=a+20|0;W=r;X=S+4|0}k[G>>2]=X;r=X;I=W;z=0;while(1){n=m[a+2684+(l[155641+z>>0]<<2)+2>>1]|0;J=n<<r|I&65535;j[D>>1]=J;if((r|0)>13){F=k[V>>2]|0;k[V>>2]=F+1;i[(k[U>>2]|0)+F>>0]=J;F=(m[D>>1]|0)>>>8&255;H=k[V>>2]|0;k[V>>2]=H+1;i[(k[U>>2]|0)+H>>0]=F;F=k[G>>2]|0;H=n>>>(16-F|0);j[D>>1]=H;Y=H;Z=F+-13|0}else{Y=J;Z=r+3|0}k[G>>2]=Z;if((z|0)==(K|0))break;else{r=Z;I=Y;z=z+1|0}}z=a+148|0;Tj(a,z,B);I=a+2440|0;Tj(a,I,E);Sj(a,z,I)}while(0);Qj(a);if(!d)return;d=a+5820|0;Y=k[d>>2]|0;if((Y|0)<=8){Z=a+5816|0;if((Y|0)>0){Y=j[Z>>1]&255;K=a+20|0;U=k[K>>2]|0;k[K>>2]=U+1;i[(k[a+8>>2]|0)+U>>0]=Y;_=Z}else _=Z}else{Z=a+5816|0;Y=j[Z>>1]&255;U=a+20|0;K=k[U>>2]|0;k[U>>2]=K+1;V=a+8|0;i[(k[V>>2]|0)+K>>0]=Y;Y=(m[Z>>1]|0)>>>8&255;K=k[U>>2]|0;k[U>>2]=K+1;i[(k[V>>2]|0)+K>>0]=Y;_=Z}j[_>>1]=0;k[d>>2]=0;return}function Qj(a){a=a|0;var b=0;b=0;do{j[a+148+(b<<2)>>1]=0;b=b+1|0}while((b|0)!=286);j[a+2440>>1]=0;j[a+2444>>1]=0;j[a+2448>>1]=0;j[a+2452>>1]=0;j[a+2456>>1]=0;j[a+2460>>1]=0;j[a+2464>>1]=0;j[a+2468>>1]=0;j[a+2472>>1]=0;j[a+2476>>1]=0;j[a+2480>>1]=0;j[a+2484>>1]=0;j[a+2488>>1]=0;j[a+2492>>1]=0;j[a+2496>>1]=0;j[a+2500>>1]=0;j[a+2504>>1]=0;j[a+2508>>1]=0;j[a+2512>>1]=0;j[a+2516>>1]=0;j[a+2520>>1]=0;j[a+2524>>1]=0;j[a+2528>>1]=0;j[a+2532>>1]=0;j[a+2536>>1]=0;j[a+2540>>1]=0;j[a+2544>>1]=0;j[a+2548>>1]=0;j[a+2552>>1]=0;j[a+2556>>1]=0;j[a+2684>>1]=0;j[a+2688>>1]=0;j[a+2692>>1]=0;j[a+2696>>1]=0;j[a+2700>>1]=0;j[a+2704>>1]=0;j[a+2708>>1]=0;j[a+2712>>1]=0;j[a+2716>>1]=0;j[a+2720>>1]=0;j[a+2724>>1]=0;j[a+2728>>1]=0;j[a+2732>>1]=0;j[a+2736>>1]=0;j[a+2740>>1]=0;j[a+2744>>1]=0;j[a+2748>>1]=0;j[a+2752>>1]=0;j[a+2756>>1]=0;j[a+1172>>1]=1;k[a+5804>>2]=0;k[a+5800>>2]=0;k[a+5808>>2]=0;k[a+5792>>2]=0;return}function Rj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=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;c=r;r=r+32|0;d=c;e=k[b>>2]|0;f=b+8|0;g=k[f>>2]|0;h=k[g>>2]|0;n=k[g+12>>2]|0;g=a+5200|0;k[g>>2]=0;o=a+5204|0;k[o>>2]=573;if((n|0)>0){p=-1;q=0;while(1){if(!(j[e+(q<<2)>>1]|0)){j[e+(q<<2)+2>>1]=0;s=p}else{t=(k[g>>2]|0)+1|0;k[g>>2]=t;k[a+2908+(t<<2)>>2]=q;i[a+5208+q>>0]=0;s=q}q=q+1|0;if((q|0)==(n|0)){u=s;break}else p=s}s=k[g>>2]|0;if((s|0)<2){v=s;w=u;x=3}else{y=s;z=u}}else{v=0;w=-1;x=3}if((x|0)==3){x=a+5800|0;u=a+5804|0;if(!h){s=v;p=w;while(1){q=(p|0)<2;t=p+1|0;A=q?t:p;B=q?t:0;t=s+1|0;k[g>>2]=t;k[a+2908+(t<<2)>>2]=B;j[e+(B<<2)>>1]=1;i[a+5208+B>>0]=0;k[x>>2]=(k[x>>2]|0)+-1;B=k[g>>2]|0;if((B|0)<2){s=B;p=A}else{y=B;z=A;break}}}else{p=v;v=w;while(1){w=(v|0)<2;s=v+1|0;A=w?s:v;B=w?s:0;s=p+1|0;k[g>>2]=s;k[a+2908+(s<<2)>>2]=B;j[e+(B<<2)>>1]=1;i[a+5208+B>>0]=0;k[x>>2]=(k[x>>2]|0)+-1;k[u>>2]=(k[u>>2]|0)-(m[h+(B<<2)+2>>1]|0);B=k[g>>2]|0;if((B|0)<2){p=B;v=A}else{y=B;z=A;break}}}}v=b+4|0;k[v>>2]=z;p=y;h=(y|0)/2|0;while(1){y=k[a+2908+(h<<2)>>2]|0;u=a+5208+y|0;x=h<<1;a:do if((x|0)>(p|0))C=h;else{A=e+(y<<2)|0;B=h;s=p;w=x;while(1){do if((w|0)<(s|0)){t=w|1;q=k[a+2908+(t<<2)>>2]|0;D=j[e+(q<<2)>>1]|0;E=k[a+2908+(w<<2)>>2]|0;F=j[e+(E<<2)>>1]|0;if((D&65535)>=(F&65535)){if(D<<16>>16!=F<<16>>16){G=w;break}if((l[a+5208+q>>0]|0)>(l[a+5208+E>>0]|0)){G=w;break}}G=t}else G=w;while(0);t=j[A>>1]|0;E=k[a+2908+(G<<2)>>2]|0;q=j[e+(E<<2)>>1]|0;if((t&65535)<(q&65535)){C=B;break a}if(t<<16>>16==q<<16>>16?(l[u>>0]|0)<=(l[a+5208+E>>0]|0):0){C=B;break a}k[a+2908+(B<<2)>>2]=E;w=G<<1;s=k[g>>2]|0;if((w|0)>(s|0)){C=G;break}else B=G}}while(0);k[a+2908+(C<<2)>>2]=y;if((h|0)<=1)break;p=k[g>>2]|0;h=h+-1|0}h=a+2912|0;p=k[g>>2]|0;C=n;do{n=k[h>>2]|0;G=p+-1|0;k[g>>2]=G;u=k[a+2908+(p<<2)>>2]|0;k[h>>2]=u;x=a+5208+u|0;b:do if((p|0)<3)H=1;else{B=e+(u<<2)|0;s=1;w=G;A=2;while(1){do if((A|0)<(w|0)){E=A|1;q=k[a+2908+(E<<2)>>2]|0;t=j[e+(q<<2)>>1]|0;F=k[a+2908+(A<<2)>>2]|0;D=j[e+(F<<2)>>1]|0;if((t&65535)>=(D&65535)){if(t<<16>>16!=D<<16>>16){I=A;break}if((l[a+5208+q>>0]|0)>(l[a+5208+F>>0]|0)){I=A;break}}I=E}else I=A;while(0);E=j[B>>1]|0;F=k[a+2908+(I<<2)>>2]|0;q=j[e+(F<<2)>>1]|0;if((E&65535)<(q&65535)){H=s;break b}if(E<<16>>16==q<<16>>16?(l[x>>0]|0)<=(l[a+5208+F>>0]|0):0){H=s;break b}k[a+2908+(s<<2)>>2]=F;A=I<<1;w=k[g>>2]|0;if((A|0)>(w|0)){H=I;break}else s=I}}while(0);k[a+2908+(H<<2)>>2]=u;x=k[h>>2]|0;G=(k[o>>2]|0)+-1|0;k[o>>2]=G;k[a+2908+(G<<2)>>2]=n;G=(k[o>>2]|0)+-1|0;k[o>>2]=G;k[a+2908+(G<<2)>>2]=x;G=e+(C<<2)|0;j[G>>1]=(m[e+(x<<2)>>1]|0)+(m[e+(n<<2)>>1]|0);y=i[a+5208+n>>0]|0;s=i[a+5208+x>>0]|0;w=a+5208+C|0;i[w>>0]=(((y&255)<(s&255)?s:y)&255)+1;y=C&65535;j[e+(x<<2)+2>>1]=y;j[e+(n<<2)+2>>1]=y;k[h>>2]=C;y=k[g>>2]|0;c:do if((y|0)<2)J=1;else{x=1;s=y;A=2;while(1){do if((A|0)<(s|0)){B=A|1;F=k[a+2908+(B<<2)>>2]|0;q=j[e+(F<<2)>>1]|0;E=k[a+2908+(A<<2)>>2]|0;D=j[e+(E<<2)>>1]|0;if((q&65535)>=(D&65535)){if(q<<16>>16!=D<<16>>16){K=A;break}if((l[a+5208+F>>0]|0)>(l[a+5208+E>>0]|0)){K=A;break}}K=B}else K=A;while(0);B=j[G>>1]|0;E=k[a+2908+(K<<2)>>2]|0;F=j[e+(E<<2)>>1]|0;if((B&65535)<(F&65535)){J=x;break c}if(B<<16>>16==F<<16>>16?(l[w>>0]|0)<=(l[a+5208+E>>0]|0):0){J=x;break c}k[a+2908+(x<<2)>>2]=E;A=K<<1;s=k[g>>2]|0;if((A|0)>(s|0)){J=K;break}else x=K}}while(0);k[a+2908+(J<<2)>>2]=C;C=C+1|0;p=k[g>>2]|0}while((p|0)>1);p=k[h>>2]|0;h=(k[o>>2]|0)+-1|0;k[o>>2]=h;k[a+2908+(h<<2)>>2]=p;p=k[b>>2]|0;b=k[v>>2]|0;v=k[f>>2]|0;f=k[v>>2]|0;h=k[v+4>>2]|0;g=k[v+8>>2]|0;C=k[v+16>>2]|0;v=a+2876|0;J=v+32|0;do{j[v>>1]=0;v=v+2|0}while((v|0)<(J|0));v=k[o>>2]|0;j[p+(k[a+2908+(v<<2)>>2]<<2)+2>>1]=0;o=v+1|0;d:do if((o|0)<573){v=a+5800|0;J=a+5804|0;if(!f){K=o;H=0;while(1){I=k[a+2908+(K<<2)>>2]|0;w=p+(I<<2)+2|0;G=m[p+(m[w>>1]<<2)+2>>1]|0;y=(G|0)<(C|0);n=y?G+1|0:C;G=(y&1^1)+H|0;j[w>>1]=n;if((I|0)<=(b|0)){w=a+2876+(n<<1)|0;j[w>>1]=(j[w>>1]|0)+1<<16>>16;if((I|0)<(g|0))L=0;else L=k[h+(I-g<<2)>>2]|0;w=ha(m[p+(I<<2)>>1]|0,L+n|0)|0;k[v>>2]=w+(k[v>>2]|0)}K=K+1|0;if((K|0)==573){M=G;break}else H=G}}else{H=o;K=0;while(1){G=k[a+2908+(H<<2)>>2]|0;w=p+(G<<2)+2|0;n=m[p+(m[w>>1]<<2)+2>>1]|0;I=(n|0)<(C|0);y=I?n+1|0:C;n=(I&1^1)+K|0;j[w>>1]=y;if((G|0)<=(b|0)){w=a+2876+(y<<1)|0;j[w>>1]=(j[w>>1]|0)+1<<16>>16;if((G|0)<(g|0))N=0;else N=k[h+(G-g<<2)>>2]|0;w=m[p+(G<<2)>>1]|0;I=ha(w,N+y|0)|0;k[v>>2]=I+(k[v>>2]|0);I=ha((m[f+(G<<2)+2>>1]|0)+N|0,w)|0;k[J>>2]=I+(k[J>>2]|0)}H=H+1|0;if((H|0)==573){M=n;break}else K=n}}if(M){K=a+2876+(C<<1)|0;H=M;while(1){J=C;while(1){n=J+-1|0;I=a+2876+(n<<1)|0;w=j[I>>1]|0;if(!(w<<16>>16))J=n;else{O=I;P=w;Q=J;break}}j[O>>1]=P+-1<<16>>16;J=a+2876+(Q<<1)|0;j[J>>1]=(m[J>>1]|0)+2;J=(j[K>>1]|0)+-1<<16>>16;j[K>>1]=J;if((H|0)>2)H=H+-2|0;else{R=J;break}}if(C){H=R;K=C;J=573;while(1){w=K&65535;if(!(H<<16>>16))S=J;else{I=J;n=H&65535;while(1){G=I;while(1){y=G+-1|0;u=k[a+2908+(y<<2)>>2]|0;if((u|0)>(b|0))G=y;else{T=y;U=u;break}}G=p+(U<<2)+2|0;u=m[G>>1]|0;if((K|0)!=(u|0)){y=ha(m[p+(U<<2)>>1]|0,K-u|0)|0;k[v>>2]=y+(k[v>>2]|0);j[G>>1]=w}n=n+-1|0;if(!n){S=T;break}else I=T}}I=K+-1|0;if(!I)break d;H=j[a+2876+(I<<1)>>1]|0;K=I;J=S}}}}while(0);S=1;T=0;do{T=(m[a+2876+(S+-1<<1)>>1]|0)+(T&65534)<<1;j[d+(S<<1)>>1]=T;S=S+1|0}while((S|0)!=16);if((z|0)<0){r=c;return}else V=0;while(1){S=j[e+(V<<2)+2>>1]|0;T=S&65535;if(S<<16>>16){S=d+(T<<1)|0;a=j[S>>1]|0;j[S>>1]=a+1<<16>>16;S=T;T=a&65535;a=0;while(1){U=a|T&1;if((S|0)>1){S=S+-1|0;T=T>>>1;a=U<<1}else{W=U;break}}j[e+(V<<2)>>1]=W}if((V|0)==(z|0))break;else V=V+1|0}r=c;return}function Sj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,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;d=a+5792|0;if(!(k[d>>2]|0)){e=a+5820|0;f=a+5816|0;g=f;h=e;n=k[e>>2]|0;o=j[f>>1]|0}else{f=a+5796|0;e=a+5784|0;p=a+5820|0;q=a+5816|0;r=a+20|0;s=a+8|0;t=0;do{u=j[(k[f>>2]|0)+(t<<1)>>1]|0;v=u&65535;w=l[(k[e>>2]|0)+t>>0]|0;t=t+1|0;do if(!(u<<16>>16)){x=m[b+(w<<2)+2>>1]|0;y=k[p>>2]|0;z=m[b+(w<<2)>>1]|0;A=m[q>>1]|0|z<<y;B=A&65535;j[q>>1]=B;if((y|0)>(16-x|0)){C=k[r>>2]|0;k[r>>2]=C+1;i[(k[s>>2]|0)+C>>0]=A;A=(m[q>>1]|0)>>>8&255;C=k[r>>2]|0;k[r>>2]=C+1;i[(k[s>>2]|0)+C>>0]=A;A=k[p>>2]|0;C=z>>>(16-A|0)&65535;j[q>>1]=C;z=x+-16+A|0;k[p>>2]=z;D=C;E=z;break}else{z=y+x|0;k[p>>2]=z;D=B;E=z;break}}else{z=l[155385+w>>0]|0;B=(z|256)+1|0;x=m[b+(B<<2)+2>>1]|0;y=k[p>>2]|0;C=m[b+(B<<2)>>1]|0;B=m[q>>1]|0|C<<y;A=B&65535;j[q>>1]=A;if((y|0)>(16-x|0)){F=k[r>>2]|0;k[r>>2]=F+1;i[(k[s>>2]|0)+F>>0]=B;B=(m[q>>1]|0)>>>8&255;F=k[r>>2]|0;k[r>>2]=F+1;i[(k[s>>2]|0)+F>>0]=B;B=k[p>>2]|0;F=C>>>(16-B|0)&65535;j[q>>1]=F;G=F;H=x+-16+B|0}else{G=A;H=y+x|0}k[p>>2]=H;x=k[110168+(z<<2)>>2]|0;do if((z+-8|0)>>>0<20){y=w-(k[110284+(z<<2)>>2]|0)&65535;A=y<<H|G&65535;B=A&65535;j[q>>1]=B;if((H|0)>(16-x|0)){F=k[r>>2]|0;k[r>>2]=F+1;i[(k[s>>2]|0)+F>>0]=A;A=(m[q>>1]|0)>>>8&255;F=k[r>>2]|0;k[r>>2]=F+1;i[(k[s>>2]|0)+F>>0]=A;A=k[p>>2]|0;F=y>>>(16-A|0)&65535;j[q>>1]=F;y=x+-16+A|0;k[p>>2]=y;I=y;J=F;break}else{F=H+x|0;k[p>>2]=F;I=F;J=B;break}}else{I=H;J=G}while(0);x=v+-1|0;z=l[154873+(x>>>0<256?x:(x>>>7)+256|0)>>0]|0;B=m[c+(z<<2)+2>>1]|0;F=m[c+(z<<2)>>1]|0;y=J&65535|F<<I;A=y&65535;j[q>>1]=A;if((I|0)>(16-B|0)){C=k[r>>2]|0;k[r>>2]=C+1;i[(k[s>>2]|0)+C>>0]=y;y=(m[q>>1]|0)>>>8&255;C=k[r>>2]|0;k[r>>2]=C+1;i[(k[s>>2]|0)+C>>0]=y;y=k[p>>2]|0;C=F>>>(16-y|0)&65535;j[q>>1]=C;K=B+-16+y|0;L=C}else{K=I+B|0;L=A}k[p>>2]=K;A=k[110400+(z<<2)>>2]|0;if((z+-4|0)>>>0<26){B=x-(k[110520+(z<<2)>>2]|0)&65535;z=B<<K|L&65535;x=z&65535;j[q>>1]=x;if((K|0)>(16-A|0)){C=k[r>>2]|0;k[r>>2]=C+1;i[(k[s>>2]|0)+C>>0]=z;z=(m[q>>1]|0)>>>8&255;C=k[r>>2]|0;k[r>>2]=C+1;i[(k[s>>2]|0)+C>>0]=z;z=k[p>>2]|0;C=B>>>(16-z|0)&65535;j[q>>1]=C;B=A+-16+z|0;k[p>>2]=B;D=C;E=B;break}else{B=K+A|0;k[p>>2]=B;D=x;E=B;break}}else{D=L;E=K}}while(0)}while(t>>>0<(k[d>>2]|0)>>>0);g=q;h=p;n=E;o=D}D=m[b+1026>>1]|0;E=m[b+1024>>1]|0;b=o&65535|E<<n;j[g>>1]=b;if((n|0)>(16-D|0)){o=a+20|0;p=k[o>>2]|0;k[o>>2]=p+1;q=a+8|0;i[(k[q>>2]|0)+p>>0]=b;b=(m[g>>1]|0)>>>8&255;p=k[o>>2]|0;k[o>>2]=p+1;i[(k[q>>2]|0)+p>>0]=b;b=k[h>>2]|0;j[g>>1]=E>>>(16-b|0);M=D+-16+b|0;k[h>>2]=M;return}else{M=n+D|0;k[h>>2]=M;return}}function Tj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,p=0,q=0,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;d=j[b+2>>1]|0;e=d<<16>>16==0;f=a+2754|0;g=a+5820|0;h=a+2752|0;l=a+5816|0;n=a+20|0;o=a+8|0;p=a+2758|0;q=a+2756|0;r=a+2750|0;s=a+2748|0;t=e?138:7;u=e?3:4;e=0;v=d&65535;d=-1;a:while(1){w=0;x=e;while(1){if((x|0)>(c|0))break a;y=x+1|0;z=j[b+(y<<2)+2>>1]|0;A=z&65535;B=w+1|0;C=(v|0)==(A|0);if((B|0)<(t|0)&C){w=B;x=y}else{D=y;E=z;F=A;G=B;H=C;I=w;break}}do if((G|0)>=(u|0)){if(v){if((v|0)==(d|0)){J=j[l>>1]|0;K=k[g>>2]|0;L=G}else{w=m[a+2684+(v<<2)+2>>1]|0;x=k[g>>2]|0;C=m[a+2684+(v<<2)>>1]|0;B=m[l>>1]|0|C<<x;A=B&65535;j[l>>1]=A;if((x|0)>(16-w|0)){z=k[n>>2]|0;k[n>>2]=z+1;i[(k[o>>2]|0)+z>>0]=B;B=(m[l>>1]|0)>>>8&255;z=k[n>>2]|0;k[n>>2]=z+1;i[(k[o>>2]|0)+z>>0]=B;B=k[g>>2]|0;z=C>>>(16-B|0)&65535;j[l>>1]=z;M=z;N=w+-16+B|0}else{M=A;N=x+w|0}k[g>>2]=N;J=M;K=N;L=I}w=m[r>>1]|0;x=m[s>>1]|0;A=J&65535|x<<K;j[l>>1]=A;if((K|0)>(16-w|0)){B=k[n>>2]|0;k[n>>2]=B+1;i[(k[o>>2]|0)+B>>0]=A;B=(m[l>>1]|0)>>>8&255;z=k[n>>2]|0;k[n>>2]=z+1;i[(k[o>>2]|0)+z>>0]=B;B=k[g>>2]|0;z=x>>>(16-B|0);j[l>>1]=z;O=w+-16+B|0;P=z}else{O=K+w|0;P=A}k[g>>2]=O;A=L+65533&65535;w=P&65535|A<<O;j[l>>1]=w;if((O|0)>14){z=k[n>>2]|0;k[n>>2]=z+1;i[(k[o>>2]|0)+z>>0]=w;w=(m[l>>1]|0)>>>8&255;z=k[n>>2]|0;k[n>>2]=z+1;i[(k[o>>2]|0)+z>>0]=w;w=k[g>>2]|0;j[l>>1]=A>>>(16-w|0);k[g>>2]=w+-14;break}else{k[g>>2]=O+2;break}}if((G|0)<11){w=m[f>>1]|0;A=k[g>>2]|0;z=m[h>>1]|0;B=m[l>>1]|0|z<<A;j[l>>1]=B;if((A|0)>(16-w|0)){x=k[n>>2]|0;k[n>>2]=x+1;i[(k[o>>2]|0)+x>>0]=B;x=(m[l>>1]|0)>>>8&255;C=k[n>>2]|0;k[n>>2]=C+1;i[(k[o>>2]|0)+C>>0]=x;x=k[g>>2]|0;C=z>>>(16-x|0);j[l>>1]=C;Q=w+-16+x|0;R=C}else{Q=A+w|0;R=B}k[g>>2]=Q;B=I+65534&65535;w=R&65535|B<<Q;j[l>>1]=w;if((Q|0)>13){A=k[n>>2]|0;k[n>>2]=A+1;i[(k[o>>2]|0)+A>>0]=w;w=(m[l>>1]|0)>>>8&255;A=k[n>>2]|0;k[n>>2]=A+1;i[(k[o>>2]|0)+A>>0]=w;w=k[g>>2]|0;j[l>>1]=B>>>(16-w|0);k[g>>2]=w+-13;break}else{k[g>>2]=Q+3;break}}else{w=m[p>>1]|0;B=k[g>>2]|0;A=m[q>>1]|0;C=m[l>>1]|0|A<<B;j[l>>1]=C;if((B|0)>(16-w|0)){x=k[n>>2]|0;k[n>>2]=x+1;i[(k[o>>2]|0)+x>>0]=C;x=(m[l>>1]|0)>>>8&255;z=k[n>>2]|0;k[n>>2]=z+1;i[(k[o>>2]|0)+z>>0]=x;x=k[g>>2]|0;z=A>>>(16-x|0);j[l>>1]=z;S=w+-16+x|0;T=z}else{S=B+w|0;T=C}k[g>>2]=S;C=I+65526&65535;w=T&65535|C<<S;j[l>>1]=w;if((S|0)>9){B=k[n>>2]|0;k[n>>2]=B+1;i[(k[o>>2]|0)+B>>0]=w;w=(m[l>>1]|0)>>>8&255;B=k[n>>2]|0;k[n>>2]=B+1;i[(k[o>>2]|0)+B>>0]=w;w=k[g>>2]|0;j[l>>1]=C>>>(16-w|0);k[g>>2]=w+-9;break}else{k[g>>2]=S+7;break}}}else{w=a+2684+(v<<2)+2|0;C=a+2684+(v<<2)|0;B=k[g>>2]|0;z=j[l>>1]|0;x=G;while(1){A=m[w>>1]|0;y=m[C>>1]|0;U=z&65535|y<<B;V=U&65535;j[l>>1]=V;if((B|0)>(16-A|0)){W=k[n>>2]|0;k[n>>2]=W+1;i[(k[o>>2]|0)+W>>0]=U;U=(m[l>>1]|0)>>>8&255;W=k[n>>2]|0;k[n>>2]=W+1;i[(k[o>>2]|0)+W>>0]=U;U=k[g>>2]|0;W=y>>>(16-U|0)&65535;j[l>>1]=W;X=W;Y=A+-16+U|0}else{X=V;Y=B+A|0}k[g>>2]=Y;x=x+-1|0;if(!x)break;else{B=Y;z=X}}}while(0);z=E<<16>>16==0;B=v;t=z?138:H?6:7;u=z|H?3:4;e=D;v=F;d=B}return}function Uj(a,b,c){a=a|0;b=b|0;c=c|0;return jr(ha(c,b)|0)|0}function Vj(a,b){a=a|0;b=b|0;kr(b);return}function Wj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,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;d=a>>>16;e=a&65535;if((c|0)==1){a=(l[b>>0]|0)+e|0;f=a>>>0>65520?a+-65521|0:a;a=f+d|0;g=(a>>>0>65520?a+15|0:a)<<16|f;return g|0}if(!b){g=1;return g|0}if(c>>>0<16){if(!c){h=e;i=d}else{f=b;a=c;j=e;k=d;while(1){a=a+-1|0;m=(l[f>>0]|0)+j|0;n=m+k|0;if(!a){h=m;i=n;break}else{f=f+1|0;j=m;k=n}}}g=((i>>>0)%65521|0)<<16|(h>>>0>65520?h+-65521|0:h);return g|0}if(c>>>0>5551){h=c+-5552|0;i=(h>>>0)%5552|0;k=h-i+5552|0;h=b;j=c;f=e;a=d;while(1){j=j+-5552|0;n=h;m=f;o=347;p=a;while(1){q=(l[n>>0]|0)+m|0;r=q+(l[n+1>>0]|0)|0;s=r+(l[n+2>>0]|0)|0;t=s+(l[n+3>>0]|0)|0;u=t+(l[n+4>>0]|0)|0;v=u+(l[n+5>>0]|0)|0;w=v+(l[n+6>>0]|0)|0;x=w+(l[n+7>>0]|0)|0;y=x+(l[n+8>>0]|0)|0;z=y+(l[n+9>>0]|0)|0;A=z+(l[n+10>>0]|0)|0;B=A+(l[n+11>>0]|0)|0;C=B+(l[n+12>>0]|0)|0;D=C+(l[n+13>>0]|0)|0;E=D+(l[n+14>>0]|0)|0;F=E+(l[n+15>>0]|0)|0;G=q+p+r+s+t+u+v+w+x+y+z+A+B+C+D+E+F|0;o=o+-1|0;if(!o){H=F;I=G;break}else{n=n+16|0;m=F;p=G}}p=(H>>>0)%65521|0;m=(I>>>0)%65521|0;if(j>>>0<=5551){J=p;K=m;break}else{h=h+5552|0;f=p;a=m}}a=b+k|0;if(i)if(i>>>0>15){L=i;M=a;N=J;O=K;P=15}else{Q=i;R=a;S=J;T=K;P=18}else{U=J;V=K}}else{L=c;M=b;N=e;O=d;P=15}if((P|0)==15){d=L+-16|0;e=d&-16;b=M+(e+16)|0;c=L;L=M;M=N;N=O;while(1){c=c+-16|0;O=(l[L>>0]|0)+M|0;K=O+(l[L+1>>0]|0)|0;J=K+(l[L+2>>0]|0)|0;a=J+(l[L+3>>0]|0)|0;i=a+(l[L+4>>0]|0)|0;k=i+(l[L+5>>0]|0)|0;f=k+(l[L+6>>0]|0)|0;h=f+(l[L+7>>0]|0)|0;j=h+(l[L+8>>0]|0)|0;I=j+(l[L+9>>0]|0)|0;H=I+(l[L+10>>0]|0)|0;m=H+(l[L+11>>0]|0)|0;p=m+(l[L+12>>0]|0)|0;n=p+(l[L+13>>0]|0)|0;o=n+(l[L+14>>0]|0)|0;G=o+(l[L+15>>0]|0)|0;F=O+N+K+J+a+i+k+f+h+j+I+H+m+p+n+o+G|0;if(c>>>0<=15){W=G;X=F;break}else{L=L+16|0;M=G;N=F}}if((d|0)==(e|0)){Y=W;Z=X;P=19}else{Q=d-e|0;R=b;S=W;T=X;P=18}}if((P|0)==18)while(1){P=0;Q=Q+-1|0;X=(l[R>>0]|0)+S|0;W=X+T|0;if(!Q){Y=X;Z=W;P=19;break}else{R=R+1|0;S=X;T=W;P=18}}if((P|0)==19){U=(Y>>>0)%65521|0;V=(Z>>>0)%65521|0}g=V<<16|U;return g|0}function Xj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;if(!b){d=0;return d|0}e=~a;a:do if(c){a=b;f=c;g=e;while(1){if(!(a&3)){h=a;i=f;j=g;break}m=k[110756+(((l[a>>0]|0)^g&255)<<2)>>2]^g>>>8;f=f+-1|0;if(!f){n=m;break a}else{a=a+1|0;g=m}}if(i>>>0>31){g=i+-32|0;a=g&-32;f=a+32|0;m=i;o=h;p=j;while(1){q=k[o>>2]^p;r=k[112804+((q>>>8&255)<<2)>>2]^k[113828+((q&255)<<2)>>2]^k[111780+((q>>>16&255)<<2)>>2]^k[110756+(q>>>24<<2)>>2]^k[o+4>>2];q=k[112804+((r>>>8&255)<<2)>>2]^k[113828+((r&255)<<2)>>2]^k[111780+((r>>>16&255)<<2)>>2]^k[110756+(r>>>24<<2)>>2]^k[o+8>>2];r=k[112804+((q>>>8&255)<<2)>>2]^k[113828+((q&255)<<2)>>2]^k[111780+((q>>>16&255)<<2)>>2]^k[110756+(q>>>24<<2)>>2]^k[o+12>>2];q=k[112804+((r>>>8&255)<<2)>>2]^k[113828+((r&255)<<2)>>2]^k[111780+((r>>>16&255)<<2)>>2]^k[110756+(r>>>24<<2)>>2]^k[o+16>>2];r=k[112804+((q>>>8&255)<<2)>>2]^k[113828+((q&255)<<2)>>2]^k[111780+((q>>>16&255)<<2)>>2]^k[110756+(q>>>24<<2)>>2]^k[o+20>>2];q=k[112804+((r>>>8&255)<<2)>>2]^k[113828+((r&255)<<2)>>2]^k[111780+((r>>>16&255)<<2)>>2]^k[110756+(r>>>24<<2)>>2]^k[o+24>>2];r=k[112804+((q>>>8&255)<<2)>>2]^k[113828+((q&255)<<2)>>2]^k[111780+((q>>>16&255)<<2)>>2]^k[110756+(q>>>24<<2)>>2]^k[o+28>>2];q=k[112804+((r>>>8&255)<<2)>>2]^k[113828+((r&255)<<2)>>2]^k[111780+((r>>>16&255)<<2)>>2]^k[110756+(r>>>24<<2)>>2];m=m+-32|0;if(m>>>0<=31){s=q;break}else{o=o+32|0;p=q}}t=g-a|0;u=h+f|0;v=s}else{t=i;u=h;v=j}if(t>>>0>3){p=t+-4|0;o=p>>>2;m=o<<2;q=t;r=u;w=v;while(1){x=k[r>>2]^w;y=k[112804+((x>>>8&255)<<2)>>2]^k[113828+((x&255)<<2)>>2]^k[111780+((x>>>16&255)<<2)>>2]^k[110756+(x>>>24<<2)>>2];q=q+-4|0;if(q>>>0<=3){z=y;break}else{r=r+4|0;w=y}}A=p-m|0;B=u+(o+1<<2)|0;C=z}else{A=t;B=u;C=v}if(!A)n=C;else{w=B;r=A;q=C;while(1){f=k[110756+(((l[w>>0]|0)^q&255)<<2)>>2]^q>>>8;r=r+-1|0;if(!r){n=f;break}else{w=w+1|0;q=f}}}}else n=e;while(0);d=~n;return d|0}function Yj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,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;c=k[a+28>>2]|0;d=k[a>>2]|0;e=a+4|0;f=d+((k[e>>2]|0)+-6)|0;g=a+12|0;h=k[g>>2]|0;m=a+16|0;n=k[m>>2]|0;o=h+(n+-258)|0;p=k[c+44>>2]|0;q=k[c+48>>2]|0;r=k[c+52>>2]|0;s=c+56|0;t=c+60|0;u=k[c+76>>2]|0;v=k[c+80>>2]|0;w=(1<<k[c+84>>2])+-1|0;x=(1<<k[c+88>>2])+-1|0;y=h+(n+~b)|0;b=c+7104|0;n=r+-1|0;z=(q|0)==0;A=(k[c+40>>2]|0)+-1|0;B=A+q|0;C=q+-1|0;D=y+-1|0;E=y-q|0;F=y+-2|0;G=k[t>>2]|0;H=k[s>>2]|0;I=d+-1|0;d=h+-1|0;a:while(1){if(G>>>0<15){h=I+2|0;J=G+16|0;K=((l[I+1>>0]|0)<<G)+H+((l[h>>0]|0)<<G+8)|0;L=h}else{J=G;K=H;L=I}h=K&w;M=i[u+(h<<2)>>0]|0;N=j[u+(h<<2)+2>>1]|0;O=l[u+(h<<2)+1>>0]|0;h=K>>>O;P=J-O|0;do if(M<<24>>24){O=h;Q=P;R=M&255;S=N;while(1){if(R&16){T=R;U=Q;V=O;W=S;break}if(R&64){X=R;Y=Q;Z=O;_=L;$=d;aa=57;break a}ba=(O&(1<<R)+-1)+(S&65535)|0;ca=i[u+(ba<<2)>>0]|0;da=j[u+(ba<<2)+2>>1]|0;ea=l[u+(ba<<2)+1>>0]|0;ba=O>>>ea;fa=Q-ea|0;if(!(ca<<24>>24)){ga=ba;ha=fa;ia=da;aa=6;break}else{O=ba;Q=fa;R=ca&255;S=da}}if((aa|0)==6){aa=0;ja=ga;ka=ha;la=ia&255;aa=7;break}S=W&65535;R=T&15;if(!R){ma=U;na=V;oa=L;pa=S}else{if(U>>>0<R>>>0){Q=L+1|0;qa=U+8|0;ra=((l[Q>>0]|0)<<U)+V|0;sa=Q}else{qa=U;ra=V;sa=L}ma=qa-R|0;na=ra>>>R;oa=sa;pa=(ra&(1<<R)+-1)+S|0}if(ma>>>0<15){S=oa+2|0;ta=ma+16|0;ua=((l[oa+1>>0]|0)<<ma)+na+((l[S>>0]|0)<<ma+8)|0;va=S}else{ta=ma;ua=na;va=oa}S=ua&x;R=j[v+(S<<2)+2>>1]|0;Q=l[v+(S<<2)+1>>0]|0;O=ua>>>Q;da=ta-Q|0;Q=l[v+(S<<2)>>0]|0;if(!(Q&16)){S=Q;ca=O;fa=da;ba=R;while(1){if(S&64){wa=fa;xa=ca;ya=va;za=d;aa=54;break a}ea=(ca&(1<<S)+-1)+(ba&65535)|0;Aa=j[v+(ea<<2)+2>>1]|0;Ba=l[v+(ea<<2)+1>>0]|0;Ca=ca>>>Ba;Da=fa-Ba|0;Ba=l[v+(ea<<2)>>0]|0;if(!(Ba&16)){S=Ba;ca=Ca;fa=Da;ba=Aa}else{Ea=Ca;Fa=Da;Ga=Ba;Ha=Aa;break}}}else{Ea=O;Fa=da;Ga=Q;Ha=R}ba=Ha&65535;fa=Ga&15;if(Fa>>>0<fa>>>0){ca=va+1|0;S=((l[ca>>0]|0)<<Fa)+Ea|0;Aa=Fa+8|0;if(Aa>>>0<fa>>>0){Ba=va+2|0;Ia=Fa+16|0;Ja=((l[Ba>>0]|0)<<Aa)+S|0;Ka=Ba}else{Ia=Aa;Ja=S;Ka=ca}}else{Ia=Fa;Ja=Ea;Ka=va}ca=(Ja&(1<<fa)+-1)+ba|0;ba=Ja>>>fa;S=Ia-fa|0;fa=d;Aa=fa-y|0;if(ca>>>0<=Aa>>>0){Ba=2-pa|0;Da=pa+(Ba>>>0>4294967293?Ba:-3)|0;Ba=Da-((Da>>>0)%3|0)|0;Da=Ba-ca|0;Ca=d+(0-ca)|0;ea=pa;La=d;do{i[La+1>>0]=i[Ca+1>>0]|0;i[La+2>>0]=i[Ca+2>>0]|0;Ca=Ca+3|0;La=La+3|0;i[La>>0]=i[Ca>>0]|0;ea=ea+-3|0}while(ea>>>0>2);ea=pa+-3|0;if((ea|0)==(Ba|0)){Ma=S;Na=ba;Oa=Ka;Pa=d+(Ba+3)|0;break}Ca=d+(Ba+4)|0;i[Ca>>0]=i[d+(Da+4)>>0]|0;if((ea-Ba|0)>>>0<=1){Ma=S;Na=ba;Oa=Ka;Pa=Ca;break}Ca=d+(Ba+5)|0;i[Ca>>0]=i[d+(Da+5)>>0]|0;Ma=S;Na=ba;Oa=Ka;Pa=Ca;break}Ca=ca-Aa|0;if(Ca>>>0>p>>>0?(k[b>>2]|0)!=0:0){Qa=ba;Ra=S;Sa=Ka;Ta=d;aa=22;break a}do if(z){ea=r+(A-Ca)|0;if(pa>>>0>Ca>>>0){La=pa-Ca|0;R=ca-fa|0;Q=ea;da=Ca;O=d;do{Q=Q+1|0;O=O+1|0;i[O>>0]=i[Q>>0]|0;da=da+-1|0}while((da|0)!=0);Ua=d+(D+R+(1-ca))|0;Va=La;Wa=d+(y+R)|0}else{Ua=ea;Va=pa;Wa=d}}else{if(Ca>>>0<=q>>>0){da=r+(C-Ca)|0;if(pa>>>0<=Ca>>>0){Ua=da;Va=pa;Wa=d;break}Q=pa-Ca|0;O=ca-fa|0;Xa=da;da=Ca;Ya=d;do{Xa=Xa+1|0;Ya=Ya+1|0;i[Ya>>0]=i[Xa>>0]|0;da=da+-1|0}while((da|0)!=0);Ua=d+(D+O+(1-ca))|0;Va=Q;Wa=d+(y+O)|0;break}da=r+(B-Ca)|0;Xa=Ca-q|0;if(pa>>>0>Xa>>>0){Ya=pa-Xa|0;ea=ca-fa|0;R=da;La=Xa;Xa=d;do{R=R+1|0;Xa=Xa+1|0;i[Xa>>0]=i[R>>0]|0;La=La+-1|0}while((La|0)!=0);La=d+(E+ea)|0;if(Ya>>>0>q>>>0){R=Ya-q|0;Xa=n;O=q;Q=La;do{Xa=Xa+1|0;Q=Q+1|0;i[Q>>0]=i[Xa>>0]|0;O=O+-1|0}while((O|0)!=0);Ua=d+(F+ea+(2-ca))|0;Va=R;Wa=d+(y+ea)|0}else{Ua=n;Va=Ya;Wa=La}}else{Ua=da;Va=pa;Wa=d}}while(0);if(Va>>>0>2){ca=Va+-3|0;fa=(ca>>>0)%3|0;Ca=ca-fa|0;ca=Ua;Aa=Va;Da=Wa;do{i[Da+1>>0]=i[ca+1>>0]|0;i[Da+2>>0]=i[ca+2>>0]|0;ca=ca+3|0;Da=Da+3|0;i[Da>>0]=i[ca>>0]|0;Aa=Aa+-3|0}while(Aa>>>0>2);Za=Ua+(Ca+3)|0;_a=fa;$a=Wa+(Ca+3)|0}else{Za=Ua;_a=Va;$a=Wa}if(_a){Aa=$a+1|0;i[Aa>>0]=i[Za+1>>0]|0;if(_a>>>0>1){ca=$a+2|0;i[ca>>0]=i[Za+2>>0]|0;Ma=S;Na=ba;Oa=Ka;Pa=ca}else{Ma=S;Na=ba;Oa=Ka;Pa=Aa}}else{Ma=S;Na=ba;Oa=Ka;Pa=$a}}else{ja=h;ka=P;la=N&255;aa=7}while(0);if((aa|0)==7){aa=0;N=d+1|0;i[N>>0]=la;Ma=ka;Na=ja;Oa=L;Pa=N}if(Pa>>>0<o>>>0&Oa>>>0<f>>>0){G=Ma;H=Na;I=Oa;d=Pa}else{ab=Ma;bb=Na;cb=Oa;db=Pa;break}}do if((aa|0)==22){k[a+24>>2]=155777;k[c>>2]=29;ab=Ra;bb=Qa;cb=Sa;db=Ta}else if((aa|0)==54){k[a+24>>2]=155807;k[c>>2]=29;ab=wa;bb=xa;cb=ya;db=za}else if((aa|0)==57)if(!(X&32)){k[a+24>>2]=155829;k[c>>2]=29;ab=Y;bb=Z;cb=_;db=$;break}else{k[c>>2]=11;ab=Y;bb=Z;cb=_;db=$;break}while(0);$=ab>>>3;_=ab-($<<3)|0;k[a>>2]=cb+(1-$);k[g>>2]=db+1;k[e>>2]=f+5-(cb+(0-$));k[m>>2]=o+257-db;k[s>>2]=(1<<_)+-1&bb;k[t>>2]=_;return}function Zj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;k[a+4>>2]=0;if((b|0)!=90){d=k[a>>2]|0;k[d+20>>2]=13;k[d+24>>2]=90;k[d+28>>2]=b;qb[k[d>>2]&127](a)}if((c|0)==440)e=a;else{d=k[a>>2]|0;k[d+20>>2]=22;k[d+24>>2]=440;k[d+28>>2]=c;qb[k[d>>2]&127](a);e=a}d=k[a>>2]|0;c=a+12|0;b=k[c>>2]|0;qr(a|0,0,440)|0;k[a>>2]=d;k[c>>2]=b;k[a+16>>2]=0;tm(e);k[a+8>>2]=0;k[a+24>>2]=0;k[a+84>>2]=0;k[a+88>>2]=0;k[a+104>>2]=100;k[a+92>>2]=0;k[a+108>>2]=100;k[a+96>>2]=0;k[a+112>>2]=100;k[a+100>>2]=0;k[a+116>>2]=100;e=a+120|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[e+16>>2]=0;k[e+20>>2]=0;k[e+24>>2]=0;k[e+28>>2]=0;k[a+380>>2]=8;k[a+384>>2]=119984;k[a+388>>2]=63;k[a+428>>2]=0;p[a+48>>3]=1.0;k[a+20>>2]=100;return}function _j(a,b){a=a|0;b=b|0;var c=0;c=k[a+88>>2]|0;if(c)k[c+128>>2]=b;c=k[a+92>>2]|0;if(c)k[c+128>>2]=b;c=k[a+96>>2]|0;if(c)k[c+128>>2]=b;c=k[a+100>>2]|0;if(c)k[c+128>>2]=b;c=k[a+120>>2]|0;if(c)k[c+276>>2]=b;c=k[a+136>>2]|0;if(c)k[c+276>>2]=b;c=k[a+124>>2]|0;if(c)k[c+276>>2]=b;c=k[a+140>>2]|0;if(c)k[c+276>>2]=b;c=k[a+128>>2]|0;if(c)k[c+276>>2]=b;c=k[a+144>>2]|0;if(c)k[c+276>>2]=b;c=k[a+132>>2]|0;if(c)k[c+276>>2]=b;c=k[a+148>>2]|0;if(!c)return;k[c+276>>2]=b;return}function $j(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;b=k[a+20>>2]|0;switch(b|0){case 102:case 101:{if((k[a+264>>2]|0)>>>0<(k[a+32>>2]|0)>>>0){c=k[a>>2]|0;k[c+20>>2]=69;qb[k[c>>2]&127](a)}qb[k[(k[a+392>>2]|0)+8>>2]&127](a);break}case 103:break;default:{c=k[a>>2]|0;k[c+20>>2]=21;k[c+24>>2]=b;qb[k[c>>2]&127](a)}}c=a+392|0;b=k[c>>2]|0;if(k[b+16>>2]|0){d=a;e=a+408|0;f=k[e>>2]|0;g=f+12|0;h=k[g>>2]|0;qb[h&127](a);i=a+24|0;j=k[i>>2]|0;l=j+16|0;m=k[l>>2]|0;qb[m&127](a);Ak(d);return}n=a+288|0;o=a+8|0;p=a+404|0;q=b;do{qb[k[q>>2]&127](a);b=k[n>>2]|0;if(b){r=b;b=0;do{s=k[o>>2]|0;if(s){k[s+4>>2]=b;k[s+8>>2]=r;qb[k[s>>2]&127](a)}if(!(yb[k[(k[p>>2]|0)+4>>2]&127](a,0)|0)){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}b=b+1|0;r=k[n>>2]|0}while(b>>>0<r>>>0)}qb[k[(k[c>>2]|0)+8>>2]&127](a);q=k[c>>2]|0}while((k[q+16>>2]|0)==0);d=a;e=a+408|0;f=k[e>>2]|0;g=f+12|0;h=k[g>>2]|0;qb[h&127](a);i=a+24|0;j=k[i>>2]|0;l=j+16|0;m=k[l>>2]|0;qb[m&127](a);Ak(d);return}function ak(a){a=a|0;var b=0,c=0,d=0;b=k[a+20>>2]|0;if((b|0)==100)c=a;else{d=k[a>>2]|0;k[d+20>>2]=21;k[d+24>>2]=b;qb[k[d>>2]&127](a);c=a}qb[k[(k[a>>2]|0)+16>>2]&127](c);c=a+24|0;qb[k[(k[c>>2]|0)+8>>2]&127](a);ik(a);qb[k[(k[a+408>>2]|0)+16>>2]&127](a);qb[k[(k[c>>2]|0)+16>>2]&127](a);return}function bk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+20|0;d=k[c>>2]|0;if((d|0)!=100){e=k[a>>2]|0;k[e+20>>2]=21;k[e+24>>2]=d;qb[k[e>>2]&127](a)}if(b)_j(a,0);qb[k[(k[a>>2]|0)+16>>2]&127](a);qb[k[(k[a+24>>2]|0)+8>>2]&127](a);ek(a);qb[k[k[a+392>>2]>>2]&127](a);k[a+264>>2]=0;k[c>>2]=(k[a+208>>2]|0)!=0?102:101;return}function ck(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=r;r=r+16|0;e=d;f=k[a+20>>2]|0;if((f|0)!=101){g=k[a>>2]|0;k[g+20>>2]=21;k[g+24>>2]=f;qb[k[g>>2]&127](a)}g=a+264|0;f=a+32|0;if((k[g>>2]|0)>>>0>=(k[f>>2]|0)>>>0){h=k[a>>2]|0;k[h+20>>2]=126;rb[k[h+4>>2]&31](a,-1)}h=k[a+8>>2]|0;if(h){k[h+4>>2]=k[g>>2];k[h+8>>2]=k[f>>2];qb[k[h>>2]&127](a)}h=k[a+392>>2]|0;if(k[h+12>>2]|0)qb[k[h+4>>2]&127](a);h=(k[f>>2]|0)-(k[g>>2]|0)|0;k[e>>2]=0;Ab[k[(k[a+396>>2]|0)+4>>2]&31](a,b,e,h>>>0<c>>>0?h:c);c=k[e>>2]|0;k[g>>2]=(k[g>>2]|0)+c;r=d;return c|0}function dk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=k[a+20>>2]|0;if((d|0)!=102){e=k[a>>2]|0;k[e+20>>2]=21;k[e+24>>2]=d;qb[k[e>>2]&127](a)}e=a+264|0;d=k[e>>2]|0;f=k[a+32>>2]|0;if(d>>>0>=f>>>0){g=k[a>>2]|0;k[g+20>>2]=126;rb[k[g+4>>2]&31](a,-1);h=0;return h|0}g=k[a+8>>2]|0;if(g){k[g+4>>2]=d;k[g+8>>2]=f;qb[k[g>>2]&127](a)}g=k[a+392>>2]|0;if(k[g+12>>2]|0)qb[k[g+4>>2]&127](a);g=ha(k[a+284>>2]|0,k[a+276>>2]|0)|0;if(g>>>0>c>>>0){c=k[a>>2]|0;k[c+20>>2]=24;qb[k[c>>2]&127](a)}if(!(yb[k[(k[a+404>>2]|0)+4>>2]&127](a,b)|0)){h=0;return h|0}k[e>>2]=(k[e>>2]|0)+g;h=g;return h|0}function ek(a){a=a|0;var b=0,c=0,d=0;b=k[a+72>>2]|0;if((b|0)!=8){c=k[a>>2]|0;k[c+20>>2]=16;k[c+24>>2]=b;qb[k[c>>2]&127](a)}if(!(((k[a+32>>2]|0)!=0?(k[a+28>>2]|0)!=0:0)?(k[a+36>>2]|0)>=1:0)){c=k[a>>2]|0;k[c+20>>2]=33;qb[k[c>>2]&127](a)}uk(a,0);if(!(k[a+208>>2]|0)){an(a);Ok(a);Kk(a,0)}ln(a);if(!(k[a+212>>2]|0))pn(a);else Nm(a);if((k[a+200>>2]|0)>1)d=1;else d=(k[a+216>>2]|0)!=0;Xm(a,d&1);fk(a,0);ik(a);qb[k[(k[a+4>>2]|0)+24>>2]&127](a);qb[k[k[a+408>>2]>>2]&127](a);return}function fk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=a+4|0;d=nb[k[k[c>>2]>>2]&63](a,1,64)|0;k[a+396>>2]=d;k[d>>2]=7;if(k[a+208>>2]|0)return;if(b){b=k[a>>2]|0;k[b+20>>2]=3;qb[k[b>>2]&127](a);return}b=a+76|0;if((k[b>>2]|0)<=0)return;e=d+24|0;d=0;f=k[a+84>>2]|0;while(1){g=ha(k[f+36>>2]|0,k[f+28>>2]|0)|0;h=ha(k[f+40>>2]|0,k[f+12>>2]|0)|0;i=xb[k[(k[c>>2]|0)+8>>2]&63](a,1,g,h)|0;k[e+(d<<2)>>2]=i;d=d+1|0;if((d|0)>=(k[b>>2]|0))break;else f=f+88|0}return}function gk(a,b){a=a|0;b=b|0;var c=0;c=k[a+396>>2]|0;if(k[a+208>>2]|0)return;k[c+8>>2]=0;k[c+12>>2]=0;k[c+16>>2]=0;k[c+20>>2]=b;if(!b){k[c+4>>2]=4;return}else{c=k[a>>2]|0;k[c+20>>2]=3;qb[k[c>>2]&127](a);return}}function hk(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=k[a+396>>2]|0;f=e+8|0;g=a+288|0;if((k[f>>2]|0)>>>0>=(k[g>>2]|0)>>>0)return;h=e+12|0;i=a+284|0;j=a+400|0;l=e+24|0;m=a+404|0;n=e+16|0;e=k[h>>2]|0;while(1){o=k[i>>2]|0;if(e>>>0<o>>>0){ob[k[(k[j>>2]|0)+4>>2]&15](a,b,c,d,l,h,o);p=k[h>>2]|0;q=k[i>>2]|0}else{p=e;q=o}if((p|0)!=(q|0)){r=12;break}o=(yb[k[(k[m>>2]|0)+4>>2]&127](a,l)|0)==0;s=(k[n>>2]|0)!=0;if(o){r=7;break}if(s){k[c>>2]=(k[c>>2]|0)+1;k[n>>2]=0}k[h>>2]=0;o=(k[f>>2]|0)+1|0;k[f>>2]=o;if(o>>>0<(k[g>>2]|0)>>>0)e=0;else{r=12;break}}if((r|0)==7){if(s)return;k[c>>2]=(k[c>>2]|0)+-1;k[n>>2]=1;return}else if((r|0)==12)return}function ik(a){a=a|0;var b=0;b=nb[k[k[a+4>>2]>>2]&63](a,1,32)|0;k[a+408>>2]=b;k[b>>2]=30;k[b+4>>2]=31;k[b+8>>2]=32;k[b+12>>2]=33;k[b+16>>2]=34;k[b+20>>2]=44;k[b+24>>2]=8;k[b+28>>2]=0;return}function jk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=k[a+408>>2]|0;c=a+24|0;d=k[c>>2]|0;e=k[d>>2]|0;k[d>>2]=e+1;i[e>>0]=-1;e=d+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;f=k[d>>2]|0;k[d>>2]=f+1;i[f>>0]=-40;f=d+4|0;e=(k[f>>2]|0)+-1|0;k[f>>2]=e;if((e|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}k[b+28>>2]=0;do if(k[a+244>>2]|0){b=k[c>>2]|0;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=-1;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=-32;e=b+4|0;d=(k[e>>2]|0)+-1|0;k[e>>2]=d;if((d|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=0;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=16;e=b+4|0;d=(k[e>>2]|0)+-1|0;k[e>>2]=d;if((d|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=74;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=70;e=b+4|0;d=(k[e>>2]|0)+-1|0;k[e>>2]=d;if((d|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=73;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=70;e=b+4|0;d=(k[e>>2]|0)+-1|0;k[e>>2]=d;if((d|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=0;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=i[a+248>>0]|0;e=k[c>>2]|0;d=k[e>>2]|0;k[e>>2]=d+1;i[d>>0]=b;b=e+4|0;d=(k[b>>2]|0)+-1|0;k[b>>2]=d;if((d|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=i[a+249>>0]|0;d=k[c>>2]|0;b=k[d>>2]|0;k[d>>2]=b+1;i[b>>0]=e;e=d+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if((b|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=i[a+250>>0]|0;b=k[c>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=d;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=j[a+252>>1]|0;e=k[c>>2]|0;d=k[e>>2]|0;k[e>>2]=d+1;i[d>>0]=(b&65535)>>>8;d=e+4|0;f=(k[d>>2]|0)+-1|0;k[d>>2]=f;if((f|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=k[c>>2]|0;f=k[e>>2]|0;k[e>>2]=f+1;i[f>>0]=b;b=e+4|0;f=(k[b>>2]|0)+-1|0;k[b>>2]=f;if((f|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=j[a+254>>1]|0;f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=(e&65535)>>>8;b=f+4|0;d=(k[b>>2]|0)+-1|0;k[b>>2]=d;do if(!d){if(ub[k[f+12>>2]&63](a)|0)break;b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}while(0);f=k[c>>2]|0;d=k[f>>2]|0;k[f>>2]=d+1;i[d>>0]=e;d=f+4|0;b=(k[d>>2]|0)+-1|0;k[d>>2]=b;do if(!b){if(ub[k[f+12>>2]&63](a)|0)break;d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}while(0);f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=0;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;do if(!e){if(ub[k[f+12>>2]&63](a)|0)break;b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}while(0);f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=0;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if(b)break;if(ub[k[f+12>>2]&63](a)|0)break;f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}while(0);if(!(k[a+256>>2]|0))return;f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=-1;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=-18;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if((b|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=0;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=14;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if((b|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=65;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=100;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if((b|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=111;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=98;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if((b|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=101;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=0;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if((b|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=100;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=0;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if((b|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=0;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=0;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if((b|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=0;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;do if(!e){if(ub[k[f+12>>2]&63](a)|0)break;b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}while(0);switch(k[a+80>>2]|0){case 3:{f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=1;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if(b)return;if(ub[k[f+12>>2]&63](a)|0)return;f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a);return}case 5:{f=k[c>>2]|0;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=2;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if(e)return;if(ub[k[f+12>>2]&63](a)|0)return;f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a);return}default:{f=k[c>>2]|0;c=k[f>>2]|0;k[f>>2]=c+1;i[c>>0]=0;c=f+4|0;e=(k[c>>2]|0)+-1|0;k[c>>2]=e;if(e)return;if(ub[k[f+12>>2]&63](a)|0)return;f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a);return}}}function kk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;b=a+84|0;c=a+76|0;d=k[c>>2]|0;if((d|0)>0){e=0;f=k[b>>2]|0;g=0;while(1){h=(qk(a,k[f+16>>2]|0)|0)+g|0;e=e+1|0;j=k[c>>2]|0;if((e|0)>=(j|0)){l=j;m=h;break}else{f=f+88|0;g=h}}}else{l=d;m=0}d=a+212|0;g=a+268|0;f=(k[g>>2]|0)==0;a:do if(k[d>>2]|0)if(f)n=19;else n=18;else{b:do if(f){do if((k[a+72>>2]|0)==8?(k[a+380>>2]|0)==8:0){if((l|0)>0){e=0;h=k[b>>2]|0;j=1;while(1){if((k[h+20>>2]|0)<=1?(k[h+24>>2]|0)<=1:0)o=j;else o=0;e=e+1|0;if((e|0)>=(l|0)){p=o;break}else{h=h+88|0;j=o}}}else p=1;if(!((m|0)!=0&(p|0)!=0)){if(!p)break;sk(a,192);break a}j=k[a>>2]|0;k[j+20>>2]=77;rb[k[j+4>>2]&31](a,0);j=(k[g>>2]|0)!=0;if(!(k[d>>2]|0))if(j)break b;else break;else if(j){n=18;break a}else{n=19;break a}}while(0);sk(a,193);break a}while(0);sk(a,194)}while(0);if((n|0)==18)sk(a,202);else if((n|0)==19)sk(a,201);switch(k[a+260>>2]|0){case 0:break;case 1:{if((k[c>>2]|0)<3)n=27;else n=28;break}default:n=27}if((n|0)==27){c=k[a>>2]|0;k[c+20>>2]=28;qb[k[c>>2]&127](a);n=28}do if((n|0)==28){c=a+24|0;d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=-1;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;if((m|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=-8;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;if((p|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=0;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;if((m|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=24;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;if((p|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=13;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;if((m|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=0;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;if((p|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=-1;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;if((m|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=3;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;if((p|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;p=k[(k[b>>2]|0)+88>>2]&255;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=p;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;if((m|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;m=k[k[b>>2]>>2]&255;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=m;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;if((p|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;p=k[(k[b>>2]|0)+176>>2]&255;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=p;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;if((m|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=-128;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;if((p|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=0;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;if((m|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=0;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;if((p|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=0;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;if((m|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=0;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;do if(!p){if(ub[k[d+12>>2]&63](a)|0)break;m=k[a>>2]|0;k[m+20>>2]=25;qb[k[m>>2]&127](a)}while(0);d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=0;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;do if(!m){if(ub[k[d+12>>2]&63](a)|0)break;p=k[a>>2]|0;k[p+20>>2]=25;qb[k[p>>2]&127](a)}while(0);d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=0;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;do if(!p){if(ub[k[d+12>>2]&63](a)|0)break;m=k[a>>2]|0;k[m+20>>2]=25;qb[k[m>>2]&127](a)}while(0);d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=1;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;do if(!m){if(ub[k[d+12>>2]&63](a)|0)break;p=k[a>>2]|0;k[p+20>>2]=25;qb[k[p>>2]&127](a)}while(0);d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=0;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;do if(!p){if(ub[k[d+12>>2]&63](a)|0)break;m=k[a>>2]|0;k[m+20>>2]=25;qb[k[m>>2]&127](a)}while(0);d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=0;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;do if(!m){if(ub[k[d+12>>2]&63](a)|0)break;p=k[a>>2]|0;k[p+20>>2]=25;qb[k[p>>2]&127](a)}while(0);d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=0;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;do if(!p){if(ub[k[d+12>>2]&63](a)|0)break;m=k[a>>2]|0;k[m+20>>2]=25;qb[k[m>>2]&127](a)}while(0);d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=0;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;do if(!m){if(ub[k[d+12>>2]&63](a)|0)break;p=k[a>>2]|0;k[p+20>>2]=25;qb[k[p>>2]&127](a)}while(0);d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=1;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;do if(!p){if(ub[k[d+12>>2]&63](a)|0)break;m=k[a>>2]|0;k[m+20>>2]=25;qb[k[m>>2]&127](a)}while(0);d=k[c>>2]|0;p=k[d>>2]|0;k[d>>2]=p+1;i[p>>0]=0;p=d+4|0;m=(k[p>>2]|0)+-1|0;k[p>>2]=m;do if(!m){if(ub[k[d+12>>2]&63](a)|0)break;p=k[a>>2]|0;k[p+20>>2]=25;qb[k[p>>2]&127](a)}while(0);d=k[c>>2]|0;m=k[d>>2]|0;k[d>>2]=m+1;i[m>>0]=0;m=d+4|0;p=(k[m>>2]|0)+-1|0;k[m>>2]=p;if(p)break;if(ub[k[d+12>>2]&63](a)|0)break;d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}while(0);if(!(k[g>>2]|0))return;g=a+380|0;if((k[g>>2]|0)==8)return;b=a+24|0;n=k[b>>2]|0;d=k[n>>2]|0;k[n>>2]=d+1;i[d>>0]=-1;d=n+4|0;p=(k[d>>2]|0)+-1|0;k[d>>2]=p;if((p|0)==0?(ub[k[n+12>>2]&63](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=25;qb[k[n>>2]&127](a)}n=k[b>>2]|0;p=k[n>>2]|0;k[n>>2]=p+1;i[p>>0]=-38;p=n+4|0;d=(k[p>>2]|0)+-1|0;k[p>>2]=d;if((d|0)==0?(ub[k[n+12>>2]&63](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=25;qb[k[n>>2]&127](a)}n=k[b>>2]|0;d=k[n>>2]|0;k[n>>2]=d+1;i[d>>0]=0;d=n+4|0;p=(k[d>>2]|0)+-1|0;k[d>>2]=p;if((p|0)==0?(ub[k[n+12>>2]&63](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=25;qb[k[n>>2]&127](a)}n=k[b>>2]|0;p=k[n>>2]|0;k[n>>2]=p+1;i[p>>0]=6;p=n+4|0;d=(k[p>>2]|0)+-1|0;k[p>>2]=d;if((d|0)==0?(ub[k[n+12>>2]&63](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=25;qb[k[n>>2]&127](a)}n=k[b>>2]|0;d=k[n>>2]|0;k[n>>2]=d+1;i[d>>0]=0;d=n+4|0;p=(k[d>>2]|0)+-1|0;k[d>>2]=p;if((p|0)==0?(ub[k[n+12>>2]&63](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=25;qb[k[n>>2]&127](a)}n=k[b>>2]|0;p=k[n>>2]|0;k[n>>2]=p+1;i[p>>0]=0;p=n+4|0;d=(k[p>>2]|0)+-1|0;k[p>>2]=d;if((d|0)==0?(ub[k[n+12>>2]&63](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=25;qb[k[n>>2]&127](a)}n=k[g>>2]|0;g=(ha(n,n)|0)+255|0;n=k[b>>2]|0;d=k[n>>2]|0;k[n>>2]=d+1;i[d>>0]=g;g=n+4|0;d=(k[g>>2]|0)+-1|0;k[g>>2]=d;if((d|0)==0?(ub[k[n+12>>2]&63](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=25;qb[k[n>>2]&127](a)}n=k[b>>2]|0;b=k[n>>2]|0;k[n>>2]=b+1;i[b>>0]=0;b=n+4|0;d=(k[b>>2]|0)+-1|0;k[b>>2]=d;if(d)return;if(ub[k[n+12>>2]&63](a)|0)return;n=k[a>>2]|0;k[n+20>>2]=25;qb[k[n>>2]&127](a);return}function lk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=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;b=r;r=r+32|0;c=b+16|0;d=b;e=k[a+408>>2]|0;if(!(k[a+212>>2]|0)){f=a+292|0;if((k[f>>2]|0)>0){g=a+364|0;h=a+372|0;j=a+368|0;m=0;do{n=k[a+296+(m<<2)>>2]|0;if((k[g>>2]|0)==0?(k[h>>2]|0)==0:0)rk(a,k[n+20>>2]|0,0);if(k[j>>2]|0)rk(a,k[n+24>>2]|0,1);m=m+1|0}while((m|0)<(k[f>>2]|0))}}else{f=d;m=f+16|0;do{i[f>>0]=0;f=f+1|0}while((f|0)<(m|0));f=c;m=f+16|0;do{i[f>>0]=0;f=f+1|0}while((f|0)<(m|0));f=k[a+292>>2]|0;if((f|0)>0){m=(k[a+368>>2]|0)==0;if(k[a+364>>2]|0)if(m){o=0;p=0;q=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}else{j=0;do{i[d+(k[(k[a+296+(j<<2)>>2]|0)+24>>2]|0)>>0]=1;j=j+1|0}while((j|0)!=(f|0));o=0;p=0;q=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}else{j=(k[a+372>>2]|0)==0;if(m){m=0;do{if(j)i[c+(k[(k[a+296+(m<<2)>>2]|0)+20>>2]|0)>>0]=1;m=m+1|0}while((m|0)!=(f|0))}else{m=0;do{h=k[a+296+(m<<2)>>2]|0;if(j)i[c+(k[h+20>>2]|0)>>0]=1;i[d+(k[h+24>>2]|0)>>0]=1;m=m+1|0}while((m|0)!=(f|0))}o=i[c+13>>0]|0;p=i[c>>0]|0;q=i[c+14>>0]|0;s=i[c+15>>0]|0;t=i[c+1>>0]|0;u=i[c+2>>0]|0;v=i[c+3>>0]|0;w=i[c+4>>0]|0;x=i[c+5>>0]|0;y=i[c+6>>0]|0;z=i[c+7>>0]|0;A=i[c+8>>0]|0;B=i[c+9>>0]|0;C=i[c+10>>0]|0;D=i[c+11>>0]|0;E=i[c+12>>0]|0}F=i[d+15>>0]|0;G=p;H=i[d>>0]|0;I=t;J=i[d+1>>0]|0;K=u;L=i[d+2>>0]|0;M=v;N=i[d+3>>0]|0;O=w;P=i[d+4>>0]|0;Q=x;R=i[d+5>>0]|0;S=y;T=i[d+6>>0]|0;U=z;V=i[d+7>>0]|0;W=A;X=i[d+8>>0]|0;Y=B;Z=i[d+9>>0]|0;_=C;$=i[d+10>>0]|0;aa=D;ba=i[d+11>>0]|0;ca=E;da=i[d+12>>0]|0;ea=o;fa=i[d+13>>0]|0;ga=q;ha=i[d+14>>0]|0;ia=s}else{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}s=(ca<<24>>24)+(da<<24>>24)+(ba<<24>>24)+(aa<<24>>24)+($<<24>>24)+(_<<24>>24)+(Z<<24>>24)+(Y<<24>>24)+(X<<24>>24)+(W<<24>>24)+(V<<24>>24)+(U<<24>>24)+(T<<24>>24)+(S<<24>>24)+(R<<24>>24)+(Q<<24>>24)+(P<<24>>24)+(O<<24>>24)+(N<<24>>24)+(M<<24>>24)+(L<<24>>24)+(K<<24>>24)+(J<<24>>24)+(I<<24>>24)+(H<<24>>24)+(G<<24>>24)+(ea<<24>>24)+(fa<<24>>24)+(ga<<24>>24)+(ha<<24>>24)+(ia<<24>>24)+(F<<24>>24)|0;if(s){F=a+24|0;ia=k[F>>2]|0;ha=k[ia>>2]|0;k[ia>>2]=ha+1;i[ha>>0]=-1;ha=ia+4|0;ga=(k[ha>>2]|0)+-1|0;k[ha>>2]=ga;if((ga|0)==0?(ub[k[ia+12>>2]&63](a)|0)==0:0){ia=k[a>>2]|0;k[ia+20>>2]=25;qb[k[ia>>2]&127](a)}ia=k[F>>2]|0;ga=k[ia>>2]|0;k[ia>>2]=ga+1;i[ga>>0]=-52;ga=ia+4|0;ha=(k[ga>>2]|0)+-1|0;k[ga>>2]=ha;if((ha|0)==0?(ub[k[ia+12>>2]&63](a)|0)==0:0){ia=k[a>>2]|0;k[ia+20>>2]=25;qb[k[ia>>2]&127](a)}ia=(s<<1)+2|0;s=k[F>>2]|0;ha=k[s>>2]|0;k[s>>2]=ha+1;i[ha>>0]=ia>>>8;ha=s+4|0;ga=(k[ha>>2]|0)+-1|0;k[ha>>2]=ga;if((ga|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}s=k[F>>2]|0;ga=k[s>>2]|0;k[s>>2]=ga+1;i[ga>>0]=ia;ia=s+4|0;ga=(k[ia>>2]|0)+-1|0;k[ia>>2]=ga;if((ga|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}s=0;do{if(i[c+s>>0]|0){ga=k[F>>2]|0;ia=k[ga>>2]|0;k[ga>>2]=ia+1;i[ia>>0]=s;ia=ga+4|0;ha=(k[ia>>2]|0)+-1|0;k[ia>>2]=ha;if((ha|0)==0?(ub[k[ga+12>>2]&63](a)|0)==0:0){ga=k[a>>2]|0;k[ga+20>>2]=25;qb[k[ga>>2]&127](a)}ga=k[F>>2]|0;ha=(l[a+168+s>>0]<<4)+(l[a+152+s>>0]|0)&255;ia=k[ga>>2]|0;k[ga>>2]=ia+1;i[ia>>0]=ha;ha=ga+4|0;ia=(k[ha>>2]|0)+-1|0;k[ha>>2]=ia;if((ia|0)==0?(ub[k[ga+12>>2]&63](a)|0)==0:0){ga=k[a>>2]|0;k[ga+20>>2]=25;qb[k[ga>>2]&127](a)}}if(i[d+s>>0]|0){ga=k[F>>2]|0;ia=k[ga>>2]|0;k[ga>>2]=ia+1;i[ia>>0]=s+16;ia=ga+4|0;ha=(k[ia>>2]|0)+-1|0;k[ia>>2]=ha;if((ha|0)==0?(ub[k[ga+12>>2]&63](a)|0)==0:0){ga=k[a>>2]|0;k[ga+20>>2]=25;qb[k[ga>>2]&127](a)}ga=i[a+184+s>>0]|0;ha=k[F>>2]|0;ia=k[ha>>2]|0;k[ha>>2]=ia+1;i[ia>>0]=ga;ga=ha+4|0;ia=(k[ga>>2]|0)+-1|0;k[ga>>2]=ia;if((ia|0)==0?(ub[k[ha+12>>2]&63](a)|0)==0:0){ha=k[a>>2]|0;k[ha+20>>2]=25;qb[k[ha>>2]&127](a)}}s=s+1|0}while((s|0)!=16)}}s=a+236|0;F=e+28|0;e=a+24|0;if((k[s>>2]|0)!=(k[F>>2]|0)){d=k[e>>2]|0;c=k[d>>2]|0;k[d>>2]=c+1;i[c>>0]=-1;c=d+4|0;ha=(k[c>>2]|0)+-1|0;k[c>>2]=ha;if((ha|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[e>>2]|0;ha=k[d>>2]|0;k[d>>2]=ha+1;i[ha>>0]=-35;ha=d+4|0;c=(k[ha>>2]|0)+-1|0;k[ha>>2]=c;if((c|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[e>>2]|0;c=k[d>>2]|0;k[d>>2]=c+1;i[c>>0]=0;c=d+4|0;ha=(k[c>>2]|0)+-1|0;k[c>>2]=ha;if((ha|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[e>>2]|0;ha=k[d>>2]|0;k[d>>2]=ha+1;i[ha>>0]=4;ha=d+4|0;c=(k[ha>>2]|0)+-1|0;k[ha>>2]=c;if((c|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[s>>2]|0;c=k[e>>2]|0;ha=k[c>>2]|0;k[c>>2]=ha+1;i[ha>>0]=d>>>8;ha=c+4|0;ia=(k[ha>>2]|0)+-1|0;k[ha>>2]=ia;if((ia|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=k[e>>2]|0;ia=k[c>>2]|0;k[c>>2]=ia+1;i[ia>>0]=d;d=c+4|0;ia=(k[d>>2]|0)+-1|0;k[d>>2]=ia;if((ia|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}k[F>>2]=k[s>>2]}s=k[e>>2]|0;F=k[s>>2]|0;k[s>>2]=F+1;i[F>>0]=-1;F=s+4|0;c=(k[F>>2]|0)+-1|0;k[F>>2]=c;if((c|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}s=k[e>>2]|0;c=k[s>>2]|0;k[s>>2]=c+1;i[c>>0]=-38;c=s+4|0;F=(k[c>>2]|0)+-1|0;k[c>>2]=F;if((F|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}s=a+292|0;F=(k[s>>2]<<1)+6|0;c=k[e>>2]|0;ia=k[c>>2]|0;k[c>>2]=ia+1;i[ia>>0]=F>>>8;ia=c+4|0;d=(k[ia>>2]|0)+-1|0;k[ia>>2]=d;if((d|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=k[e>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=F;F=c+4|0;d=(k[F>>2]|0)+-1|0;k[F>>2]=d;if((d|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=k[e>>2]|0;d=k[s>>2]&255;F=k[c>>2]|0;k[c>>2]=F+1;i[F>>0]=d;d=c+4|0;F=(k[d>>2]|0)+-1|0;k[d>>2]=F;if((F|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}if((k[s>>2]|0)>0){c=a+364|0;F=a+372|0;d=a+368|0;ia=0;do{ha=k[a+296+(ia<<2)>>2]|0;ga=k[e>>2]|0;fa=k[ha>>2]&255;ea=k[ga>>2]|0;k[ga>>2]=ea+1;i[ea>>0]=fa;fa=ga+4|0;ea=(k[fa>>2]|0)+-1|0;k[fa>>2]=ea;if((ea|0)==0?(ub[k[ga+12>>2]&63](a)|0)==0:0){ga=k[a>>2]|0;k[ga+20>>2]=25;qb[k[ga>>2]&127](a)}if((k[c>>2]|0)==0?(k[F>>2]|0)==0:0)ja=k[ha+20>>2]|0;else ja=0;if(!(k[d>>2]|0))ka=0;else ka=k[ha+24>>2]|0;ha=k[e>>2]|0;ga=k[ha>>2]|0;k[ha>>2]=ga+1;i[ga>>0]=ka+(ja<<4);ga=ha+4|0;ea=(k[ga>>2]|0)+-1|0;k[ga>>2]=ea;if((ea|0)==0?(ub[k[ha+12>>2]&63](a)|0)==0:0){ha=k[a>>2]|0;k[ha+20>>2]=25;qb[k[ha>>2]&127](a)}ia=ia+1|0}while((ia|0)<(k[s>>2]|0));la=c}else la=a+364|0;c=k[e>>2]|0;s=k[la>>2]&255;la=k[c>>2]|0;k[c>>2]=la+1;i[la>>0]=s;s=c+4|0;la=(k[s>>2]|0)+-1|0;k[s>>2]=la;if((la|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=k[e>>2]|0;la=k[a+368>>2]&255;s=k[c>>2]|0;k[c>>2]=s+1;i[s>>0]=la;la=c+4|0;s=(k[la>>2]|0)+-1|0;k[la>>2]=s;if((s|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=k[e>>2]|0;e=(k[a+372>>2]<<4)+(k[a+376>>2]|0)&255;s=k[c>>2]|0;k[c>>2]=s+1;i[s>>0]=e;e=c+4|0;s=(k[e>>2]|0)+-1|0;k[e>>2]=s;if(s){r=b;return}if(ub[k[c+12>>2]&63](a)|0){r=b;return}c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a);r=b;return}function mk(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+24|0;c=k[b>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=-1;d=c+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=k[b>>2]|0;b=k[c>>2]|0;k[c>>2]=b+1;i[b>>0]=-39;b=c+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if(e)return;if(ub[k[c+12>>2]&63](a)|0)return;c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a);return}function nk(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+24|0;c=k[b>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=-1;d=c+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=k[b>>2]|0;e=k[c>>2]|0;k[c>>2]=e+1;i[e>>0]=-40;e=c+4|0;d=(k[e>>2]|0)+-1|0;k[e>>2]=d;if((d|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}if(k[a+88>>2]|0)qk(a,0)|0;if(k[a+92>>2]|0)qk(a,1)|0;if(k[a+96>>2]|0)qk(a,2)|0;if(k[a+100>>2]|0)qk(a,3)|0;if(!(k[a+212>>2]|0)){if(k[a+120>>2]|0)rk(a,0,0);if(k[a+136>>2]|0)rk(a,0,1);if(k[a+124>>2]|0)rk(a,1,0);if(k[a+140>>2]|0)rk(a,1,1);if(k[a+128>>2]|0)rk(a,2,0);if(k[a+144>>2]|0)rk(a,2,1);if(k[a+132>>2]|0)rk(a,3,0);if(k[a+148>>2]|0)rk(a,3,1)}c=k[b>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=-1;d=c+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=k[b>>2]|0;b=k[c>>2]|0;k[c>>2]=b+1;i[b>>0]=-39;b=c+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if(e)return;if(ub[k[c+12>>2]&63](a)|0)return;c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a);return}function ok(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;if(c>>>0>65533){d=k[a>>2]|0;k[d+20>>2]=12;qb[k[d>>2]&127](a)}d=a+24|0;e=k[d>>2]|0;f=k[e>>2]|0;k[e>>2]=f+1;i[f>>0]=-1;f=e+4|0;g=(k[f>>2]|0)+-1|0;k[f>>2]=g;if((g|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=k[d>>2]|0;g=k[e>>2]|0;k[e>>2]=g+1;i[g>>0]=b;b=e+4|0;g=(k[b>>2]|0)+-1|0;k[b>>2]=g;if((g|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=c+2|0;c=k[d>>2]|0;g=k[c>>2]|0;k[c>>2]=g+1;i[g>>0]=e>>>8;g=c+4|0;b=(k[g>>2]|0)+-1|0;k[g>>2]=b;if((b|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=k[d>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=e;e=c+4|0;d=(k[e>>2]|0)+-1|0;k[e>>2]=d;if(d)return;if(ub[k[c+12>>2]&63](a)|0)return;c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a);return}function pk(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+24>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=b;b=c+4|0;d=(k[b>>2]|0)+-1|0;k[b>>2]=d;if(d)return;if(ub[k[c+12>>2]&63](a)|0)return;c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a);return}function qk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,p=0,q=0;c=k[a+88+(b<<2)>>2]|0;if(!c){d=k[a>>2]|0;k[d+20>>2]=54;k[d+24>>2]=b;qb[k[d>>2]&127](a)}d=a+388|0;e=k[d>>2]|0;if((e|0)<0)f=0;else{g=k[a+384>>2]|0;h=0;l=0;while(1){n=(m[c+(k[g+(h<<2)>>2]<<1)>>1]|0)>255?1:l;if((h|0)<(e|0)){h=h+1|0;l=n}else{f=n;break}}}l=c+128|0;if(k[l>>2]|0)return f|0;h=a+24|0;e=k[h>>2]|0;g=k[e>>2]|0;k[e>>2]=g+1;i[g>>0]=-1;g=e+4|0;n=(k[g>>2]|0)+-1|0;k[g>>2]=n;if((n|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=k[h>>2]|0;n=k[e>>2]|0;k[e>>2]=n+1;i[n>>0]=-37;n=e+4|0;g=(k[n>>2]|0)+-1|0;k[n>>2]=g;if((g|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=(f|0)!=0;g=k[d>>2]|0;n=(e?(g<<1)+2|0:g+1|0)+3|0;g=k[h>>2]|0;o=k[g>>2]|0;k[g>>2]=o+1;i[o>>0]=n>>>8;o=g+4|0;p=(k[o>>2]|0)+-1|0;k[o>>2]=p;if((p|0)==0?(ub[k[g+12>>2]&63](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=25;qb[k[g>>2]&127](a)}g=k[h>>2]|0;p=k[g>>2]|0;k[g>>2]=p+1;i[p>>0]=n;n=g+4|0;p=(k[n>>2]|0)+-1|0;k[n>>2]=p;if((p|0)==0?(ub[k[g+12>>2]&63](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=25;qb[k[g>>2]&127](a)}g=k[h>>2]|0;p=k[g>>2]|0;k[g>>2]=p+1;i[p>>0]=(f<<4)+b;b=g+4|0;p=(k[b>>2]|0)+-1|0;k[b>>2]=p;if((p|0)==0?(ub[k[g+12>>2]&63](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=25;qb[k[g>>2]&127](a)}a:do if((k[d>>2]|0)>=0){g=a+384|0;if(e)q=0;else{p=0;while(1){b=k[h>>2]|0;n=j[c+(k[(k[g>>2]|0)+(p<<2)>>2]<<1)>>1]&255;o=k[b>>2]|0;k[b>>2]=o+1;i[o>>0]=n;n=b+4|0;o=(k[n>>2]|0)+-1|0;k[n>>2]=o;if((o|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}if((p|0)<(k[d>>2]|0))p=p+1|0;else break a}}while(1){p=j[c+(k[(k[g>>2]|0)+(q<<2)>>2]<<1)>>1]|0;b=k[h>>2]|0;o=k[b>>2]|0;k[b>>2]=o+1;i[o>>0]=(p&65535)>>>8;o=b+4|0;n=(k[o>>2]|0)+-1|0;k[o>>2]=n;if((n|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[h>>2]|0;n=k[b>>2]|0;k[b>>2]=n+1;i[n>>0]=p;p=b+4|0;n=(k[p>>2]|0)+-1|0;k[p>>2]=n;if((n|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}if((q|0)<(k[d>>2]|0))q=q+1|0;else break}}while(0);k[l>>2]=1;return f|0}function rk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0;d=(c|0)==0;c=d?b:b+16|0;e=k[(d?a+120+(b<<2)|0:a+136+(b<<2)|0)>>2]|0;if(!e){b=k[a>>2]|0;k[b+20>>2]=52;k[b+24>>2]=c;qb[k[b>>2]&127](a)}b=e+276|0;if(k[b>>2]|0)return;d=a+24|0;f=k[d>>2]|0;g=k[f>>2]|0;k[f>>2]=g+1;i[g>>0]=-1;g=f+4|0;h=(k[g>>2]|0)+-1|0;k[g>>2]=h;if((h|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[d>>2]|0;h=k[f>>2]|0;k[f>>2]=h+1;i[h>>0]=-60;h=f+4|0;g=(k[h>>2]|0)+-1|0;k[h>>2]=g;if((g|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=(l[e+16>>0]|0)+((l[e+15>>0]|0)+((l[e+14>>0]|0)+((l[e+13>>0]|0)+((l[e+12>>0]|0)+((l[e+11>>0]|0)+((l[e+10>>0]|0)+((l[e+9>>0]|0)+((l[e+8>>0]|0)+((l[e+7>>0]|0)+((l[e+6>>0]|0)+((l[e+5>>0]|0)+((l[e+4>>0]|0)+((l[e+3>>0]|0)+((l[e+2>>0]|0)+(l[e+1>>0]|0)))))))))))))))|0;g=f+19|0;h=k[d>>2]|0;j=k[h>>2]|0;k[h>>2]=j+1;i[j>>0]=g>>>8;j=h+4|0;m=(k[j>>2]|0)+-1|0;k[j>>2]=m;if((m|0)==0?(ub[k[h+12>>2]&63](a)|0)==0:0){h=k[a>>2]|0;k[h+20>>2]=25;qb[k[h>>2]&127](a)}h=k[d>>2]|0;m=k[h>>2]|0;k[h>>2]=m+1;i[m>>0]=g;g=h+4|0;m=(k[g>>2]|0)+-1|0;k[g>>2]=m;if((m|0)==0?(ub[k[h+12>>2]&63](a)|0)==0:0){h=k[a>>2]|0;k[h+20>>2]=25;qb[k[h>>2]&127](a)}h=k[d>>2]|0;m=k[h>>2]|0;k[h>>2]=m+1;i[m>>0]=c;c=h+4|0;m=(k[c>>2]|0)+-1|0;k[c>>2]=m;if((m|0)==0?(ub[k[h+12>>2]&63](a)|0)==0:0){h=k[a>>2]|0;k[h+20>>2]=25;qb[k[h>>2]&127](a)}h=1;do{m=i[e+h>>0]|0;c=k[d>>2]|0;g=k[c>>2]|0;k[c>>2]=g+1;i[g>>0]=m;m=c+4|0;g=(k[m>>2]|0)+-1|0;k[m>>2]=g;if((g|0)==0?(ub[k[c+12>>2]&63](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}h=h+1|0}while((h|0)!=17);if((f|0)>0){h=0;do{c=i[e+17+h>>0]|0;g=k[d>>2]|0;m=k[g>>2]|0;k[g>>2]=m+1;i[m>>0]=c;c=g+4|0;m=(k[c>>2]|0)+-1|0;k[c>>2]=m;if((m|0)==0?(ub[k[g+12>>2]&63](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=25;qb[k[g>>2]&127](a)}h=h+1|0}while((h|0)!=(f|0))}k[b>>2]=1;return}function sk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=a+24|0;d=k[c>>2]|0;e=k[d>>2]|0;k[d>>2]=e+1;i[e>>0]=-1;e=d+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=k[c>>2]|0;f=k[d>>2]|0;k[d>>2]=f+1;i[f>>0]=b;b=d+4|0;f=(k[b>>2]|0)+-1|0;k[b>>2]=f;if((f|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=a+76|0;f=((k[d>>2]|0)*3|0)+8|0;b=k[c>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=f>>>8;e=b+4|0;g=(k[e>>2]|0)+-1|0;k[e>>2]=g;if((g|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;g=k[b>>2]|0;k[b>>2]=g+1;i[g>>0]=f;f=b+4|0;g=(k[f>>2]|0)+-1|0;k[f>>2]=g;if((g|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=a+68|0;if(!((k[b>>2]|0)<=65535?(k[a+64>>2]|0)<=65535:0)){g=k[a>>2]|0;k[g+20>>2]=42;k[g+24>>2]=65535;qb[k[g>>2]&127](a)}g=k[c>>2]|0;f=k[a+72>>2]&255;e=k[g>>2]|0;k[g>>2]=e+1;i[e>>0]=f;f=g+4|0;e=(k[f>>2]|0)+-1|0;k[f>>2]=e;if((e|0)==0?(ub[k[g+12>>2]&63](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=25;qb[k[g>>2]&127](a)}g=k[b>>2]|0;b=k[c>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=g>>>8;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[c>>2]|0;f=k[b>>2]|0;k[b>>2]=f+1;i[f>>0]=g;g=b+4|0;f=(k[g>>2]|0)+-1|0;k[g>>2]=f;if((f|0)==0?(ub[k[b+12>>2]&63](a)|0)==0:0){b=k[a>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](a)}b=k[a+64>>2]|0;f=k[c>>2]|0;g=k[f>>2]|0;k[f>>2]=g+1;i[g>>0]=b>>>8;g=f+4|0;e=(k[g>>2]|0)+-1|0;k[g>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=b;b=f+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;e=k[d>>2]&255;b=k[f>>2]|0;k[f>>2]=b+1;i[b>>0]=e;e=f+4|0;b=(k[e>>2]|0)+-1|0;k[e>>2]=b;if((b|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}if((k[d>>2]|0)<=0)return;f=0;b=k[a+84>>2]|0;while(1){e=k[c>>2]|0;g=k[b>>2]&255;h=k[e>>2]|0;k[e>>2]=h+1;i[h>>0]=g;g=e+4|0;h=(k[g>>2]|0)+-1|0;k[g>>2]=h;if((h|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=k[c>>2]|0;h=(k[b+8>>2]<<4)+(k[b+12>>2]|0)&255;g=k[e>>2]|0;k[e>>2]=g+1;i[g>>0]=h;h=e+4|0;g=(k[h>>2]|0)+-1|0;k[h>>2]=g;if((g|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=k[c>>2]|0;g=k[b+16>>2]&255;h=k[e>>2]|0;k[e>>2]=h+1;i[h>>0]=g;g=e+4|0;h=(k[g>>2]|0)+-1|0;k[g>>2]=h;if((h|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}f=f+1|0;if((f|0)>=(k[d>>2]|0))break;else b=b+88|0}return}function tk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=a+28|0;if(!((k[b>>2]|0)>>>0<=16777215?(k[a+32>>2]|0)>>>0<=16777215:0)){c=k[a>>2]|0;k[c+20>>2]=42;k[c+24>>2]=65500;qb[k[c>>2]&127](a)}c=k[a+56>>2]|0;d=a+380|0;e=k[d>>2]|0;f=ha(e,k[a+60>>2]|0)|0;if(c>>>0>=f>>>0){g=ha(k[b>>2]|0,e)|0;k[a+64>>2]=g;g=ha(e,k[a+32>>2]|0)|0;k[a+68>>2]=g;k[a+280>>2]=1;k[a+284>>2]=1;return}if(c<<1>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,2)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,2)|0;k[a+68>>2]=g;k[a+280>>2]=2;k[a+284>>2]=2;return}if((c*3|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,3)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,3)|0;k[a+68>>2]=g;k[a+280>>2]=3;k[a+284>>2]=3;return}if(c<<2>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,4)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,4)|0;k[a+68>>2]=g;k[a+280>>2]=4;k[a+284>>2]=4;return}if((c*5|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,5)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,5)|0;k[a+68>>2]=g;k[a+280>>2]=5;k[a+284>>2]=5;return}if((c*6|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,6)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,6)|0;k[a+68>>2]=g;k[a+280>>2]=6;k[a+284>>2]=6;return}if((c*7|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,7)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,7)|0;k[a+68>>2]=g;k[a+280>>2]=7;k[a+284>>2]=7;return}if(c<<3>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,8)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,8)|0;k[a+68>>2]=g;k[a+280>>2]=8;k[a+284>>2]=8;return}if((c*9|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,9)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,9)|0;k[a+68>>2]=g;k[a+280>>2]=9;k[a+284>>2]=9;return}if((c*10|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,10)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,10)|0;k[a+68>>2]=g;k[a+280>>2]=10;k[a+284>>2]=10;return}if((c*11|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,11)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,11)|0;k[a+68>>2]=g;k[a+280>>2]=11;k[a+284>>2]=11;return}if((c*12|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,12)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,12)|0;k[a+68>>2]=g;k[a+280>>2]=12;k[a+284>>2]=12;return}if((c*13|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,13)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,13)|0;k[a+68>>2]=g;k[a+280>>2]=13;k[a+284>>2]=13;return}if((c*14|0)>>>0>=f>>>0){g=pm(ha(k[b>>2]|0,e)|0,14)|0;k[a+64>>2]=g;g=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,14)|0;k[a+68>>2]=g;k[a+280>>2]=14;k[a+284>>2]=14;return}g=ha(k[b>>2]|0,e)|0;if((c*15|0)>>>0<f>>>0){f=pm(g,16)|0;k[a+64>>2]=f;f=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,16)|0;k[a+68>>2]=f;k[a+280>>2]=16;k[a+284>>2]=16;return}else{f=pm(g,15)|0;k[a+64>>2]=f;f=pm(ha(k[d>>2]|0,k[a+32>>2]|0)|0,15)|0;k[a+68>>2]=f;k[a+280>>2]=15;k[a+284>>2]=15;return}}function uk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=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;c=r;r=r+2608|0;d=c+2560|0;e=c;f=nb[k[k[a+4>>2]>>2]&63](a,1,36)|0;k[a+392>>2]=f;k[f>>2]=35;k[f+4>>2]=36;k[f+8>>2]=37;k[f+16>>2]=0;g=(b|0)==0;if(g){tk(a);b=a+380|0;h=b;i=k[b>>2]|0}else{b=a+280|0;j=k[b>>2]|0;l=a+284|0;if((j|0)==(k[l>>2]|0))m=j;else{n=k[a>>2]|0;k[n+20>>2]=7;k[n+24>>2]=j;k[n+28>>2]=k[l>>2];qb[k[n>>2]&127](a);m=k[b>>2]|0}b=a+380|0;k[b>>2]=m;h=b;i=m}if((i+-1|0)>>>0>15){m=k[a>>2]|0;k[m+20>>2]=7;k[m+24>>2]=i;k[m+28>>2]=k[h>>2];qb[k[m>>2]&127](a);o=k[h>>2]|0}else o=i;switch(o|0){case 2:{k[a+384>>2]=121164;break}case 3:{k[a+384>>2]=121064;break}case 4:{k[a+384>>2]=120936;break}case 5:{k[a+384>>2]=120772;break}case 6:{k[a+384>>2]=120564;break}case 7:{k[a+384>>2]=120304;break}default:k[a+384>>2]=119984}o=k[h>>2]|0;i=(ha(o,o)|0)+-1|0;m=a+388|0;k[m>>2]=(o|0)<8?i:63;i=a+68|0;o=k[i>>2]|0;if(((o|0)!=0?(k[a+64>>2]|0)!=0:0)?(k[a+76>>2]|0)>=1:0)p=o;else{o=k[a>>2]|0;k[o+20>>2]=33;qb[k[o>>2]&127](a);p=k[i>>2]|0}if(!((p|0)<=65500?(k[a+64>>2]|0)<=65500:0)){p=k[a>>2]|0;k[p+20>>2]=42;k[p+24>>2]=65500;qb[k[p>>2]&127](a)}p=k[a+72>>2]|0;if((p+-8|0)>>>0>4){o=k[a>>2]|0;k[o+20>>2]=16;k[o+24>>2]=p;qb[k[o>>2]&127](a)}o=a+76|0;p=k[o>>2]|0;if((p|0)>10){b=k[a>>2]|0;k[b+20>>2]=27;k[b+24>>2]=p;k[b+28>>2]=10;qb[k[b>>2]&127](a);q=k[o>>2]|0}else q=p;p=a+272|0;k[p>>2]=1;b=a+276|0;k[b>>2]=1;n=a+84|0;if((q|0)>0){l=q;q=1;j=1;s=0;t=k[n>>2]|0;while(1){u=t+8|0;v=k[u>>2]|0;w=t+12|0;if((v+-1|0)>>>0<=3?(x=k[w>>2]|0,(x+-1|0)>>>0<=3):0){y=l;z=j;A=v;B=q;C=x}else{x=k[a>>2]|0;k[x+20>>2]=19;qb[k[x>>2]&127](a);y=k[o>>2]|0;z=k[p>>2]|0;A=k[u>>2]|0;B=k[b>>2]|0;C=k[w>>2]|0}j=(z|0)>(A|0)?z:A;k[p>>2]=j;w=(B|0)>(C|0)?B:C;k[b>>2]=w;s=s+1|0;if((s|0)>=(y|0)){D=y;E=w;break}else{l=y;q=w;t=t+88|0}}if((D|0)>0){D=a+280|0;t=a+224|0;q=a+284|0;y=a+64|0;l=0;s=k[n>>2]|0;while(1){k[s+4>>2]=l;n=k[D>>2]|0;C=(k[t>>2]|0)!=0?8:4;a:do if((n|0)>(C|0))F=1;else{B=k[p>>2]|0;j=k[s+8>>2]|0;A=1;while(1){z=A<<1;if((B|0)%(ha(z,j)|0)|0){F=A;break a}if((ha(z,n)|0)>(C|0)){F=z;break}else A=z}}while(0);A=ha(F,n)|0;j=s+36|0;k[j>>2]=A;B=k[q>>2]|0;b:do if((B|0)>(C|0))G=1;else{z=k[b>>2]|0;w=k[s+12>>2]|0;u=1;while(1){x=u<<1;if((z|0)%(ha(x,w)|0)|0){G=u;break b}if((ha(x,B)|0)>(C|0)){G=x;break}else u=x}}while(0);C=ha(G,B)|0;n=s+40|0;k[n>>2]=C;u=C<<1;if((A|0)<=(u|0)){w=A<<1;if((C|0)>(w|0))k[n>>2]=w}else k[j>>2]=u;u=s+8|0;w=ha(k[u>>2]|0,k[y>>2]|0)|0;C=pm(w,ha(k[h>>2]|0,k[p>>2]|0)|0)|0;k[s+28>>2]=C;C=s+12|0;w=ha(k[C>>2]|0,k[i>>2]|0)|0;z=pm(w,ha(k[h>>2]|0,k[b>>2]|0)|0)|0;k[s+32>>2]=z;z=ha(ha(k[u>>2]|0,k[y>>2]|0)|0,k[j>>2]|0)|0;u=pm(z,ha(k[h>>2]|0,k[p>>2]|0)|0)|0;k[s+44>>2]=u;u=ha(ha(k[C>>2]|0,k[i>>2]|0)|0,k[n>>2]|0)|0;n=pm(u,ha(k[h>>2]|0,k[b>>2]|0)|0)|0;k[s+48>>2]=n;k[s+52>>2]=0;l=l+1|0;if((l|0)>=(k[o>>2]|0))break;else s=s+88|0}H=k[b>>2]|0}else H=E}else H=1;E=pm(k[i>>2]|0,ha(k[h>>2]|0,H)|0)|0;k[a+288>>2]=E;E=a+204|0;H=k[E>>2]|0;if(H){h=a+200|0;if((k[h>>2]|0)<1){i=k[a>>2]|0;k[i+20>>2]=20;k[i+24>>2]=0;qb[k[i>>2]&127](a);I=k[E>>2]|0}else I=H;if((k[I+20>>2]|0)==0?(k[I+24>>2]|0)==63:0){k[a+268>>2]=0;H=k[o>>2]|0;if((H|0)>0){qr(d|0,0,((H|0)>1?H<<2:4)|0)|0;J=H;K=0}else{J=H;K=0}}else{k[a+268>>2]=1;H=k[o>>2]|0;if((H|0)>0){qr(e|0,-1,H<<8|0)|0;J=H;K=1}else{J=H;K=1}}if((k[h>>2]|0)<1){L=K;M=J}else{J=a+268|0;K=1;H=I;while(1){I=k[H>>2]|0;if((I+-1|0)>>>0>3){i=k[a>>2]|0;k[i+20>>2]=27;k[i+24>>2]=I;k[i+28>>2]=4;qb[k[i>>2]&127](a)}i=(I|0)>0;if(i){b=0;do{s=k[H+4+(b<<2)>>2]|0;if(!((s|0)>=0?(s|0)<(k[o>>2]|0):0)){l=k[a>>2]|0;k[l+20>>2]=20;k[l+24>>2]=K;qb[k[l>>2]&127](a)}do if((b|0)>0){if((s|0)>(k[H+4+(b+-1<<2)>>2]|0))break;l=k[a>>2]|0;k[l+20>>2]=20;k[l+24>>2]=K;qb[k[l>>2]&127](a)}while(0);b=b+1|0}while((b|0)!=(I|0))}b=k[H+20>>2]|0;j=k[H+24>>2]|0;A=k[H+28>>2]|0;B=k[H+32>>2]|0;do if(!(k[J>>2]|0)){if((j|0)!=63|(A|b|B|0)!=0){s=k[a>>2]|0;k[s+20>>2]=18;k[s+24>>2]=K;qb[k[s>>2]&127](a)}if(i){s=0;do{l=d+(k[H+4+(s<<2)>>2]<<2)|0;if(k[l>>2]|0){p=k[a>>2]|0;k[p+20>>2]=20;k[p+24>>2]=K;qb[k[p>>2]&127](a)}k[l>>2]=1;s=s+1|0}while((s|0)!=(I|0))}}else{if(!(b>>>0<=63?!(B>>>0>10|(A>>>0>10|((j|0)<(b|0)|(j|0)>63))):0)){s=k[a>>2]|0;k[s+20>>2]=18;k[s+24>>2]=K;qb[k[s>>2]&127](a)}s=(b|0)==0;do if(s){if(!j)break;l=k[a>>2]|0;k[l+20>>2]=18;k[l+24>>2]=K;qb[k[l>>2]&127](a)}else{if((I|0)==1)break;l=k[a>>2]|0;k[l+20>>2]=18;k[l+24>>2]=K;qb[k[l>>2]&127](a)}while(0);if(!i)break;l=(A|0)==0;p=(B|0)==(A+-1|0);y=0;do{G=k[H+4+(y<<2)>>2]|0;do if(s)N=0;else{if((k[e+(G<<8)>>2]|0)>=0){N=b;break}q=k[a>>2]|0;k[q+20>>2]=18;k[q+24>>2]=K;qb[k[q>>2]&127](a);N=b}while(0);c:do if((N|0)<=(j|0)){if(!p){if(l)O=N;else{q=N;while(1){F=k[a>>2]|0;k[F+20>>2]=18;k[F+24>>2]=K;qb[k[F>>2]&127](a);k[e+(G<<8)+(q<<2)>>2]=B;if((q|0)<(j|0))q=q+1|0;else break c}}while(1){q=e+(G<<8)+(O<<2)|0;if((k[q>>2]|0)>=0){F=k[a>>2]|0;k[F+20>>2]=18;k[F+24>>2]=K;qb[k[F>>2]&127](a)}k[q>>2]=B;if((O|0)<(j|0))O=O+1|0;else break c}}if(l){q=N;while(1){F=e+(G<<8)+(q<<2)|0;if((k[F>>2]|0)>=1){t=k[a>>2]|0;k[t+20>>2]=18;k[t+24>>2]=K;qb[k[t>>2]&127](a)}k[F>>2]=B;if((q|0)<(j|0))q=q+1|0;else break c}}else P=N;while(1){q=e+(G<<8)+(P<<2)|0;F=k[q>>2]|0;do if((F|0)<0){t=k[a>>2]|0;k[t+20>>2]=18;k[t+24>>2]=K;qb[k[t>>2]&127](a)}else{if((A|0)==(F|0))break;t=k[a>>2]|0;k[t+20>>2]=18;k[t+24>>2]=K;qb[k[t>>2]&127](a)}while(0);k[q>>2]=B;if((P|0)<(j|0))P=P+1|0;else break}}while(0);y=y+1|0}while((y|0)!=(I|0))}while(0);if((K|0)<(k[h>>2]|0)){K=K+1|0;H=H+36|0}else break}L=k[J>>2]|0;M=k[o>>2]|0}J=(M|0)>0;if(!L){if(J){L=M;H=0;while(1){if(!(k[d+(H<<2)>>2]|0)){K=k[a>>2]|0;k[K+20>>2]=46;qb[k[K>>2]&127](a);Q=k[o>>2]|0}else Q=L;H=H+1|0;if((H|0)>=(Q|0))break;else L=Q}}}else if(J){J=M;M=0;while(1){if((k[e+(M<<8)>>2]|0)<0){Q=k[a>>2]|0;k[Q+20>>2]=46;qb[k[Q>>2]&127](a);R=k[o>>2]|0}else R=J;M=M+1|0;if((M|0)>=(R|0))break;else J=R}}if((k[a+380>>2]|0)<8){R=k[E>>2]|0;if((k[h>>2]|0)>0){E=0;J=0;while(1){if((E|0)!=(J|0)){M=R+(J*36|0)|0;o=R+(E*36|0)|0;e=M+36|0;do{k[M>>2]=k[o>>2];M=M+4|0;o=o+4|0}while((M|0)<(e|0))}o=k[m>>2]|0;if((k[R+(J*36|0)+20>>2]|0)>(o|0))S=J;else{M=R+(J*36|0)+24|0;if((k[M>>2]|0)>(o|0))k[M>>2]=o;S=J+1|0}E=E+1|0;if((E|0)>=(k[h>>2]|0)){T=S;break}else J=S}}else T=0;k[h>>2]=T}}else{k[a+268>>2]=0;k[a+200>>2]=1}T=a+216|0;h=k[T>>2]|0;S=a+212|0;do if(!h)if(!(k[S>>2]|0)){if((k[a+268>>2]|0)==0?((k[a+380>>2]|0)+-2|0)>>>0>=6:0){U=0;break}k[T>>2]=1;U=1}else U=0;else{k[S>>2]=0;U=h}while(0);do if(!g){h=f+20|0;if(!U){k[h>>2]=2;break}else{k[h>>2]=1;break}}else k[f+20>>2]=0;while(0);k[f+32>>2]=0;k[f+24>>2]=0;g=k[a+200>>2]|0;if(!U){k[f+28>>2]=g;r=c;return}else{k[f+28>>2]=g<<1;r=c;return}}function vk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=k[a+392>>2]|0;c=b+20|0;a:do switch(k[c>>2]|0){case 0:{yk(a);zk(a);if(!(k[a+208>>2]|0)){qb[k[k[a+412>>2]>>2]&127](a);qb[k[k[a+416>>2]>>2]&127](a);rb[k[k[a+400>>2]>>2]&31](a,0)}qb[k[k[a+420>>2]>>2]&127](a);d=a+216|0;rb[k[k[a+424>>2]>>2]&31](a,k[d>>2]|0);rb[k[k[a+404>>2]>>2]&31](a,(k[b+28>>2]|0)>1?3:0);rb[k[k[a+396>>2]>>2]&31](a,0);e=b+12|0;if(!(k[d>>2]|0)){k[e>>2]=1;break a}else{k[e>>2]=0;break a}break}case 1:{yk(a);zk(a);if((k[a+364>>2]|0)==0?(k[a+372>>2]|0)!=0:0){k[c>>2]=2;e=b+24|0;k[e>>2]=(k[e>>2]|0)+1;f=11;break a}rb[k[k[a+424>>2]>>2]&31](a,1);rb[k[k[a+404>>2]>>2]&31](a,2);k[b+12>>2]=0;break}case 2:{f=11;break}default:{e=k[a>>2]|0;k[e+20>>2]=49;qb[k[e>>2]&127](a)}}while(0);if((f|0)==11){if(!(k[a+216>>2]|0)){yk(a);zk(a)}rb[k[k[a+424>>2]>>2]&31](a,0);rb[k[k[a+404>>2]>>2]&31](a,2);f=a+408|0;if(!(k[b+32>>2]|0))qb[k[(k[f>>2]|0)+4>>2]&127](a);qb[k[(k[f>>2]|0)+8>>2]&127](a);k[b+12>>2]=0}f=k[b+24>>2]|0;c=k[b+28>>2]|0;k[b+16>>2]=(f|0)==(c+-1|0)&1;b=k[a+8>>2]|0;if(!b)return;k[b+12>>2]=f;k[b+16>>2]=c;return}function wk(a){a=a|0;var b=0;k[(k[a+392>>2]|0)+12>>2]=0;b=a+408|0;qb[k[(k[b>>2]|0)+4>>2]&127](a);qb[k[(k[b>>2]|0)+8>>2]&127](a);return}function xk(a){a=a|0;var b=0,c=0,d=0;b=k[a+392>>2]|0;qb[k[(k[a+424>>2]|0)+8>>2]&127](a);c=b+20|0;switch(k[c>>2]|0){case 0:{k[c>>2]=2;if(!(k[a+216>>2]|0)){d=b+32|0;k[d>>2]=(k[d>>2]|0)+1}break}case 1:{k[c>>2]=2;break}case 2:{if(k[a+216>>2]|0)k[c>>2]=1;c=b+32|0;k[c>>2]=(k[c>>2]|0)+1;break}default:{}}c=b+24|0;k[c>>2]=(k[c>>2]|0)+1;return}function yk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=k[a+204>>2]|0;if(!b){c=a+76|0;d=k[c>>2]|0;if((d|0)>4){e=k[a>>2]|0;k[e+20>>2]=27;k[e+24>>2]=d;k[e+28>>2]=4;qb[k[e>>2]&127](a);f=k[c>>2]|0}else f=d;k[a+292>>2]=f;if((f|0)>0){f=a+84|0;d=0;do{k[a+296+(d<<2)>>2]=(k[f>>2]|0)+(d*88|0);d=d+1|0}while((d|0)<(k[c>>2]|0))}}else{c=k[(k[a+392>>2]|0)+32>>2]|0;d=k[b+(c*36|0)>>2]|0;k[a+292>>2]=d;if((d|0)>0){f=a+84|0;e=0;do{k[a+296+(e<<2)>>2]=(k[f>>2]|0)+((k[b+(c*36|0)+4+(e<<2)>>2]|0)*88|0);e=e+1|0}while((e|0)<(d|0))}if(k[a+268>>2]|0){k[a+364>>2]=k[b+(c*36|0)+20>>2];k[a+368>>2]=k[b+(c*36|0)+24>>2];k[a+372>>2]=k[b+(c*36|0)+28>>2];k[a+376>>2]=k[b+(c*36|0)+32>>2];return}}k[a+364>>2]=0;c=k[a+380>>2]|0;b=(ha(c,c)|0)+-1|0;k[a+368>>2]=b;k[a+372>>2]=0;k[a+376>>2]=0;return}function zk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;b=a+292|0;c=k[b>>2]|0;a:do if((c|0)!=1){if((c+-1|0)>>>0>3){d=k[a>>2]|0;k[d+20>>2]=27;k[d+24>>2]=c;k[d+28>>2]=4;qb[k[d>>2]&127](a)}d=a+380|0;e=pm(k[a+64>>2]|0,ha(k[d>>2]|0,k[a+272>>2]|0)|0)|0;k[a+312>>2]=e;e=pm(k[a+68>>2]|0,ha(k[d>>2]|0,k[a+276>>2]|0)|0)|0;k[a+316>>2]=e;e=a+320|0;k[e>>2]=0;if((k[b>>2]|0)>0){d=0;f=0;while(1){g=k[a+296+(f<<2)>>2]|0;h=k[g+8>>2]|0;k[g+56>>2]=h;i=k[g+12>>2]|0;k[g+60>>2]=i;j=ha(h,i)|0;k[g+64>>2]=j;l=ha(k[g+36>>2]|0,h)|0;k[g+68>>2]=l;l=((k[g+28>>2]|0)>>>0)%(h>>>0)|0;k[g+72>>2]=(l|0)==0?h:l;l=((k[g+32>>2]|0)>>>0)%(i>>>0)|0;k[g+76>>2]=(l|0)==0?i:l;if((d+j|0)>10){l=k[a>>2]|0;k[l+20>>2]=14;qb[k[l>>2]&127](a)}if((j|0)>0){l=j;while(1){j=k[e>>2]|0;k[e>>2]=j+1;k[a+324+(j<<2)>>2]=f;if((l|0)>1)l=l+-1|0;else break}}l=f+1|0;if((l|0)>=(k[b>>2]|0))break a;d=k[e>>2]|0;f=l}}}else{f=k[a+296>>2]|0;k[a+312>>2]=k[f+28>>2];e=k[f+32>>2]|0;k[a+316>>2]=e;k[f+56>>2]=1;k[f+60>>2]=1;k[f+64>>2]=1;k[f+68>>2]=k[f+36>>2];k[f+72>>2]=1;d=k[f+12>>2]|0;l=(e>>>0)%(d>>>0)|0;k[f+76>>2]=(l|0)==0?d:l;k[a+320>>2]=1;k[a+324>>2]=0}while(0);b=k[a+240>>2]|0;if((b|0)<=0)return;c=ha(k[a+312>>2]|0,b)|0;k[a+236>>2]=(c|0)<65535?c:65535;return}function Ak(a){a=a|0;var b=0;b=k[a+4>>2]|0;if(!b)return;rb[k[b+36>>2]&31](a,1);b=a+20|0;if(!(k[a+16>>2]|0)){k[b>>2]=100;return}else{k[b>>2]=200;k[a+312>>2]=0;return}}function Bk(a){a=a|0;var b=0,c=0;b=a+4|0;c=k[b>>2]|0;if(c)qb[k[c+40>>2]&127](a);k[b>>2]=0;k[a+20>>2]=0;return}function Ck(a){a=a|0;var b=0;b=nb[k[k[a+4>>2]>>2]&63](a,0,132)|0;k[b+128>>2]=0;return b|0}function Dk(a){a=a|0;var b=0;b=nb[k[k[a+4>>2]>>2]&63](a,0,280)|0;k[b+276>>2]=0;return b|0}function Ek(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0;d=a+20|0;e=k[d>>2]|0;if((e|0)!=100){f=k[a>>2]|0;k[f+20>>2]=21;k[f+24>>2]=e;qb[k[f>>2]&127](a)}f=a+88|0;e=k[f>>2]|0;if(!e){g=Ck(a)|0;k[f>>2]=g;h=g}else h=e;e=(c|0)==0;if(e){c=0;do{g=((ha(k[118948+(c<<2)>>2]|0,b)|0)+50|0)/100|0;f=(g|0)<1?1:g;j[h+(c<<1)>>1]=(f|0)>32767?32767:f&65535;c=c+1|0}while((c|0)!=64)}else{c=0;do{f=((ha(k[118948+(c<<2)>>2]|0,b)|0)+50|0)/100|0;g=(f|0)<1?1:f;f=(g|0)>32767?32767:g;j[h+(c<<1)>>1]=(f|0)>255?255:f&65535;c=c+1|0}while((c|0)!=64)}k[h+128>>2]=0;h=k[d>>2]|0;if((h|0)!=100){d=k[a>>2]|0;k[d+20>>2]=21;k[d+24>>2]=h;qb[k[d>>2]&127](a)}d=a+92|0;h=k[d>>2]|0;if(!h){c=Ck(a)|0;k[d>>2]=c;i=c}else i=h;if(e){e=0;do{h=((ha(k[119204+(e<<2)>>2]|0,b)|0)+50|0)/100|0;c=(h|0)<1?1:h;j[i+(e<<1)>>1]=(c|0)>32767?32767:c&65535;e=e+1|0}while((e|0)!=64);l=i+128|0;k[l>>2]=0;return}else{e=0;do{c=((ha(k[119204+(e<<2)>>2]|0,b)|0)+50|0)/100|0;h=(c|0)<1?1:c;c=(h|0)>32767?32767:h;j[i+(e<<1)>>1]=(c|0)>255?255:c&65535;e=e+1|0}while((e|0)!=64);l=i+128|0;k[l>>2]=0;return}}function Fk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=(b|0)<1?1:b;b=(d|0)>100?100:d;if((b|0)<50)e=5e3/(b|0)|0;else e=200-(b<<1)|0;Ek(a,e,c);return}
function Gk(a){a=a|0;var b=0,c=0;b=k[a+20>>2]|0;if((b|0)!=100){c=k[a>>2]|0;k[c+20>>2]=21;k[c+24>>2]=b;qb[k[c>>2]&127](a)}c=a+84|0;if(!(k[c>>2]|0)){b=nb[k[k[a+4>>2]>>2]&63](a,0,880)|0;k[c>>2]=b}k[a+56>>2]=1;k[a+60>>2]=1;b=a+72|0;k[b>>2]=8;Ek(a,50,1);Jk(a,a+120|0,155857,155874);Jk(a,a+136|0,155886,155903);Jk(a,a+124|0,156065,156082);Jk(a,a+140|0,156094,156111);i[a+152>>0]=0;i[a+168>>0]=1;i[a+184>>0]=5;i[a+153>>0]=0;i[a+169>>0]=1;i[a+185>>0]=5;i[a+154>>0]=0;i[a+170>>0]=1;i[a+186>>0]=5;i[a+155>>0]=0;i[a+171>>0]=1;i[a+187>>0]=5;i[a+156>>0]=0;i[a+172>>0]=1;i[a+188>>0]=5;i[a+157>>0]=0;i[a+173>>0]=1;i[a+189>>0]=5;i[a+158>>0]=0;i[a+174>>0]=1;i[a+190>>0]=5;i[a+159>>0]=0;i[a+175>>0]=1;i[a+191>>0]=5;i[a+160>>0]=0;i[a+176>>0]=1;i[a+192>>0]=5;i[a+161>>0]=0;i[a+177>>0]=1;i[a+193>>0]=5;i[a+162>>0]=0;i[a+178>>0]=1;i[a+194>>0]=5;i[a+163>>0]=0;i[a+179>>0]=1;i[a+195>>0]=5;i[a+164>>0]=0;i[a+180>>0]=1;i[a+196>>0]=5;i[a+165>>0]=0;i[a+181>>0]=1;i[a+197>>0]=5;i[a+166>>0]=0;i[a+182>>0]=1;i[a+198>>0]=5;i[a+167>>0]=0;i[a+183>>0]=1;i[a+199>>0]=5;k[a+204>>2]=0;k[a+200>>2]=0;k[a+208>>2]=0;k[a+212>>2]=(k[b>>2]|0)>8&1;k[a+216>>2]=0;k[a+220>>2]=0;k[a+224>>2]=1;b=a+228|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;i[a+248>>0]=1;i[a+249>>0]=1;i[a+250>>0]=0;j[a+252>>1]=1;j[a+254>>1]=1;k[a+260>>2]=0;Hk(a);return}function Hk(a){a=a|0;var b=0,c=0,d=0,e=0;switch(k[a+40>>2]|0){case 0:{b=k[a+20>>2]|0;if((b|0)!=100){c=k[a>>2]|0;k[c+20>>2]=21;k[c+24>>2]=b;qb[k[c>>2]&127](a)}k[a+80>>2]=0;k[a+244>>2]=0;k[a+256>>2]=0;c=k[a+36>>2]|0;b=a+76|0;k[b>>2]=c;if((c+-1|0)>>>0>9){d=k[a>>2]|0;k[d+20>>2]=27;k[d+24>>2]=c;k[d+28>>2]=10;qb[k[d>>2]&127](a);e=k[b>>2]|0}else e=c;if((e|0)<=0)return;c=k[a+84>>2]|0;b=0;do{k[c+(b*88|0)>>2]=b;k[c+(b*88|0)+8>>2]=1;k[c+(b*88|0)+12>>2]=1;k[c+(b*88|0)+16>>2]=0;k[c+(b*88|0)+20>>2]=0;k[c+(b*88|0)+24>>2]=0;b=b+1|0}while((b|0)!=(e|0));return}case 1:{e=k[a+20>>2]|0;if((e|0)!=100){b=k[a>>2]|0;k[b+20>>2]=21;k[b+24>>2]=e;qb[k[b>>2]&127](a)}k[a+80>>2]=1;k[a+256>>2]=0;k[a+244>>2]=1;k[a+76>>2]=1;b=k[a+84>>2]|0;k[b>>2]=1;k[b+8>>2]=1;k[b+12>>2]=1;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=0;return}case 2:{b=k[a+20>>2]|0;if((b|0)!=100){e=k[a>>2]|0;k[e+20>>2]=21;k[e+24>>2]=b;qb[k[e>>2]&127](a)}k[a+80>>2]=3;k[a+256>>2]=0;k[a+244>>2]=1;k[a+76>>2]=3;e=k[a+84>>2]|0;k[e>>2]=1;k[e+8>>2]=2;k[e+12>>2]=2;k[e+16>>2]=0;k[e+20>>2]=0;k[e+24>>2]=0;k[e+88>>2]=2;k[e+96>>2]=1;k[e+100>>2]=1;k[e+104>>2]=1;k[e+108>>2]=1;k[e+112>>2]=1;k[e+176>>2]=3;k[e+184>>2]=1;k[e+188>>2]=1;k[e+192>>2]=1;k[e+196>>2]=1;k[e+200>>2]=1;return}case 3:{e=k[a+20>>2]|0;if((e|0)!=100){b=k[a>>2]|0;k[b+20>>2]=21;k[b+24>>2]=e;qb[k[b>>2]&127](a)}k[a+80>>2]=3;k[a+256>>2]=0;k[a+244>>2]=1;k[a+76>>2]=3;b=k[a+84>>2]|0;k[b>>2]=1;k[b+8>>2]=2;k[b+12>>2]=2;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=0;k[b+88>>2]=2;k[b+96>>2]=1;k[b+100>>2]=1;k[b+104>>2]=1;k[b+108>>2]=1;k[b+112>>2]=1;k[b+176>>2]=3;k[b+184>>2]=1;k[b+188>>2]=1;k[b+192>>2]=1;k[b+196>>2]=1;k[b+200>>2]=1;return}case 4:{b=k[a+20>>2]|0;if((b|0)!=100){e=k[a>>2]|0;k[e+20>>2]=21;k[e+24>>2]=b;qb[k[e>>2]&127](a)}k[a+80>>2]=4;k[a+244>>2]=0;k[a+256>>2]=1;k[a+76>>2]=4;e=k[a+84>>2]|0;k[e>>2]=67;k[e+8>>2]=1;k[e+12>>2]=1;k[e+16>>2]=0;k[e+20>>2]=0;k[e+24>>2]=0;k[e+88>>2]=77;k[e+96>>2]=1;k[e+100>>2]=1;k[e+104>>2]=0;k[e+108>>2]=0;k[e+112>>2]=0;k[e+176>>2]=89;k[e+184>>2]=1;k[e+188>>2]=1;k[e+192>>2]=0;k[e+196>>2]=0;k[e+200>>2]=0;k[e+264>>2]=75;k[e+272>>2]=1;k[e+276>>2]=1;k[e+280>>2]=0;k[e+284>>2]=0;k[e+288>>2]=0;return}case 5:{e=k[a+20>>2]|0;if((e|0)!=100){b=k[a>>2]|0;k[b+20>>2]=21;k[b+24>>2]=e;qb[k[b>>2]&127](a)}k[a+80>>2]=5;k[a+244>>2]=0;k[a+256>>2]=1;k[a+76>>2]=4;b=k[a+84>>2]|0;k[b>>2]=1;k[b+8>>2]=2;k[b+12>>2]=2;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=0;k[b+88>>2]=2;k[b+96>>2]=1;k[b+100>>2]=1;k[b+104>>2]=1;k[b+108>>2]=1;k[b+112>>2]=1;k[b+176>>2]=3;k[b+184>>2]=1;k[b+188>>2]=1;k[b+192>>2]=1;k[b+196>>2]=1;k[b+200>>2]=1;k[b+264>>2]=4;k[b+272>>2]=2;k[b+276>>2]=2;k[b+280>>2]=0;k[b+284>>2]=0;k[b+288>>2]=0;return}case 6:{b=k[a+20>>2]|0;if((b|0)!=100){e=k[a>>2]|0;k[e+20>>2]=21;k[e+24>>2]=b;qb[k[e>>2]&127](a)}k[a+80>>2]=6;k[a+256>>2]=0;k[a+244>>2]=1;i[a+248>>0]=2;k[a+76>>2]=3;e=k[a+84>>2]|0;k[e>>2]=114;k[e+8>>2]=1;k[e+12>>2]=1;k[e+16>>2]=0;b=(k[a+260>>2]|0)==1&1;k[e+20>>2]=b;k[e+24>>2]=b;k[e+88>>2]=103;k[e+96>>2]=1;k[e+100>>2]=1;k[e+104>>2]=0;k[e+108>>2]=0;k[e+112>>2]=0;k[e+176>>2]=98;k[e+184>>2]=1;k[e+188>>2]=1;k[e+192>>2]=0;k[e+196>>2]=b;k[e+200>>2]=b;return}case 7:{b=k[a+20>>2]|0;if((b|0)!=100){e=k[a>>2]|0;k[e+20>>2]=21;k[e+24>>2]=b;qb[k[e>>2]&127](a)}k[a+80>>2]=7;k[a+256>>2]=0;k[a+244>>2]=1;i[a+248>>0]=2;k[a+76>>2]=3;e=k[a+84>>2]|0;k[e>>2]=1;k[e+8>>2]=2;k[e+12>>2]=2;k[e+16>>2]=0;k[e+20>>2]=0;k[e+24>>2]=0;k[e+88>>2]=34;k[e+96>>2]=1;k[e+100>>2]=1;k[e+104>>2]=1;k[e+108>>2]=1;k[e+112>>2]=1;k[e+176>>2]=35;k[e+184>>2]=1;k[e+188>>2]=1;k[e+192>>2]=1;k[e+196>>2]=1;k[e+200>>2]=1;return}default:{e=k[a>>2]|0;k[e+20>>2]=10;qb[k[e>>2]&127](a);return}}}function Ik(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=k[a+20>>2]|0;if((c|0)!=100){d=k[a>>2]|0;k[d+20>>2]=21;k[d+24>>2]=c;qb[k[d>>2]&127](a)}k[a+80>>2]=b;d=a+244|0;k[d>>2]=0;c=a+256|0;k[c>>2]=0;switch(b|0){case 0:{b=k[a+36>>2]|0;e=a+76|0;k[e>>2]=b;if((b+-1|0)>>>0>9){f=k[a>>2]|0;k[f+20>>2]=27;k[f+24>>2]=b;k[f+28>>2]=10;qb[k[f>>2]&127](a);g=k[e>>2]|0}else g=b;if((g|0)<=0)return;b=k[a+84>>2]|0;e=0;do{k[b+(e*88|0)>>2]=e;k[b+(e*88|0)+8>>2]=1;k[b+(e*88|0)+12>>2]=1;k[b+(e*88|0)+16>>2]=0;k[b+(e*88|0)+20>>2]=0;k[b+(e*88|0)+24>>2]=0;e=e+1|0}while((e|0)<(g|0));return}case 1:{k[d>>2]=1;k[a+76>>2]=1;g=k[a+84>>2]|0;k[g>>2]=1;k[g+8>>2]=1;k[g+12>>2]=1;k[g+16>>2]=0;k[g+20>>2]=0;k[g+24>>2]=0;return}case 2:{k[c>>2]=1;k[a+76>>2]=3;g=k[a+84>>2]|0;k[g>>2]=82;k[g+8>>2]=1;k[g+12>>2]=1;k[g+16>>2]=0;e=(k[a+260>>2]|0)==1&1;k[g+20>>2]=e;k[g+24>>2]=e;k[g+88>>2]=71;k[g+96>>2]=1;k[g+100>>2]=1;k[g+104>>2]=0;k[g+108>>2]=0;k[g+112>>2]=0;k[g+176>>2]=66;k[g+184>>2]=1;k[g+188>>2]=1;k[g+192>>2]=0;k[g+196>>2]=e;k[g+200>>2]=e;return}case 3:{k[d>>2]=1;k[a+76>>2]=3;e=k[a+84>>2]|0;k[e>>2]=1;k[e+8>>2]=2;k[e+12>>2]=2;k[e+16>>2]=0;k[e+20>>2]=0;k[e+24>>2]=0;k[e+88>>2]=2;k[e+96>>2]=1;k[e+100>>2]=1;k[e+104>>2]=1;k[e+108>>2]=1;k[e+112>>2]=1;k[e+176>>2]=3;k[e+184>>2]=1;k[e+188>>2]=1;k[e+192>>2]=1;k[e+196>>2]=1;k[e+200>>2]=1;return}case 4:{k[c>>2]=1;k[a+76>>2]=4;e=k[a+84>>2]|0;k[e>>2]=67;k[e+8>>2]=1;k[e+12>>2]=1;k[e+16>>2]=0;k[e+20>>2]=0;k[e+24>>2]=0;k[e+88>>2]=77;k[e+96>>2]=1;k[e+100>>2]=1;k[e+104>>2]=0;k[e+108>>2]=0;k[e+112>>2]=0;k[e+176>>2]=89;k[e+184>>2]=1;k[e+188>>2]=1;k[e+192>>2]=0;k[e+196>>2]=0;k[e+200>>2]=0;k[e+264>>2]=75;k[e+272>>2]=1;k[e+276>>2]=1;k[e+280>>2]=0;k[e+284>>2]=0;k[e+288>>2]=0;return}case 5:{k[c>>2]=1;k[a+76>>2]=4;c=k[a+84>>2]|0;k[c>>2]=1;k[c+8>>2]=2;k[c+12>>2]=2;k[c+16>>2]=0;k[c+20>>2]=0;k[c+24>>2]=0;k[c+88>>2]=2;k[c+96>>2]=1;k[c+100>>2]=1;k[c+104>>2]=1;k[c+108>>2]=1;k[c+112>>2]=1;k[c+176>>2]=3;k[c+184>>2]=1;k[c+188>>2]=1;k[c+192>>2]=1;k[c+196>>2]=1;k[c+200>>2]=1;k[c+264>>2]=4;k[c+272>>2]=2;k[c+276>>2]=2;k[c+280>>2]=0;k[c+284>>2]=0;k[c+288>>2]=0;return}case 6:{k[d>>2]=1;i[a+248>>0]=2;k[a+76>>2]=3;c=k[a+84>>2]|0;k[c>>2]=114;k[c+8>>2]=1;k[c+12>>2]=1;k[c+16>>2]=0;e=(k[a+260>>2]|0)==1&1;k[c+20>>2]=e;k[c+24>>2]=e;k[c+88>>2]=103;k[c+96>>2]=1;k[c+100>>2]=1;k[c+104>>2]=0;k[c+108>>2]=0;k[c+112>>2]=0;k[c+176>>2]=98;k[c+184>>2]=1;k[c+188>>2]=1;k[c+192>>2]=0;k[c+196>>2]=e;k[c+200>>2]=e;return}case 7:{k[d>>2]=1;i[a+248>>0]=2;k[a+76>>2]=3;d=k[a+84>>2]|0;k[d>>2]=1;k[d+8>>2]=2;k[d+12>>2]=2;k[d+16>>2]=0;k[d+20>>2]=0;k[d+24>>2]=0;k[d+88>>2]=34;k[d+96>>2]=1;k[d+100>>2]=1;k[d+104>>2]=1;k[d+108>>2]=1;k[d+112>>2]=1;k[d+176>>2]=35;k[d+184>>2]=1;k[d+188>>2]=1;k[d+192>>2]=1;k[d+196>>2]=1;k[d+200>>2]=1;return}default:{d=k[a>>2]|0;k[d+20>>2]=11;qb[k[d>>2]&127](a);return}}}function Jk(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,j=0,m=0,n=0;e=k[b>>2]|0;if(!e){f=Dk(a)|0;k[b>>2]=f;g=f}else g=e;e=g;g=c;f=e+17|0;do{i[e>>0]=i[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(f|0));g=(l[c+16>>0]|0)+((l[c+15>>0]|0)+((l[c+14>>0]|0)+((l[c+13>>0]|0)+((l[c+12>>0]|0)+((l[c+11>>0]|0)+((l[c+10>>0]|0)+((l[c+9>>0]|0)+((l[c+8>>0]|0)+((l[c+7>>0]|0)+((l[c+6>>0]|0)+((l[c+5>>0]|0)+((l[c+4>>0]|0)+((l[c+3>>0]|0)+((l[c+2>>0]|0)+(l[c+1>>0]|0)))))))))))))))|0;if((g+-1|0)>>>0<=255){h=k[b>>2]|0;j=h+17|0;wr(j|0,d|0,g|0)|0;m=k[b>>2]|0;n=m+276|0;k[n>>2]=0;return}c=k[a>>2]|0;k[c+20>>2]=9;qb[k[c>>2]&127](a);h=k[b>>2]|0;j=h+17|0;wr(j|0,d|0,g|0)|0;m=k[b>>2]|0;n=m+276|0;k[n>>2]=0;return}function Kk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;if(!b)c=a;else{b=k[a>>2]|0;k[b+20>>2]=3;qb[k[b>>2]&127](a);c=a}b=a+4|0;d=nb[k[k[b>>2]>>2]&63](c,1,64)|0;k[a+400>>2]=d;k[d>>2]=9;e=d+4|0;if(!(k[(k[a+416>>2]|0)+8>>2]|0)){k[e>>2]=2;f=a+76|0;if((k[f>>2]|0)<=0)return;g=a+280|0;h=a+272|0;i=a+276|0;j=d+8|0;l=0;m=k[a+84>>2]|0;while(1){n=ha(k[g>>2]|0,k[m+28>>2]|0)|0;o=ha(n,k[h>>2]|0)|0;n=xb[k[(k[b>>2]|0)+8>>2]&63](c,1,(o|0)/(k[m+8>>2]|0)|0,k[i>>2]|0)|0;k[j+(l<<2)>>2]=n;l=l+1|0;if((l|0)>=(k[f>>2]|0))break;else m=m+88|0}return}k[e>>2]=1;e=k[a+276>>2]|0;m=a+76|0;f=ha(e*20|0,k[m>>2]|0)|0;l=nb[k[k[b>>2]>>2]&63](c,1,f)|0;f=k[a+84>>2]|0;if((k[m>>2]|0)<=0)return;j=a+280|0;i=a+272|0;a=e*3|0;h=e*12|0;g=e*5|0;n=e<<1;o=e<<2;if((e|0)>0){p=0;q=f;r=l}else{s=0;t=f;f=l;while(1){l=ha(k[j>>2]|0,k[t+28>>2]|0)|0;u=ha(l,k[i>>2]|0)|0;l=f+(e<<2)|0;wr(l|0,xb[k[(k[b>>2]|0)+8>>2]&63](c,1,(u|0)/(k[t+8>>2]|0)|0,a)|0,h|0)|0;k[d+8+(s<<2)>>2]=l;s=s+1|0;if((s|0)>=(k[m>>2]|0))break;else{t=t+88|0;f=f+(g<<2)|0}}return}while(1){f=ha(k[j>>2]|0,k[q+28>>2]|0)|0;t=ha(f,k[i>>2]|0)|0;f=xb[k[(k[b>>2]|0)+8>>2]&63](c,1,(t|0)/(k[q+8>>2]|0)|0,a)|0;t=r+(e<<2)|0;wr(t|0,f|0,h|0)|0;s=0;do{k[r+(s<<2)>>2]=k[f+(s+n<<2)>>2];k[r+(s+o<<2)>>2]=k[f+(s<<2)>>2];s=s+1|0}while((s|0)!=(e|0));k[d+8+(p<<2)>>2]=t;p=p+1|0;if((p|0)>=(k[m>>2]|0))break;else{q=q+88|0;r=r+(g<<2)|0}}return}function Lk(a,b){a=a|0;b=b|0;var c=0;c=k[a+400>>2]|0;if(b){b=k[a>>2]|0;k[b+20>>2]=3;qb[k[b>>2]&127](a)}k[c+48>>2]=k[a+32>>2];k[c+52>>2]=0;k[c+56>>2]=0;k[c+60>>2]=k[a+276>>2]<<1;return}function Mk(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,l=0,m=0,n=0,o=0,p=0,q=0,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;h=k[a+400>>2]|0;i=a+276|0;j=(k[i>>2]|0)*3|0;l=h+48|0;if((k[f>>2]|0)>>>0>=g>>>0)return;m=h+60|0;n=h+52|0;o=a+412|0;p=h+8|0;q=a+32|0;r=a+76|0;s=a+28|0;t=a+416|0;u=h+56|0;while(1){v=k[c>>2]|0;if(v>>>0>=d>>>0){if(k[l>>2]|0){w=29;break}x=k[n>>2]|0;y=k[m>>2]|0;if((x|0)<(y|0)){z=k[r>>2]|0;if((z|0)>0){A=x;B=y;C=z;z=0;while(1){D=k[h+8+(z<<2)>>2]|0;E=k[s>>2]|0;if((A|0)<(B|0)){F=A+-1|0;G=A;do{rm(D,F,D,G,1,E);G=G+1|0}while((G|0)!=(B|0));H=k[r>>2]|0}else H=C;G=z+1|0;if((G|0)>=(H|0))break;A=k[n>>2]|0;B=k[m>>2]|0;C=H;z=G}I=k[m>>2]|0}else I=y;k[n>>2]=I;w=25}else{J=x;K=y;w=24}}else{z=d-v|0;C=k[n>>2]|0;B=(k[m>>2]|0)-C|0;A=B>>>0<z>>>0?B:z;pb[k[(k[o>>2]|0)+4>>2]&63](a,b+(v<<2)|0,p,C,A);if((k[l>>2]|0)==(k[q>>2]|0)?(C=k[r>>2]|0,(C|0)>0):0){z=k[i>>2]|0;B=C;C=0;while(1){if((z|0)<1){L=B;M=z}else{G=h+8+(C<<2)|0;E=1;while(1){D=k[G>>2]|0;rm(D,0,D,0-E|0,1,k[s>>2]|0);D=k[i>>2]|0;if((E|0)<(D|0))E=E+1|0;else{N=D;break}}L=k[r>>2]|0;M=N}C=C+1|0;if((C|0)>=(L|0))break;else{z=M;B=L}}}k[c>>2]=(k[c>>2]|0)+A;B=(k[n>>2]|0)+A|0;k[n>>2]=B;k[l>>2]=(k[l>>2]|0)-A;J=B;K=k[m>>2]|0;w=24}if((w|0)==24?(w=0,(J|0)==(K|0)):0)w=25;if((w|0)==25){w=0;pb[k[(k[t>>2]|0)+4>>2]&63](a,p,k[u>>2]|0,e,k[f>>2]|0);k[f>>2]=(k[f>>2]|0)+1;B=k[i>>2]|0;z=(k[u>>2]|0)+B|0;k[u>>2]=(z|0)<(j|0)?z:0;z=k[n>>2]|0;if((z|0)<(j|0))O=z;else{k[n>>2]=0;O=0}k[m>>2]=B+O}if((k[f>>2]|0)>>>0>=g>>>0){w=29;break}}if((w|0)==29)return}function Nk(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,l=0,m=0,n=0,o=0,p=0,q=0,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;h=k[a+400>>2]|0;i=k[c>>2]|0;if(i>>>0>=d>>>0)return;j=a+276|0;l=h+52|0;m=a+412|0;n=h+8|0;o=h+48|0;p=a+76|0;q=a+28|0;r=a+416|0;s=i;while(1){if((k[f>>2]|0)>>>0>=g>>>0){t=28;break}i=d-s|0;u=k[l>>2]|0;v=(k[j>>2]|0)-u|0;w=v>>>0<i>>>0?v:i;pb[k[(k[m>>2]|0)+4>>2]&63](a,b+(s<<2)|0,n,u,w);k[c>>2]=(k[c>>2]|0)+w;u=(k[l>>2]|0)+w|0;k[l>>2]=u;i=k[o>>2]|0;k[o>>2]=i-w;v=k[j>>2]|0;if(!((i|0)==(w|0)&(u|0)<(v|0))){if((u|0)==(v|0))t=15}else{w=k[p>>2]|0;if((w|0)>0){i=u;u=v;x=w;w=0;while(1){y=k[h+8+(w<<2)>>2]|0;z=k[q>>2]|0;if((i|0)<(u|0)){A=i+-1|0;B=i;do{rm(y,A,y,B,1,z);B=B+1|0}while((B|0)!=(u|0));C=k[p>>2]|0}else C=x;B=w+1|0;if((B|0)>=(C|0))break;i=k[l>>2]|0;u=k[j>>2]|0;x=C;w=B}D=k[j>>2]|0}else D=v;k[l>>2]=D;t=15}if((t|0)==15){t=0;pb[k[(k[r>>2]|0)+4>>2]&63](a,n,0,e,k[f>>2]|0);k[l>>2]=0;k[f>>2]=(k[f>>2]|0)+1}if((k[o>>2]|0)==0?(w=k[f>>2]|0,w>>>0<g>>>0):0){E=w;t=19;break}s=k[c>>2]|0;if(s>>>0>=d>>>0){t=28;break}}if((t|0)==19){d=k[p>>2]|0;a:do if((d|0)>0){s=a+284|0;c=E;o=d;l=0;n=k[a+84>>2]|0;while(1){r=ha(k[n+40>>2]|0,k[n+12>>2]|0)|0;D=(r|0)/(k[s>>2]|0)|0;r=k[e+(l<<2)>>2]|0;j=ha(k[n+36>>2]|0,k[n+28>>2]|0)|0;C=ha(c,D)|0;q=ha(D,g)|0;if((C|0)<(q|0)){D=C+-1|0;h=C;do{rm(r,D,r,h,1,j);h=h+1|0}while((h|0)!=(q|0));F=k[p>>2]|0}else F=o;q=l+1|0;if((q|0)>=(F|0))break a;c=k[f>>2]|0;o=F;l=q;n=n+88|0}}while(0);k[f>>2]=g;return}else if((t|0)==28)return}function Ok(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;b=nb[k[k[a+4>>2]>>2]&63](a,1,112)|0;k[a+416>>2]=b;k[b>>2]=38;k[b+4>>2]=1;c=b+8|0;k[c>>2]=0;if(k[a+220>>2]|0){d=k[a>>2]|0;k[d+20>>2]=26;qb[k[d>>2]&127](a)}d=a+76|0;if((k[d>>2]|0)<=0)return;e=a+280|0;f=a+284|0;g=a+272|0;h=a+276|0;j=b+52|0;l=a+228|0;m=b+12|0;n=0;o=k[a+84>>2]|0;p=1;while(1){q=ha(k[o+36>>2]|0,k[o+8>>2]|0)|0;r=(q|0)/(k[e>>2]|0)|0;q=ha(k[o+40>>2]|0,k[o+12>>2]|0)|0;s=(q|0)/(k[f>>2]|0)|0;q=k[g>>2]|0;t=k[h>>2]|0;k[j+(n<<2)>>2]=s;u=(t|0)==(s|0);do if((q|0)==(r|0)&u){v=m+(n<<2)|0;if(!(k[l>>2]|0)){k[v>>2]=6;w=p;break}else{k[v>>2]=5;k[c>>2]=1;w=p;break}}else{v=(q|0)==(r<<1|0);if(v&u){k[m+(n<<2)>>2]=7;w=0;break}if(v&(t|0)==(s<<1|0)){v=m+(n<<2)|0;if(!(k[l>>2]|0)){k[v>>2]=9;w=p;break}else{k[v>>2]=8;k[c>>2]=1;w=p;break}}if(((q|0)%(r|0)|0|0)==0?((t|0)%(s|0)|0|0)==0:0){k[m+(n<<2)>>2]=10;i[b+(n+92)>>0]=(q|0)/(r|0)|0;i[b+(n+102)>>0]=(t|0)/(s|0)|0;w=0;break}v=k[a>>2]|0;k[v+20>>2]=39;qb[k[v>>2]&127](a);w=p}while(0);n=n+1|0;if((n|0)>=(k[d>>2]|0)){x=w;break}else{o=o+88|0;p=w}}if((x|0)!=0|(k[l>>2]|0)==0)return;l=k[a>>2]|0;k[l+20>>2]=101;rb[k[l+4>>2]&31](a,0);return}function Pk(a){a=a|0;return}function Qk(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;f=k[a+416>>2]|0;g=a+76|0;if((k[g>>2]|0)<=0)return;h=0;i=k[a+84>>2]|0;while(1){j=(k[d+(h<<2)>>2]|0)+((ha(k[f+52+(h<<2)>>2]|0,e)|0)<<2)|0;Ab[k[f+12+(h<<2)>>2]&31](a,i,(k[b+(h<<2)>>2]|0)+(c<<2)|0,j);h=h+1|0;if((h|0)>=(k[g>>2]|0))break;else i=i+88|0}return}function Rk(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;e=ha(k[b+36>>2]|0,k[b+28>>2]|0)|0;b=a+276|0;f=k[b>>2]|0;g=k[a+28>>2]|0;if((f|0)>-2&(e-g|0)>0){h=g+-1|0;j=h-e|0;m=e+2-g+((j|0)>-2?j:-2)|0;j=f+1|0;n=0;while(1){o=k[c+(n+-1<<2)>>2]|0;qr(o+g|0,i[o+h>>0]|0,m|0)|0;if((n|0)==(j|0))break;else n=n+1|0}p=k[b>>2]|0}else p=f;f=k[a+228>>2]|0;a=65536-(f<<9)|0;n=f<<6;if((p|0)<=0)return;p=e+-2|0;if(!p){f=0;do{j=k[d+(f<<2)>>2]|0;m=k[c+(f<<2)>>2]|0;h=k[c+(f+-1<<2)>>2]|0;f=f+1|0;g=k[c+(f<<2)>>2]|0;o=(l[g>>0]|0)+(l[h>>0]|0)|0;q=l[m>>0]|0;r=o+q|0;s=m+1|0;m=(l[g+1>>0]|0)+(l[h+1>>0]|0)+(l[s>>0]|0)|0;h=((ha(q,a)|0)+32768+(ha(r+o+m|0,n)|0)|0)>>>16&255;i[j>>0]=h;h=l[s>>0]|0;s=((ha(h,a)|0)+32768+(ha(r-h+(m<<1)|0,n)|0)|0)>>>16&255;i[j+1>>0]=s}while((f|0)<(k[b>>2]|0));return}f=e+-1|0;e=0;do{s=k[d+(e<<2)>>2]|0;j=k[c+(e<<2)>>2]|0;m=k[c+(e+-1<<2)>>2]|0;e=e+1|0;h=k[c+(e<<2)>>2]|0;r=m+1|0;o=h+1|0;q=(l[h>>0]|0)+(l[m>>0]|0)|0;m=l[j>>0]|0;h=q+m|0;g=j+1|0;t=(l[o>>0]|0)+(l[r>>0]|0)+(l[g>>0]|0)|0;u=((ha(m,a)|0)+32768+(ha(h+q+t|0,n)|0)|0)>>>16&255;i[s>>0]=u;u=s+f|0;q=s;s=r;r=o;o=p;m=t;t=g;g=h;while(1){q=q+1|0;h=l[t>>0]|0;t=t+1|0;s=s+1|0;r=r+1|0;v=(l[r>>0]|0)+(l[s>>0]|0)+(l[t>>0]|0)|0;w=((ha(h,a)|0)+32768+(ha(g+m-h+v|0,n)|0)|0)>>>16&255;i[q>>0]=w;o=o+-1|0;if(!o){x=v;y=m;break}else{w=m;m=v;g=w}}g=l[j+f>>0]|0;m=((ha(g,a)|0)+32768+(ha(y-g+(x<<1)|0,n)|0)|0)>>>16&255;i[u>>0]=m}while((e|0)<(k[b>>2]|0));return}function Sk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=a+276|0;f=a+28|0;rm(c,0,d,0,k[e>>2]|0,k[f>>2]|0);c=k[e>>2]|0;e=k[f>>2]|0;f=ha(k[b+36>>2]|0,k[b+28>>2]|0)|0;if(!((c|0)>0&(f-e|0)>0))return;b=e+-1|0;a=b-f|0;g=2-e+f+((a|0)>-2?a:-2)|0;a=0;do{f=k[d+(a<<2)>>2]|0;qr(f+e|0,i[f+b>>0]|0,g|0)|0;a=a+1|0}while((a|0)!=(c|0));return}function Tk(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,j=0,m=0,n=0,o=0;e=ha(k[b+36>>2]|0,k[b+28>>2]|0)|0;b=a+276|0;f=k[b>>2]|0;g=k[a+28>>2]|0;a=e<<1;if((f|0)>0&(a-g|0)>0){h=g+-1|0;j=h-a|0;m=a+2-g+((j|0)>-2?j:-2)|0;j=0;do{a=k[c+(j<<2)>>2]|0;qr(a+g|0,i[a+h>>0]|0,m|0)|0;j=j+1|0}while((j|0)!=(f|0));n=k[b>>2]|0}else n=f;if((n|0)<=0)return;if(!e){f=0;do f=f+1|0;while((f|0)<(n|0));return}else o=0;do{n=0;f=k[c+(o<<2)>>2]|0;j=0;m=k[d+(o<<2)>>2]|0;while(1){i[m>>0]=((l[f>>0]|0)+n+(l[f+1>>0]|0)|0)>>>1;j=j+1|0;if((j|0)==(e|0))break;else{n=n^1;f=f+2|0;m=m+1|0}}o=o+1|0}while((o|0)<(k[b>>2]|0));return}function Uk(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,j=0,m=0,n=0,o=0,p=0,q=0,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;e=ha(k[b+36>>2]|0,k[b+28>>2]|0)|0;b=a+276|0;f=k[b>>2]|0;g=k[a+28>>2]|0;h=e<<1;if((f|0)>-2&(h-g|0)>0){j=g+-1|0;m=j-h|0;n=h+2-g+((m|0)>-2?m:-2)|0;m=f+1|0;h=0;while(1){o=k[c+(h+-1<<2)>>2]|0;qr(o+g|0,i[o+j>>0]|0,n|0)|0;if((h|0)==(m|0))break;else h=h+1|0}p=k[b>>2]|0}else p=f;f=k[a+228>>2]|0;a=(ha(f,-80)|0)+16384|0;h=f<<4;if((p|0)<=0)return;p=e+-2|0;f=e+-1|0;m=e<<1;e=m+-3|0;n=m+-3|0;j=m+-3|0;m=0;g=0;while(1){o=k[d+(g<<2)>>2]|0;q=k[c+(m<<2)>>2]|0;r=k[c+((m|1)<<2)>>2]|0;s=k[c+(m+-1<<2)>>2]|0;m=m+2|0;t=k[c+(m<<2)>>2]|0;u=l[q>>0]|0;v=l[r>>0]|0;w=l[s>>0]|0;x=l[t>>0]|0;y=q+2|0;z=r+2|0;A=s+2|0;B=t+2|0;C=((ha((l[q+1>>0]|0)+u+v+(l[r+1>>0]|0)|0,a)|0)+32768+(ha(x+w+(l[A>>0]|0)+(l[B>>0]|0)+(v+u+w+(l[s+1>>0]|0)+x+(l[t+1>>0]|0)+(l[y>>0]|0)+(l[z>>0]|0)<<1)|0,h)|0)|0)>>>16&255;i[o>>0]=C;C=o+f|0;x=o;o=q;q=r;w=s;u=t;v=A;A=B;B=p;D=y;y=z;while(1){z=x+1|0;E=l[o+3>>0]|0;F=l[q+3>>0]|0;G=E+(l[D>>0]|0)+(l[y>>0]|0)+F|0;H=l[w+3>>0]|0;I=l[u+3>>0]|0;J=H+(l[v>>0]|0)+(l[A>>0]|0)+I+(l[o+1>>0]|0)|0;if(!B){K=E;L=F;M=G;N=H;O=I;P=J;break}I=D+2|0;H=y+2|0;F=v+2|0;E=A+2|0;Q=((ha(G,a)|0)+32768+(ha((l[F>>0]|0)+(l[w+1>>0]|0)+((l[I>>0]|0)+J+(l[q+1>>0]|0)+(l[H>>0]|0)<<1)+(l[u+1>>0]|0)+(l[E>>0]|0)|0,h)|0)|0)>>>16&255;i[z>>0]=Q;Q=A;J=v;G=y;R=D;x=z;v=F;A=E;B=B+-1|0;D=I;y=H;u=Q;w=J;q=G;o=R}o=((ha(M,a)|0)+32768+(ha(O+N+(l[s+n>>0]|0)+(l[t+j>>0]|0)+(L+K+P+(l[r+e>>0]|0)<<1)|0,h)|0)|0)>>>16&255;i[C>>0]=o;if((m|0)>=(k[b>>2]|0))break;else g=g+1|0}return}function Vk(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,j=0,m=0,n=0,o=0,p=0;e=ha(k[b+36>>2]|0,k[b+28>>2]|0)|0;b=a+276|0;f=k[b>>2]|0;g=k[a+28>>2]|0;a=e<<1;if((f|0)>0&(a-g|0)>0){h=g+-1|0;j=h-a|0;m=a+2-g+((j|0)>-2?j:-2)|0;j=0;do{a=k[c+(j<<2)>>2]|0;qr(a+g|0,i[a+h>>0]|0,m|0)|0;j=j+1|0}while((j|0)!=(f|0));n=k[b>>2]|0}else n=f;if((n|0)<=0)return;if(!e){f=0;do f=f+2|0;while((f|0)<(n|0));return}else{o=0;p=0}while(1){n=1;f=k[c+(o<<2)>>2]|0;j=k[c+((o|1)<<2)>>2]|0;m=0;h=k[d+(p<<2)>>2]|0;while(1){i[h>>0]=((l[f>>0]|0)+n+(l[f+1>>0]|0)+(l[j>>0]|0)+(l[j+1>>0]|0)|0)>>>2;m=m+1|0;if((m|0)==(e|0))break;else{n=n^3;f=f+2|0;j=j+2|0;h=h+1|0}}o=o+2|0;if((o|0)>=(k[b>>2]|0))break;else p=p+1|0}return}function Wk(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;e=k[a+416>>2]|0;f=ha(k[b+36>>2]|0,k[b+28>>2]|0)|0;g=k[b+4>>2]|0;b=i[e+92+g>>0]|0;h=b&255;j=i[e+102+g>>0]|0;g=j&255;e=ha(g,h)|0;m=e>>>1;n=a+276|0;o=k[n>>2]|0;p=k[a+28>>2]|0;a=ha(h,f)|0;if((o|0)>0&(a-p|0)>0){q=p+-1|0;r=q-a|0;s=a+2-p+((r|0)>-2?r:-2)|0;r=0;do{a=k[c+(r<<2)>>2]|0;qr(a+p|0,i[a+q>>0]|0,s|0)|0;r=r+1|0}while((r|0)!=(o|0));t=k[n>>2]|0}else t=o;if((t|0)<=0)return;o=(f|0)==0;r=j<<24>>24==0;j=b<<24>>24==0;b=t;t=0;s=0;while(1){if(o)u=b;else{q=0;p=0;a=k[d+(s<<2)>>2]|0;while(1){if(r)v=0;else{w=0;x=0;while(1){if(j)y=w;else{z=0;A=(k[c+(x+t<<2)>>2]|0)+p|0;B=w;while(1){C=(l[A>>0]|0)+B|0;z=z+1|0;if((z|0)==(h|0)){y=C;break}else{A=A+1|0;B=C}}}x=x+1|0;if((x|0)==(g|0)){v=y;break}else w=y}}i[a>>0]=(v+m|0)/(e|0)|0;q=q+1|0;if((q|0)==(f|0))break;else{p=p+h|0;a=a+1|0}}u=k[n>>2]|0}t=t+g|0;if((t|0)>=(u|0))break;else{b=u;s=s+1|0}}return}function Xk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;k[a+4>>2]=0;if((b|0)!=90){d=k[a>>2]|0;k[d+20>>2]=13;k[d+24>>2]=90;k[d+28>>2]=b;qb[k[d>>2]&127](a)}if((c|0)==488)e=a;else{d=k[a>>2]|0;k[d+20>>2]=22;k[d+24>>2]=488;k[d+28>>2]=c;qb[k[d>>2]&127](a);e=a}d=k[a>>2]|0;c=a+12|0;b=k[c>>2]|0;qr(a|0,0,488)|0;k[a>>2]=d;k[c>>2]=b;k[a+16>>2]=1;tm(e);k[a+8>>2]=0;k[a+24>>2]=0;k[a+312>>2]=0;e=a+164|0;b=e+48|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(b|0));jl(a);dl(a);k[a+20>>2]=200;return}function Yk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=k[a+20>>2]|0;if((c&-2|0)!=200){d=k[a>>2]|0;k[d+20>>2]=21;k[d+24>>2]=c;qb[k[d>>2]&127](a)}d=Zk(a)|0;switch(d|0){case 1:{e=1;return e|0}case 2:{if(!b)f=a;else{b=k[a>>2]|0;k[b+20>>2]=53;qb[k[b>>2]&127](a);f=a}Ak(f);e=2;return e|0}default:{e=d;return e|0}}return 0}function Zk(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=a+20|0;c=k[b>>2]|0;switch(c|0){case 200:{d=a+460|0;qb[k[(k[d>>2]|0)+4>>2]&127](a);qb[k[(k[a+24>>2]|0)+8>>2]&127](a);k[b>>2]=201;e=d;break}case 201:{e=a+460|0;break}case 210:case 208:case 207:case 206:case 205:case 204:case 203:{f=ub[k[k[a+460>>2]>>2]&63](a)|0;return f|0}case 202:{f=1;return f|0}default:{d=k[a>>2]|0;k[d+20>>2]=21;k[d+24>>2]=c;qb[k[d>>2]&127](a);f=0;return f|0}}d=ub[k[k[e>>2]>>2]&63](a)|0;if((d|0)!=1){f=d;return f|0}switch(k[a+36>>2]|0){case 1:{k[a+40>>2]=1;k[a+44>>2]=1;break}case 3:{d=k[a+216>>2]|0;e=k[d>>2]|0;c=k[d+88>>2]|0;g=k[d+176>>2]|0;d=(e|0)==1;a:do if(d&(c|0)==2&(g|0)==3)k[a+40>>2]=3;else{if(d&(c|0)==34&(g|0)==35){k[a+40>>2]=7;break}if((e|0)==82&(c|0)==71&(g|0)==66){k[a+40>>2]=2;break}if((e|0)==114&(c|0)==103&(g|0)==98){k[a+40>>2]=6;break}if(k[a+284>>2]|0){k[a+40>>2]=3;break}if(!(k[a+296>>2]|0)){h=k[a>>2]|0;k[h+24>>2]=e;k[h+28>>2]=c;k[h+32>>2]=g;k[h+20>>2]=113;rb[k[h+4>>2]&31](a,1);k[a+40>>2]=3;break}h=l[a+300>>0]|0;switch(h|0){case 0:{k[a+40>>2]=2;break a;break}case 1:{k[a+40>>2]=3;break a;break}default:{i=k[a>>2]|0;k[i+20>>2]=116;k[i+24>>2]=h;rb[k[i+4>>2]&31](a,-1);k[a+40>>2]=3;break a}}}while(0);k[a+44>>2]=2;break}case 4:{b:do if(!(k[a+296>>2]|0))k[a+40>>2]=4;else{g=l[a+300>>0]|0;switch(g|0){case 0:{k[a+40>>2]=4;break b;break}case 2:{k[a+40>>2]=5;break b;break}default:{c=k[a>>2]|0;k[c+20>>2]=116;k[c+24>>2]=g;rb[k[c+4>>2]&31](a,-1);k[a+40>>2]=5;break b}}}while(0);k[a+44>>2]=4;break}default:{k[a+40>>2]=0;k[a+44>>2]=0}}c=k[a+428>>2]|0;k[a+48>>2]=c;k[a+52>>2]=c;p[a+56>>3]=1.0;k[a+64>>2]=0;k[a+68>>2]=0;k[a+72>>2]=0;k[a+76>>2]=1;k[a+80>>2]=1;k[a+84>>2]=0;k[a+88>>2]=2;k[a+92>>2]=1;k[a+96>>2]=256;k[a+136>>2]=0;k[a+100>>2]=0;k[a+104>>2]=0;k[a+108>>2]=0;k[b>>2]=202;f=1;return f|0}function _k(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=a+20|0;c=k[b>>2]|0;if((c+-205|0)>>>0<2?(k[a+64>>2]|0)==0:0){if((k[a+140>>2]|0)>>>0<(k[a+116>>2]|0)>>>0){d=k[a>>2]|0;k[d+20>>2]=69;qb[k[d>>2]&127](a)}qb[k[(k[a+444>>2]|0)+4>>2]&127](a);k[b>>2]=210}else e=6;a:do if((e|0)==6)switch(c|0){case 210:{break a;break}case 207:{k[b>>2]=210;break a;break}default:{d=k[a>>2]|0;k[d+20>>2]=21;k[d+24>>2]=c;qb[k[d>>2]&127](a);break a}}while(0);c=a+460|0;while(1){b=k[c>>2]|0;if(k[b+20>>2]|0)break;if(!(ub[k[b>>2]&63](a)|0)){f=0;e=13;break}}if((e|0)==13)return f|0;qb[k[(k[a+24>>2]|0)+24>>2]&127](a);Ak(a);f=1;return f|0}function $k(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;b=a+20|0;c=k[b>>2]|0;a:do switch(c|0){case 202:{tl(a);if(!(k[a+64>>2]|0)){k[b>>2]=203;d=6;break a}k[b>>2]=207;e=1;return e|0}case 203:{d=6;break}case 204:{f=a+444|0;break}default:{g=k[a>>2]|0;k[g+20>>2]=21;k[g+24>>2]=c;qb[k[g>>2]&127](a);d=16}}while(0);if((d|0)==6){c=a+460|0;b:do if(k[(k[c>>2]|0)+16>>2]|0){g=a+8|0;h=a+332|0;i=k[g>>2]|0;c:while(1){if(i)qb[k[i>>2]&127](a);j=ub[k[k[c>>2]>>2]&63](a)|0;switch(j|0){case 2:{break b;break}case 0:{e=0;break c;break}default:{}}l=k[g>>2]|0;if(!((j&-3|0)==1&(l|0)!=0)){i=l;continue}j=l+4|0;m=(k[j>>2]|0)+1|0;k[j>>2]=m;j=l+8|0;n=k[j>>2]|0;if((m|0)<(n|0)){i=l;continue}k[j>>2]=(k[h>>2]|0)+n;i=l}return e|0}while(0);k[a+152>>2]=k[a+144>>2];d=16}if((d|0)==16){d=a+444|0;if((k[b>>2]|0)==204)f=d;else{qb[k[k[d>>2]>>2]&127](a);k[a+140>>2]=0;k[b>>2]=204;f=d}}d:do if(k[(k[f>>2]|0)+8>>2]|0){d=a+140|0;c=a+116|0;i=a+8|0;h=a+448|0;g=k[d>>2]|0;while(1){l=k[c>>2]|0;if(g>>>0>=l>>>0){qb[k[(k[f>>2]|0)+4>>2]&127](a);qb[k[k[f>>2]>>2]&127](a);k[d>>2]=0;if(!(k[(k[f>>2]|0)+8>>2]|0))break d;else{g=0;continue}}n=k[i>>2]|0;if(!n)o=g;else{k[n+4>>2]=g;k[n+8>>2]=l;qb[k[n>>2]&127](a);o=k[d>>2]|0}Ab[k[(k[h>>2]|0)+4>>2]&31](a,0,d,0);g=k[d>>2]|0;if((g|0)==(o|0)){e=0;break}}return e|0}while(0);k[b>>2]=(k[a+68>>2]|0)!=0?206:205;e=1;return e|0}function al(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=r;r=r+16|0;e=d;f=k[a+20>>2]|0;if((f|0)!=205){g=k[a>>2]|0;k[g+20>>2]=21;k[g+24>>2]=f;qb[k[g>>2]&127](a)}g=a+140|0;f=k[g>>2]|0;h=k[a+116>>2]|0;if(f>>>0>=h>>>0){i=k[a>>2]|0;k[i+20>>2]=126;rb[k[i+4>>2]&31](a,-1);j=0;r=d;return j|0}i=k[a+8>>2]|0;if(i){k[i+4>>2]=f;k[i+8>>2]=h;qb[k[i>>2]&127](a)}k[e>>2]=0;Ab[k[(k[a+448>>2]|0)+4>>2]&31](a,b,e,c);c=k[e>>2]|0;k[g>>2]=(k[g>>2]|0)+c;j=c;r=d;return j|0}function bl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=k[a+20>>2]|0;if((d|0)!=206){e=k[a>>2]|0;k[e+20>>2]=21;k[e+24>>2]=d;qb[k[e>>2]&127](a)}e=a+140|0;d=k[e>>2]|0;f=k[a+116>>2]|0;if(d>>>0>=f>>>0){g=k[a>>2]|0;k[g+20>>2]=126;rb[k[g+4>>2]&31](a,-1);h=0;return h|0}g=k[a+8>>2]|0;if(g){k[g+4>>2]=d;k[g+8>>2]=f;qb[k[g>>2]&127](a)}g=ha(k[a+328>>2]|0,k[a+320>>2]|0)|0;if(g>>>0>c>>>0){c=k[a>>2]|0;k[c+20>>2]=24;qb[k[c>>2]&127](a)}if(!(yb[k[(k[a+452>>2]|0)+12>>2]&127](a,b)|0)){h=0;return h|0}k[e>>2]=(k[e>>2]|0)+g;h=g;return h|0}function cl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=a+428|0;c=k[b>>2]|0;d=ha(c,k[a+48>>2]|0)|0;e=k[a+52>>2]|0;do if(d>>>0>e>>>0){if(d>>>0<=e<<1>>>0){f=pm(k[a+28>>2]<<1,c)|0;k[a+112>>2]=f;f=pm(k[a+32>>2]<<1,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=2;k[a+328>>2]=2;g=2;break}if(d>>>0<=(e*3|0)>>>0){f=pm((k[a+28>>2]|0)*3|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*3|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=3;k[a+328>>2]=3;g=3;break}if(d>>>0<=e<<2>>>0){f=pm(k[a+28>>2]<<2,c)|0;k[a+112>>2]=f;f=pm(k[a+32>>2]<<2,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=4;k[a+328>>2]=4;g=4;break}if(d>>>0<=(e*5|0)>>>0){f=pm((k[a+28>>2]|0)*5|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*5|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=5;k[a+328>>2]=5;g=5;break}if(d>>>0<=(e*6|0)>>>0){f=pm((k[a+28>>2]|0)*6|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*6|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=6;k[a+328>>2]=6;g=6;break}if(d>>>0<=(e*7|0)>>>0){f=pm((k[a+28>>2]|0)*7|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*7|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=7;k[a+328>>2]=7;g=7;break}if(d>>>0<=e<<3>>>0){f=pm(k[a+28>>2]<<3,c)|0;k[a+112>>2]=f;f=pm(k[a+32>>2]<<3,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=8;k[a+328>>2]=8;g=8;break}if(d>>>0<=(e*9|0)>>>0){f=pm((k[a+28>>2]|0)*9|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*9|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=9;k[a+328>>2]=9;g=9;break}if(d>>>0<=(e*10|0)>>>0){f=pm((k[a+28>>2]|0)*10|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*10|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=10;k[a+328>>2]=10;g=10;break}if(d>>>0<=(e*11|0)>>>0){f=pm((k[a+28>>2]|0)*11|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*11|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=11;k[a+328>>2]=11;g=11;break}if(d>>>0<=(e*12|0)>>>0){f=pm((k[a+28>>2]|0)*12|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*12|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=12;k[a+328>>2]=12;g=12;break}if(d>>>0<=(e*13|0)>>>0){f=pm((k[a+28>>2]|0)*13|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*13|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=13;k[a+328>>2]=13;g=13;break}if(d>>>0<=(e*14|0)>>>0){f=pm((k[a+28>>2]|0)*14|0,c)|0;k[a+112>>2]=f;f=pm((k[a+32>>2]|0)*14|0,k[b>>2]|0)|0;k[a+116>>2]=f;k[a+324>>2]=14;k[a+328>>2]=14;g=14;break}f=k[a+28>>2]|0;if(d>>>0>(e*15|0)>>>0){h=pm(f<<4,c)|0;k[a+112>>2]=h;h=pm(k[a+32>>2]<<4,k[b>>2]|0)|0;k[a+116>>2]=h;k[a+324>>2]=16;k[a+328>>2]=16;g=16;break}else{h=pm(f*15|0,c)|0;k[a+112>>2]=h;h=pm((k[a+32>>2]|0)*15|0,k[b>>2]|0)|0;k[a+116>>2]=h;k[a+324>>2]=15;k[a+328>>2]=15;g=15;break}}else{h=pm(k[a+28>>2]|0,c)|0;k[a+112>>2]=h;h=pm(k[a+32>>2]|0,k[b>>2]|0)|0;k[a+116>>2]=h;k[a+324>>2]=1;k[a+328>>2]=1;g=1}while(0);b=k[a+36>>2]|0;if((b|0)<=0)return;c=0;e=k[a+216>>2]|0;while(1){k[e+36>>2]=g;k[e+40>>2]=g;c=c+1|0;if((c|0)>=(b|0))break;else e=e+88|0}return}function dl(a){a=a|0;var b=0;b=nb[k[k[a+4>>2]>>2]&63](a,0,28)|0;k[a+460>>2]=b;k[b>>2]=46;k[b+4>>2]=39;k[b+8>>2]=40;k[b+12>>2]=41;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=1;return}function el(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;b=a+460|0;c=k[b>>2]|0;d=c+20|0;if(k[d>>2]|0){e=2;return e|0}f=a+464|0;g=c+24|0;h=a+340|0;i=c+16|0;c=a+32|0;j=a+212|0;l=a+36|0;m=a+316|0;n=a+320|0;o=a+216|0;p=a+220|0;q=a+224|0;r=a+416|0;s=a+412|0;t=a+420|0;u=a+424|0;v=a+428|0;w=a+432|0;x=a+436|0;y=a+324|0;z=a+328|0;A=a+28|0;B=a+332|0;a:while(1){C=ub[k[(k[f>>2]|0)+4>>2]&63](a)|0;switch(C|0){case 2:{D=57;break a;break}case 1:break;default:{e=C;D=62;break a}}b:do switch(k[g>>2]|0){case 0:{if(!(k[i>>2]|0)){C=k[a>>2]|0;k[C+20>>2]=36;qb[k[C>>2]&127](a)}if(!(k[h>>2]|0))continue a;else{D=56;break a}break}case 1:{if(!((k[c>>2]|0)<=65500?(k[A>>2]|0)<=65500:0)){C=k[a>>2]|0;k[C+20>>2]=42;k[C+24>>2]=65500;qb[k[C>>2]&127](a)}C=k[j>>2]|0;if((C+-8|0)>>>0>4){E=k[a>>2]|0;k[E+20>>2]=16;k[E+24>>2]=C;qb[k[E>>2]&127](a)}E=k[l>>2]|0;if((E|0)>10){C=k[a>>2]|0;k[C+20>>2]=27;k[C+24>>2]=E;k[C+28>>2]=10;qb[k[C>>2]&127](a);F=k[l>>2]|0}else F=E;k[m>>2]=1;k[n>>2]=1;if((F|0)>0){E=F;C=1;G=1;H=0;I=k[o>>2]|0;while(1){J=I+8|0;K=k[J>>2]|0;L=I+12|0;if((K+-1|0)>>>0<=3?(M=k[L>>2]|0,(M+-1|0)>>>0<=3):0){N=G;O=K;P=C;Q=M;R=E}else{M=k[a>>2]|0;k[M+20>>2]=19;qb[k[M>>2]&127](a);N=k[m>>2]|0;O=k[J>>2]|0;P=k[n>>2]|0;Q=k[L>>2]|0;R=k[l>>2]|0}G=(N|0)>(O|0)?N:O;k[m>>2]=G;C=(P|0)>(Q|0)?P:Q;k[n>>2]=C;H=H+1|0;if((H|0)>=(R|0)){S=R;break}else{E=R;I=I+88|0}}}else S=F;c:do if(!(k[p>>2]|0)){if((k[q>>2]|0)!=0?(k[h>>2]|0)!=0:0){D=22;break}do switch(k[r>>2]|0){case 0:{k[v>>2]=1;k[w>>2]=119984;k[x>>2]=0;T=1;U=S;break c;break}case 3:{k[v>>2]=2;k[w>>2]=121164;k[x>>2]=3;T=2;U=S;break c;break}case 8:{k[v>>2]=3;k[w>>2]=121064;k[x>>2]=8;T=3;U=S;break c;break}case 15:{k[v>>2]=4;k[w>>2]=120936;k[x>>2]=15;T=4;U=S;break c;break}case 24:{k[v>>2]=5;k[w>>2]=120772;k[x>>2]=24;T=5;U=S;break c;break}case 35:{k[v>>2]=6;k[w>>2]=120564;k[x>>2]=35;T=6;U=S;break c;break}case 48:{k[v>>2]=7;k[w>>2]=120304;k[x>>2]=48;T=7;U=S;break c;break}case 63:{k[v>>2]=8;k[w>>2]=119984;k[x>>2]=63;T=8;U=S;break c;break}case 80:{k[v>>2]=9;k[w>>2]=119984;k[x>>2]=63;T=9;U=S;break c;break}case 99:{k[v>>2]=10;k[w>>2]=119984;k[x>>2]=63;T=10;U=S;break c;break}case 120:{k[v>>2]=11;k[w>>2]=119984;k[x>>2]=63;T=11;U=S;break c;break}case 143:{k[v>>2]=12;k[w>>2]=119984;k[x>>2]=63;T=12;U=S;break c;break}case 168:{k[v>>2]=13;k[w>>2]=119984;k[x>>2]=63;T=13;U=S;break c;break}case 195:{k[v>>2]=14;k[w>>2]=119984;k[x>>2]=63;T=14;U=S;break c;break}case 224:{k[v>>2]=15;k[w>>2]=119984;k[x>>2]=63;T=15;U=S;break c;break}case 255:{k[v>>2]=16;k[w>>2]=119984;k[x>>2]=63;T=16;U=S;break c;break}default:{I=k[a>>2]|0;k[I+20>>2]=17;k[I+24>>2]=k[s>>2];k[I+28>>2]=k[r>>2];k[I+32>>2]=k[t>>2];k[I+36>>2]=k[u>>2];qb[k[I>>2]&127](a);T=k[v>>2]|0;U=k[l>>2]|0;break c}}while(0)}else D=22;while(0);if((D|0)==22){D=0;k[v>>2]=8;k[w>>2]=119984;k[x>>2]=63;T=8;U=S}k[y>>2]=T;k[z>>2]=T;if((U|0)>0){I=T;E=0;H=k[o>>2]|0;while(1){k[H+36>>2]=I;k[H+40>>2]=I;C=H+8|0;G=ha(k[C>>2]|0,k[A>>2]|0)|0;L=pm(G,ha(k[m>>2]|0,I)|0)|0;k[H+28>>2]=L;L=H+12|0;G=ha(k[L>>2]|0,k[c>>2]|0)|0;J=pm(G,ha(k[v>>2]|0,k[n>>2]|0)|0)|0;k[H+32>>2]=J;J=ha(k[C>>2]|0,k[A>>2]|0)|0;C=pm(J,k[m>>2]|0)|0;k[H+44>>2]=C;C=ha(k[L>>2]|0,k[c>>2]|0)|0;L=pm(C,k[n>>2]|0)|0;k[H+48>>2]=L;k[H+52>>2]=1;k[H+80>>2]=0;L=E+1|0;if((L|0)>=(k[l>>2]|0))break;I=k[v>>2]|0;E=L;H=H+88|0}V=k[v>>2]|0}else V=T;H=pm(k[c>>2]|0,ha(V,k[n>>2]|0)|0)|0;k[B>>2]=H;H=k[h>>2]|0;if((H|0)>=(k[l>>2]|0)?(k[q>>2]|0)==0:0){k[(k[b>>2]|0)+16>>2]=0;W=H;break b}k[(k[b>>2]|0)+16>>2]=1;W=H;break}default:W=k[h>>2]|0}while(0);if(W){D=52;break}k[g>>2]=2}if((D|0)==52){k[g>>2]=0;e=1;return e|0}else if((D|0)==56){gl(a);e=1;return e|0}else if((D|0)==57){k[d>>2]=1;if(!(k[g>>2]|0)){g=a+152|0;d=k[a+144>>2]|0;if((k[g>>2]|0)<=(d|0)){e=2;return e|0}k[g>>2]=d;e=2;return e|0}else{if(!(k[(k[f>>2]|0)+16>>2]|0)){e=2;return e|0}f=k[a>>2]|0;k[f+20>>2]=62;qb[k[f>>2]&127](a);e=2;return e|0}}else if((D|0)==62)return e|0;return 0}function fl(a){a=a|0;var b=0;b=k[a+460>>2]|0;k[b>>2]=46;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=1;qb[k[(k[a>>2]|0)+16>>2]&127](a);qb[k[k[a+464>>2]>>2]&127](a);k[a+160>>2]=0;return}function gl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=a+340|0;c=k[b>>2]|0;if((c|0)!=1){if((c+-1|0)>>>0>3){d=k[a>>2]|0;k[d+20>>2]=27;k[d+24>>2]=c;k[d+28>>2]=4;qb[k[d>>2]&127](a)}d=a+428|0;c=pm(k[a+28>>2]|0,ha(k[d>>2]|0,k[a+316>>2]|0)|0)|0;k[a+360>>2]=c;c=pm(k[a+32>>2]|0,ha(k[d>>2]|0,k[a+320>>2]|0)|0)|0;k[a+364>>2]=c;c=a+368|0;k[c>>2]=0;if((k[b>>2]|0)<=0){e=a+468|0;f=k[e>>2]|0;g=k[f>>2]|0;qb[g&127](a);h=a+452|0;i=k[h>>2]|0;j=k[i>>2]|0;qb[j&127](a);l=k[h>>2]|0;m=l+4|0;n=k[m>>2]|0;o=a+460|0;p=k[o>>2]|0;k[p>>2]=n;return}d=0;q=0;while(1){r=k[a+344+(q<<2)>>2]|0;s=k[r+8>>2]|0;k[r+56>>2]=s;t=k[r+12>>2]|0;k[r+60>>2]=t;u=ha(t,s)|0;k[r+64>>2]=u;v=ha(k[r+36>>2]|0,s)|0;k[r+68>>2]=v;v=((k[r+28>>2]|0)>>>0)%(s>>>0)|0;k[r+72>>2]=(v|0)==0?s:v;v=((k[r+32>>2]|0)>>>0)%(t>>>0)|0;k[r+76>>2]=(v|0)==0?t:v;if((u+d|0)>10){v=k[a>>2]|0;k[v+20>>2]=14;qb[k[v>>2]&127](a)}if((u|0)>0){v=u;while(1){u=k[c>>2]|0;k[c>>2]=u+1;k[a+372+(u<<2)>>2]=q;if((v|0)>1)v=v+-1|0;else break}}v=q+1|0;u=k[b>>2]|0;if((v|0)>=(u|0)){w=u;break}d=k[c>>2]|0;q=v}if((w|0)>0)x=w;else{e=a+468|0;f=k[e>>2]|0;g=k[f>>2]|0;qb[g&127](a);h=a+452|0;i=k[h>>2]|0;j=k[i>>2]|0;qb[j&127](a);l=k[h>>2]|0;m=l+4|0;n=k[m>>2]|0;o=a+460|0;p=k[o>>2]|0;k[p>>2]=n;return}}else{w=k[a+344>>2]|0;k[a+360>>2]=k[w+28>>2];q=k[w+32>>2]|0;k[a+364>>2]=q;k[w+56>>2]=1;k[w+60>>2]=1;k[w+64>>2]=1;k[w+68>>2]=k[w+36>>2];k[w+72>>2]=1;c=k[w+12>>2]|0;d=(q>>>0)%(c>>>0)|0;k[w+76>>2]=(d|0)==0?c:d;k[a+368>>2]=1;k[a+372>>2]=0;x=1}d=a+4|0;c=x;x=0;while(1){w=k[a+344+(x<<2)>>2]|0;q=w+80|0;if(!(k[q>>2]|0)){v=k[w+16>>2]|0;w=a+164+(v<<2)|0;if(!(v>>>0<=3?(k[w>>2]|0)!=0:0)){u=k[a>>2]|0;k[u+20>>2]=54;k[u+24>>2]=v;qb[k[u>>2]&127](a)}u=nb[k[k[d>>2]>>2]&63](a,1,132)|0;wr(u|0,k[w>>2]|0,132)|0;k[q>>2]=u;y=k[b>>2]|0}else y=c;x=x+1|0;if((x|0)>=(y|0))break;else c=y}e=a+468|0;f=k[e>>2]|0;g=k[f>>2]|0;qb[g&127](a);h=a+452|0;i=k[h>>2]|0;j=k[i>>2]|0;qb[j&127](a);l=k[h>>2]|0;m=l+4|0;n=k[m>>2]|0;o=a+460|0;p=k[o>>2]|0;k[p>>2]=n;return}function hl(a){a=a|0;qb[k[(k[a+468>>2]|0)+8>>2]&127](a);k[k[a+460>>2]>>2]=46;return}function il(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;c=a+440|0;d=k[c>>2]|0;e=k[a>>2]|0;k[e+20>>2]=124;k[e+24>>2]=d;k[e+28>>2]=b;rb[k[e+4>>2]&31](a,-1);e=b+1&7|208;f=b+2&7|208;g=b+7&7|208;h=b+6&7|208;b=d;a:while(1){d=(b&-8|0)==208;i=(b|0)==(e|0);j=(b|0)==(f|0);l=(b|0)==(g|0);m=(b|0)==(h|0);b:do if((b|0)<192){n=k[a>>2]|0;k[n+20>>2]=99;o=n+24|0;if(d){k[o>>2]=b;k[n+28>>2]=2;rb[k[n+4>>2]&31](a,4);break}if(i){k[o>>2]=e;k[n+28>>2]=2;rb[k[n+4>>2]&31](a,4);break}else{k[o>>2]=b;k[n+28>>2]=2;rb[k[n+4>>2]&31](a,4);break}}else{if(!d){p=10;break a}n=i|j?3:l|m?2:1;while(1){o=k[a>>2]|0;k[o+20>>2]=99;k[o+24>>2]=b;k[o+28>>2]=n;rb[k[o+4>>2]&31](a,4);switch(n|0){case 1:{p=13;break a;break}case 3:{q=1;p=17;break a;break}case 2:{break b;break}default:{}}}}while(0);if(!(kl(a)|0)){q=0;p=17;break}b=k[c>>2]|0}if((p|0)==10){h=k[a>>2]|0;k[h+20>>2]=99;g=h+24|0;if(i){k[g>>2]=e;k[h+28>>2]=3;rb[k[h+4>>2]&31](a,4);q=1;return q|0}else{k[g>>2]=b;k[h+28>>2]=3;rb[k[h+4>>2]&31](a,4);q=1;return q|0}}else if((p|0)==13){k[c>>2]=0;q=1;return q|0}else if((p|0)==17)return q|0;return 0}function jl(a){a=a|0;var b=0,c=0;b=nb[k[k[a+4>>2]>>2]&63](a,0,172)|0;c=a+464|0;k[c>>2]=b;k[b>>2]=42;k[b+4>>2]=47;k[b+8>>2]=48;k[b+28>>2]=49;k[b+96>>2]=0;k[b+100>>2]=0;k[b+36>>2]=49;k[b+104>>2]=0;k[b+40>>2]=49;k[b+108>>2]=0;k[b+44>>2]=49;k[b+112>>2]=0;k[b+48>>2]=49;k[b+116>>2]=0;k[b+52>>2]=49;k[b+120>>2]=0;k[b+56>>2]=49;k[b+124>>2]=0;k[b+60>>2]=49;k[b+128>>2]=0;k[b+64>>2]=49;k[b+132>>2]=0;k[b+68>>2]=49;k[b+136>>2]=0;k[b+72>>2]=49;k[b+140>>2]=0;k[b+76>>2]=49;k[b+144>>2]=0;k[b+80>>2]=49;k[b+148>>2]=0;k[b+84>>2]=49;k[b+152>>2]=0;k[b+156>>2]=0;k[b+92>>2]=49;k[b+160>>2]=0;k[b+32>>2]=50;k[b+88>>2]=50;b=k[c>>2]|0;k[a+216>>2]=0;k[a+144>>2]=0;k[a+440>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+24>>2]=0;k[b+164>>2]=0;return}function kl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;b=k[a+24>>2]|0;c=b+4|0;d=b+12|0;e=a+464|0;f=k[c>>2]|0;g=k[b>>2]|0;a:while(1){if(!f){if(!(ub[k[d>>2]&63](a)|0)){h=0;j=19;break}l=k[b>>2]|0;m=k[c>>2]|0}else{l=g;m=f}n=m+-1|0;o=l+1|0;if((i[l>>0]|0)==-1){p=n;q=o}else{r=n;n=o;while(1){o=(k[e>>2]|0)+24|0;k[o>>2]=(k[o>>2]|0)+1;k[b>>2]=n;k[c>>2]=r;if(!r){if(!(ub[k[d>>2]&63](a)|0)){h=0;j=19;break a}s=k[b>>2]|0;t=k[c>>2]|0}else{s=n;t=r}o=t+-1|0;u=s+1|0;if((i[s>>0]|0)==-1){p=o;q=u;break}else{r=o;n=u}}}while(1){if(!p){if(!(ub[k[d>>2]&63](a)|0)){h=0;j=19;break a}v=k[c>>2]|0;w=k[b>>2]|0}else{v=p;w=q}n=v+-1|0;r=w+1|0;u=i[w>>0]|0;if(u<<24>>24==-1){p=n;q=r}else{x=n;y=r;z=u;break}}u=(k[e>>2]|0)+24|0;r=k[u>>2]|0;if(z<<24>>24){A=x;B=y;C=z;D=r;j=16;break}k[u>>2]=r+2;k[b>>2]=y;k[c>>2]=x;f=x;g=y}if((j|0)==16){y=C&255;if(D){C=k[a>>2]|0;k[C+20>>2]=119;k[C+24>>2]=D;k[C+28>>2]=y;rb[k[C+4>>2]&31](a,-1);k[(k[e>>2]|0)+24>>2]=0}k[a+440>>2]=y;k[b>>2]=B;k[c>>2]=A;h=1;return h|0}else if((j|0)==19)return h|0;return 0}function ll(a){a=a|0;var b=0;b=k[a+464>>2]|0;k[a+216>>2]=0;k[a+144>>2]=0;k[a+440>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+24>>2]=0;k[b+164>>2]=0;return}function ml(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=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,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,sb=0,tb=0,vb=0,wb=0,xb=0,yb=0,zb=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,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0,Kd=0,Ld=0,Md=0,Nd=0,Od=0,Pd=0,Qd=0,Rd=0,Sd=0,Td=0,Ud=0,Vd=0,Wd=0,Xd=0,Yd=0,Zd=0,_d=0,$d=0,ae=0,be=0,ce=0,de=0;b=r;r=r+288|0;c=b+256|0;d=b;e=a+440|0;f=a+464|0;g=a+24|0;h=a+232|0;n=a+248|0;o=a+264|0;p=a+233|0;q=a+249|0;s=a+265|0;t=a+234|0;u=a+250|0;v=a+266|0;w=a+235|0;x=a+251|0;y=a+267|0;z=a+236|0;A=a+252|0;B=a+268|0;C=a+237|0;D=a+253|0;E=a+269|0;F=a+238|0;G=a+254|0;H=a+270|0;I=a+239|0;J=a+255|0;K=a+271|0;L=a+240|0;M=a+256|0;N=a+272|0;O=a+241|0;P=a+257|0;Q=a+273|0;R=a+242|0;S=a+258|0;T=a+274|0;U=a+243|0;V=a+259|0;W=a+275|0;X=a+244|0;Y=a+260|0;Z=a+276|0;_=a+245|0;$=a+261|0;aa=a+277|0;ba=a+246|0;ca=a+262|0;da=a+278|0;ea=a+247|0;fa=a+263|0;ga=a+279|0;ha=a+280|0;ia=a+40|0;ja=a+304|0;ka=a+308|0;la=a+284|0;ma=a+288|0;na=a+289|0;oa=a+290|0;pa=a+292|0;qa=a+294|0;ra=a+296|0;sa=a+300|0;ta=c+1|0;ua=c+2|0;va=c+3|0;wa=c+4|0;xa=c+5|0;ya=c+6|0;za=c+7|0;Aa=c+8|0;Ba=c+9|0;Ca=c+10|0;Da=c+11|0;Ea=c+12|0;Fa=c+13|0;Ga=c+14|0;Ha=c+15|0;Ia=c+16|0;Ja=a+36|0;Ka=a+216|0;La=k[e>>2]|0;a:while(1){do if(!La){if(k[(k[f>>2]|0)+12>>2]|0){if(!(kl(a)|0)){Ma=0;Na=303;break a}Oa=k[e>>2]|0;break}Pa=k[g>>2]|0;Qa=Pa+4|0;Ra=k[Qa>>2]|0;if(!Ra){if(!(ub[k[Pa+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Sa=k[Qa>>2]|0}else Sa=Ra;Ra=k[Pa>>2]|0;Ta=Sa+-1|0;Ua=Ra+1|0;Va=i[Ra>>0]|0;Ra=Va&255;if(!Ta){if(!(ub[k[Pa+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Wa=k[Qa>>2]|0;Xa=k[Pa>>2]|0}else{Wa=Ta;Xa=Ua}Ua=i[Xa>>0]|0;Ta=Ua&255;if(Va<<24>>24!=-1|Ua<<24>>24!=-40){Ua=k[a>>2]|0;k[Ua+20>>2]=55;k[Ua+24>>2]=Ra;k[Ua+28>>2]=Ta;qb[k[Ua>>2]&127](a)}k[e>>2]=Ta;k[Pa>>2]=Xa+1;k[Qa>>2]=Wa+-1;Oa=Ta}else Oa=La;while(0);do switch(Oa|0){case 218:{Na=25;break a;break}case 217:{Na=72;break a;break}case 216:{Ta=k[a>>2]|0;k[Ta+20>>2]=104;rb[k[Ta+4>>2]&31](a,1);Ta=k[f>>2]|0;if(!(k[Ta+12>>2]|0))Ya=Ta;else{Ta=k[a>>2]|0;k[Ta+20>>2]=64;qb[k[Ta>>2]&127](a);Ya=k[f>>2]|0}i[h>>0]=0;i[n>>0]=1;i[o>>0]=5;i[p>>0]=0;i[q>>0]=1;i[s>>0]=5;i[t>>0]=0;i[u>>0]=1;i[v>>0]=5;i[w>>0]=0;i[x>>0]=1;i[y>>0]=5;i[z>>0]=0;i[A>>0]=1;i[B>>0]=5;i[C>>0]=0;i[D>>0]=1;i[E>>0]=5;i[F>>0]=0;i[G>>0]=1;i[H>>0]=5;i[I>>0]=0;i[J>>0]=1;i[K>>0]=5;i[L>>0]=0;i[M>>0]=1;i[N>>0]=5;i[O>>0]=0;i[P>>0]=1;i[Q>>0]=5;i[R>>0]=0;i[S>>0]=1;i[T>>0]=5;i[U>>0]=0;i[V>>0]=1;i[W>>0]=5;i[X>>0]=0;i[Y>>0]=1;i[Z>>0]=5;i[_>>0]=0;i[$>>0]=1;i[aa>>0]=5;i[ba>>0]=0;i[ca>>0]=1;i[da>>0]=5;i[ea>>0]=0;i[fa>>0]=1;i[ga>>0]=5;k[ha>>2]=0;k[ia>>2]=0;k[ja>>2]=0;k[ka>>2]=0;k[la>>2]=0;i[ma>>0]=1;i[na>>0]=1;i[oa>>0]=0;j[pa>>1]=1;j[qa>>1]=1;k[ra>>2]=0;i[sa>>0]=0;k[Ya+12>>2]=1;break}case 192:{if(!(rl(a,1,0,0)|0)){Ma=0;Na=303;break a}break}case 193:{if(!(rl(a,0,0,0)|0)){Ma=0;Na=303;break a}break}case 194:{if(!(rl(a,0,1,0)|0)){Ma=0;Na=303;break a}break}case 201:{if(!(rl(a,0,0,1)|0)){Ma=0;Na=303;break a}break}case 202:{if(!(rl(a,0,1,1)|0)){Ma=0;Na=303;break a}break}case 207:case 206:case 205:case 203:case 200:case 199:case 198:case 197:case 195:{Ta=k[a>>2]|0;k[Ta+20>>2]=63;k[Ta+24>>2]=Oa;qb[k[Ta>>2]&127](a);break}case 204:{Ta=k[g>>2]|0;Qa=Ta+4|0;Pa=k[Qa>>2]|0;if(!Pa){if(!(ub[k[Ta+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Za=k[Qa>>2]|0}else Za=Pa;Pa=k[Ta>>2]|0;Ua=Za+-1|0;Ra=Pa+1|0;Va=l[Pa>>0]<<8;if(!Ua){if(!(ub[k[Ta+12>>2]&63](a)|0)){Ma=0;Na=303;break a}_a=k[Qa>>2]|0;$a=k[Ta>>2]|0}else{_a=Ua;$a=Ra}Ra=_a+-1|0;Ua=$a+1|0;Pa=l[$a>>0]|Va;Va=Pa+-2|0;if(Pa>>>0>2){Pa=Ta+12|0;ab=Ra;bb=Va;cb=Ua;while(1){if(!ab){if(!(ub[k[Pa>>2]&63](a)|0)){Ma=0;Na=303;break a}db=k[Qa>>2]|0;eb=k[Ta>>2]|0}else{db=ab;eb=cb}fb=db+-1|0;gb=eb+1|0;hb=i[eb>>0]|0;ib=hb&255;if(!fb){if(!(ub[k[Pa>>2]&63](a)|0)){Ma=0;Na=303;break a}jb=k[Qa>>2]|0;kb=k[Ta>>2]|0}else{jb=fb;kb=gb}gb=jb+-1|0;fb=kb+1|0;lb=i[kb>>0]|0;mb=lb&255;nb=bb+-2|0;ob=k[a>>2]|0;k[ob+20>>2]=81;k[ob+24>>2]=ib;k[ob+28>>2]=mb;rb[k[ob+4>>2]&31](a,1);if((hb&255)<=31)if((hb&255)<=15){hb=mb&15;i[a+232+ib>>0]=hb;ob=(lb&255)>>>4;i[a+248+ib>>0]=ob;if((hb&255)>(ob&255)){ob=k[a>>2]|0;k[ob+20>>2]=30;k[ob+24>>2]=mb;qb[k[ob>>2]&127](a)}}else Na=90;else{ob=k[a>>2]|0;k[ob+20>>2]=29;k[ob+24>>2]=ib;qb[k[ob>>2]&127](a);Na=90}if((Na|0)==90){Na=0;i[ib+-16+(a+264)>>0]=lb}if((bb|0)>2){ab=gb;bb=nb;cb=fb}else{pb=gb;sb=nb;tb=fb;break}}}else{pb=Ra;sb=Va;tb=Ua}if(sb){cb=k[a>>2]|0;k[cb+20>>2]=12;qb[k[cb>>2]&127](a)}k[Ta>>2]=tb;k[Qa>>2]=pb;break}case 196:{cb=k[g>>2]|0;bb=cb+4|0;ab=k[bb>>2]|0;if(!ab){if(!(ub[k[cb+12>>2]&63](a)|0)){Na=127;break a}vb=k[bb>>2]|0}else vb=ab;ab=k[cb>>2]|0;Pa=vb+-1|0;fb=ab+1|0;nb=l[ab>>0]<<8;if(!Pa){if(!(ub[k[cb+12>>2]&63](a)|0)){Na=127;break a}wb=k[bb>>2]|0;xb=k[cb>>2]|0}else{wb=Pa;xb=fb}fb=wb+-1|0;Pa=xb+1|0;ab=(l[xb>>0]|nb)+-2|0;if((ab|0)>16){nb=cb+12|0;gb=fb;lb=ab;ib=Pa;while(1){if(!gb){if(!(ub[k[nb>>2]&63](a)|0)){Na=127;break a}yb=k[bb>>2]|0;zb=k[cb>>2]|0}else{yb=gb;zb=ib}ob=l[zb>>0]|0;mb=k[a>>2]|0;k[mb+20>>2]=82;k[mb+24>>2]=ob;rb[k[mb+4>>2]&31](a,1);i[c>>0]=0;mb=yb+-1|0;hb=0;Ab=1;Bb=zb+1|0;while(1){if(!mb){if(!(ub[k[nb>>2]&63](a)|0)){Na=127;break a}Cb=k[bb>>2]|0;Db=k[cb>>2]|0}else{Cb=mb;Db=Bb}Eb=i[Db>>0]|0;i[c+Ab>>0]=Eb;Fb=(Eb&255)+hb|0;Ab=Ab+1|0;Eb=Cb+-1|0;Gb=Db+1|0;if((Ab|0)>=17){Hb=Fb;Ib=Eb;Jb=Gb;break}else{mb=Eb;hb=Fb;Bb=Gb}}Bb=lb+-17|0;hb=k[a>>2]|0;k[hb+24>>2]=l[ta>>0];k[hb+28>>2]=l[ua>>0];k[hb+32>>2]=l[va>>0];k[hb+36>>2]=l[wa>>0];k[hb+40>>2]=l[xa>>0];k[hb+44>>2]=l[ya>>0];k[hb+48>>2]=l[za>>0];k[hb+52>>2]=l[Aa>>0];k[hb+20>>2]=88;rb[k[hb+4>>2]&31](a,2);hb=k[a>>2]|0;k[hb+24>>2]=l[Ba>>0];k[hb+28>>2]=l[Ca>>0];k[hb+32>>2]=l[Da>>0];k[hb+36>>2]=l[Ea>>0];k[hb+40>>2]=l[Fa>>0];k[hb+44>>2]=l[Ga>>0];k[hb+48>>2]=l[Ha>>0];k[hb+52>>2]=l[Ia>>0];k[hb+20>>2]=88;rb[k[hb+4>>2]&31](a,2);if((Hb|0)>256|(Bb|0)<(Hb|0)){hb=k[a>>2]|0;k[hb+20>>2]=9;qb[k[hb>>2]&127](a)}qr(d|0,0,256)|0;if((Hb|0)>0){hb=Ib;mb=0;Ab=Jb;while(1){if(!hb){if(!(ub[k[nb>>2]&63](a)|0)){Na=127;break a}Kb=k[bb>>2]|0;Lb=k[cb>>2]|0}else{Kb=hb;Lb=Ab}Gb=Kb+-1|0;Fb=Lb+1|0;i[d+mb>>0]=i[Lb>>0]|0;mb=mb+1|0;if((mb|0)>=(Hb|0)){Mb=Gb;Nb=Fb;break}else{hb=Gb;Ab=Fb}}}else{Mb=Ib;Nb=Jb}Ab=Bb-Hb|0;hb=(ob&16|0)==0;mb=ob+-16|0;Fb=hb?ob:mb;Gb=hb?a+180+(ob<<2)|0:a+196+(mb<<2)|0;if(Fb>>>0>3){mb=k[a>>2]|0;k[mb+20>>2]=31;k[mb+24>>2]=Fb;qb[k[mb>>2]&127](a)}mb=k[Gb>>2]|0;if(!mb){Fb=Dk(a)|0;k[Gb>>2]=Fb;Ob=Fb}else Ob=mb;mb=Ob;Fb=c;hb=mb+17|0;do{i[mb>>0]=i[Fb>>0]|0;mb=mb+1|0;Fb=Fb+1|0}while((mb|0)<(hb|0));wr((k[Gb>>2]|0)+17|0,d|0,256)|0;if((Ab|0)>16){gb=Mb;lb=Ab;ib=Nb}else{Pb=Mb;Qb=Ab;Rb=Nb;break}}}else{Pb=fb;Qb=ab;Rb=Pa}if(Qb){ib=k[a>>2]|0;k[ib+20>>2]=12;qb[k[ib>>2]&127](a)}k[cb>>2]=Rb;k[bb>>2]=Pb;break}case 219:{ib=k[g>>2]|0;lb=ib+4|0;gb=k[lb>>2]|0;if(!gb){if(!(ub[k[ib+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Sb=k[lb>>2]|0}else Sb=gb;gb=k[ib>>2]|0;nb=Sb+-1|0;Qa=gb+1|0;Ta=l[gb>>0]<<8;if(!nb){if(!(ub[k[ib+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Tb=k[lb>>2]|0;Ub=k[ib>>2]|0}else{Tb=nb;Ub=Qa}Qa=Tb+-1|0;nb=Ub+1|0;gb=l[Ub>>0]|Ta;Ta=gb+-2|0;if(gb>>>0>2){gb=ib+12|0;Ua=Qa;Va=Ta;Ra=nb;while(1){Fb=Va+-1|0;if(!Ua){if(!(ub[k[gb>>2]&63](a)|0)){Ma=0;Na=303;break a}Vb=k[lb>>2]|0;Wb=k[ib>>2]|0}else{Vb=Ua;Wb=Ra}mb=l[Wb>>0]|0;hb=mb>>>4;ob=mb&15;mb=k[a>>2]|0;k[mb+20>>2]=83;k[mb+24>>2]=ob;k[mb+28>>2]=hb;rb[k[mb+4>>2]&31](a,1);if(ob>>>0>3){mb=k[a>>2]|0;k[mb+20>>2]=32;k[mb+24>>2]=ob;qb[k[mb>>2]&127](a)}mb=a+164+(ob<<2)|0;ob=k[mb>>2]|0;if(!ob){Bb=Ck(a)|0;k[mb>>2]=Bb;Xb=Bb}else Xb=ob;ob=(hb|0)!=0;if(ob)if((Va|0)<129){hb=0;do{j[Xb+(hb<<1)>>1]=1;hb=hb+1|0}while((hb|0)!=64);Yb=Fb>>1;Na=150}else Na=157;else if((Va|0)<65){hb=0;do{j[Xb+(hb<<1)>>1]=1;hb=hb+1|0}while((hb|0)!=64);Yb=Fb;Na=150}else Na=157;b:do if((Na|0)==150){Na=0;switch(Yb|0){case 4:{Zb=4;_b=121164;break}case 9:{Zb=Yb;_b=121064;break}case 16:{Zb=Yb;_b=120936;break}case 25:{Zb=Yb;_b=120772;break}case 36:{Zb=Yb;_b=120564;break}case 49:{Zb=Yb;_b=120304;break}default:{hb=Vb+-1|0;Ab=Wb+1|0;if((Yb|0)>0){$b=hb;ac=Yb;bc=119984;cc=Ab;Na=159;break b}else{dc=hb;ec=Yb;fc=Ab;break b}}}$b=Vb+-1|0;ac=Zb;bc=_b;cc=Wb+1|0;Na=159}else if((Na|0)==157){Na=0;$b=Vb+-1|0;ac=64;bc=119984;cc=Wb+1|0;Na=159}while(0);if((Na|0)==159){Na=0;Ab=$b;hb=0;Gb=cc;while(1){Bb=(Ab|0)==0;if(ob){if(Bb){if(!(ub[k[gb>>2]&63](a)|0)){Ma=0;Na=303;break a}gc=k[lb>>2]|0;hc=k[ib>>2]|0}else{gc=Ab;hc=Gb}mb=gc+-1|0;Eb=hc+1|0;ic=l[hc>>0]<<8;if(!mb){if(!(ub[k[gb>>2]&63](a)|0)){Ma=0;Na=303;break a}jc=k[lb>>2]|0;kc=k[ib>>2]|0}else{jc=mb;kc=Eb}lc=jc;mc=kc;nc=l[kc>>0]|ic}else{if(Bb){if(!(ub[k[gb>>2]&63](a)|0)){Ma=0;Na=303;break a}oc=k[lb>>2]|0;pc=k[ib>>2]|0}else{oc=Ab;pc=Gb}lc=oc;mc=pc;nc=l[pc>>0]|0}j[Xb+(k[bc+(hb<<2)>>2]<<1)>>1]=nc;hb=hb+1|0;Bb=lc+-1|0;ic=mc+1|0;if((hb|0)>=(ac|0)){dc=Bb;ec=ac;fc=ic;break}else{Ab=Bb;Gb=ic}}}Gb=k[a>>2]|0;c:do if((k[Gb+104>>2]|0)>1){Ab=Gb;hb=0;while(1){k[Ab+24>>2]=m[Xb+(hb<<1)>>1];k[Ab+28>>2]=m[Xb+((hb|1)<<1)>>1];k[Ab+32>>2]=m[Xb+((hb|2)<<1)>>1];k[Ab+36>>2]=m[Xb+((hb|3)<<1)>>1];k[Ab+40>>2]=m[Xb+((hb|4)<<1)>>1];k[Ab+44>>2]=m[Xb+((hb|5)<<1)>>1];k[Ab+48>>2]=m[Xb+((hb|6)<<1)>>1];k[Ab+52>>2]=m[Xb+((hb|7)<<1)>>1];k[Ab+20>>2]=95;rb[k[Ab+4>>2]&31](a,2);ic=hb+8|0;if((ic|0)>=64)break c;Ab=k[a>>2]|0;hb=ic}}while(0);Gb=Fb-ec+(ob?0-ec|0:0)|0;if((Gb|0)>0){Ua=dc;Va=Gb;Ra=fc}else{qc=dc;rc=Gb;sc=fc;break}}}else{qc=Qa;rc=Ta;sc=nb}if(rc){Ra=k[a>>2]|0;k[Ra+20>>2]=12;qb[k[Ra>>2]&127](a)}k[ib>>2]=sc;k[lb>>2]=qc;break}case 221:{Ra=k[g>>2]|0;Va=Ra+4|0;Ua=k[Va>>2]|0;if(!Ua){if(!(ub[k[Ra+12>>2]&63](a)|0)){Ma=0;Na=303;break a}tc=k[Va>>2]|0}else tc=Ua;Ua=k[Ra>>2]|0;gb=tc+-1|0;bb=Ua+1|0;cb=l[Ua>>0]<<8;if(!gb){if(!(ub[k[Ra+12>>2]&63](a)|0)){Ma=0;Na=303;break a}uc=k[Va>>2]|0;vc=k[Ra>>2]|0}else{uc=gb;vc=bb}bb=uc+-1|0;gb=vc+1|0;if((l[vc>>0]|cb|0)!=4){cb=k[a>>2]|0;k[cb+20>>2]=12;qb[k[cb>>2]&127](a)}if(!bb){if(!(ub[k[Ra+12>>2]&63](a)|0)){Ma=0;Na=303;break a}wc=k[Va>>2]|0;xc=k[Ra>>2]|0}else{wc=bb;xc=gb}gb=wc+-1|0;bb=xc+1|0;cb=l[xc>>0]<<8;if(!gb){if(!(ub[k[Ra+12>>2]&63](a)|0)){Ma=0;Na=303;break a}yc=k[Va>>2]|0;zc=k[Ra>>2]|0}else{yc=gb;zc=bb}bb=l[zc>>0]|cb;cb=k[a>>2]|0;k[cb+20>>2]=84;k[cb+24>>2]=bb;rb[k[cb+4>>2]&31](a,1);k[ha>>2]=bb;k[Ra>>2]=zc+1;k[Va>>2]=yc+-1;break}case 248:{Va=k[g>>2]|0;Ra=k[Va>>2]|0;bb=Va+4|0;cb=k[bb>>2]|0;if(!(k[(k[f>>2]|0)+16>>2]|0)){gb=k[a>>2]|0;k[gb+20>>2]=60;Sq(gb+24|0,156277,80)|0;qb[k[k[a>>2]>>2]&127](a)}do if((k[Ja>>2]|0)>=3){if(!cb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Ac=k[bb>>2]|0;Bc=k[Va>>2]|0}else{Ac=cb;Bc=Ra}gb=Ac+-1|0;Ua=Bc+1|0;Pa=l[Bc>>0]<<8;if(!gb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Cc=k[bb>>2]|0;Dc=k[Va>>2]|0}else{Cc=gb;Dc=Ua}Ua=Cc+-1|0;gb=Dc+1|0;if((l[Dc>>0]|Pa|0)!=24){Pa=k[a>>2]|0;k[Pa+20>>2]=12;qb[k[Pa>>2]&127](a)}if(!Ua){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Ec=k[bb>>2]|0;Fc=k[Va>>2]|0}else{Ec=Ua;Fc=gb}gb=Ec+-1|0;Ua=Fc+1|0;if((i[Fc>>0]|0)!=13){Pa=k[a>>2]|0;k[Pa+20>>2]=70;k[Pa+24>>2]=k[e>>2];qb[k[Pa>>2]&127](a)}if(!gb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Gc=k[bb>>2]|0;Hc=k[Va>>2]|0}else{Gc=gb;Hc=Ua}Ua=Gc+-1|0;gb=Hc+1|0;Pa=l[Hc>>0]<<8;if(!Ua){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Ic=k[bb>>2]|0;Jc=k[Va>>2]|0}else{Ic=Ua;Jc=gb}gb=Ic+-1|0;Ua=Jc+1|0;if((l[Jc>>0]|Pa|0)==255){if(!gb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Kc=k[bb>>2]|0;Lc=k[Va>>2]|0}else{Kc=gb;Lc=Ua}Pa=Kc+-1|0;ab=Lc+1|0;if((i[Lc>>0]|0)==3){if(!Pa){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Mc=k[bb>>2]|0;Nc=k[Va>>2]|0}else{Mc=Pa;Nc=ab}fb=Mc+-1|0;Gb=Nc+1|0;hb=k[Ka>>2]|0;if((l[Nc>>0]|0)==(k[hb+88>>2]|0)){if(!fb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Oc=k[Ka>>2]|0;Pc=k[bb>>2]|0;Qc=k[Va>>2]|0}else{Oc=hb;Pc=fb;Qc=Gb}hb=Pc+-1|0;Ab=Qc+1|0;if((l[Qc>>0]|0)==(k[Oc>>2]|0)){if(!hb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Rc=k[Ka>>2]|0;Sc=k[bb>>2]|0;Tc=k[Va>>2]|0}else{Rc=Oc;Sc=hb;Tc=Ab}ic=Sc+-1|0;Bb=Tc+1|0;if((l[Tc>>0]|0)!=(k[Rc+176>>2]|0)){Uc=ic;Vc=Bb;Na=288;break}if(!ic){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Wc=k[bb>>2]|0;Xc=k[Va>>2]|0}else{Wc=ic;Xc=Bb}Bb=Wc+-1|0;ic=Xc+1|0;if((i[Xc>>0]|0)!=-128){Uc=Bb;Vc=ic;Na=288;break}if(!Bb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Yc=k[bb>>2]|0;Zc=k[Va>>2]|0}else{Yc=Bb;Zc=ic}ic=Yc+-1|0;Bb=Zc+1|0;Eb=l[Zc>>0]<<8;if(!ic){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}_c=k[bb>>2]|0;$c=k[Va>>2]|0}else{_c=ic;$c=Bb}Bb=_c+-1|0;ic=$c+1|0;if(l[$c>>0]|Eb){Uc=Bb;Vc=ic;Na=288;break}if(!Bb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}ad=k[bb>>2]|0;bd=k[Va>>2]|0}else{ad=Bb;bd=ic}ic=ad+-1|0;Bb=bd+1|0;Eb=l[bd>>0]<<8;if(!ic){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}cd=k[bb>>2]|0;dd=k[Va>>2]|0}else{cd=ic;dd=Bb}Bb=cd+-1|0;ic=dd+1|0;if(l[dd>>0]|Eb){Uc=Bb;Vc=ic;Na=288;break}if(!Bb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}ed=k[bb>>2]|0;fd=k[Va>>2]|0}else{ed=Bb;fd=ic}ic=ed+-1|0;Bb=fd+1|0;if(i[fd>>0]|0){Uc=ic;Vc=Bb;Na=288;break}if(!ic){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}gd=k[bb>>2]|0;hd=k[Va>>2]|0}else{gd=ic;hd=Bb}Bb=gd+-1|0;ic=hd+1|0;Eb=l[hd>>0]<<8;if(!Bb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}id=k[bb>>2]|0;jd=k[Va>>2]|0}else{id=Bb;jd=ic}ic=id+-1|0;Bb=jd+1|0;if((l[jd>>0]|Eb|0)!=1){Uc=ic;Vc=Bb;Na=288;break}if(!ic){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}kd=k[bb>>2]|0;ld=k[Va>>2]|0}else{kd=ic;ld=Bb}Bb=kd+-1|0;ic=ld+1|0;Eb=l[ld>>0]<<8;if(!Bb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}md=k[bb>>2]|0;nd=k[Va>>2]|0}else{md=Bb;nd=ic}ic=md+-1|0;Bb=nd+1|0;if(l[nd>>0]|Eb){Uc=ic;Vc=Bb;Na=288;break}if(!ic){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}od=k[bb>>2]|0;pd=k[Va>>2]|0}else{od=ic;pd=Bb}Bb=od+-1|0;ic=pd+1|0;if(i[pd>>0]|0){Uc=Bb;Vc=ic;Na=288;break}if(!Bb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}qd=k[bb>>2]|0;rd=k[Va>>2]|0}else{qd=Bb;rd=ic}ic=qd+-1|0;Bb=rd+1|0;Eb=l[rd>>0]<<8;if(!ic){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}sd=k[bb>>2]|0;td=k[Va>>2]|0}else{sd=ic;td=Bb}Bb=sd+-1|0;ic=td+1|0;if((l[td>>0]|Eb|0)!=1){Uc=Bb;Vc=ic;Na=288;break}if(!Bb){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}ud=k[bb>>2]|0;vd=k[Va>>2]|0}else{ud=Bb;vd=ic}ic=ud+-1|0;Bb=vd+1|0;Eb=l[vd>>0]<<8;if(!ic){if(!(ub[k[Va+12>>2]&63](a)|0)){Ma=0;Na=303;break a}wd=k[bb>>2]|0;xd=k[Va>>2]|0}else{wd=ic;xd=Bb}Bb=wd+-1|0;ic=xd+1|0;if(!(l[xd>>0]|Eb)){yd=Bb;zd=ic}else{Uc=Bb;Vc=ic;Na=288}}else{Uc=hb;Vc=Ab;Na=288}}else{Uc=fb;Vc=Gb;Na=288}}else{Uc=Pa;Vc=ab;Na=288}}else{Uc=gb;Vc=Ua;Na=288}}else{Uc=cb;Vc=Ra;Na=288}while(0);if((Na|0)==288){Na=0;Ra=k[a>>2]|0;k[Ra+20>>2]=28;qb[k[Ra>>2]&127](a);yd=Uc;zd=Vc}k[ja>>2]=1;k[Va>>2]=zd;k[bb>>2]=yd;break}case 239:case 238:case 237:case 236:case 235:case 234:case 233:case 232:case 231:case 230:case 229:case 228:case 227:case 226:case 225:case 224:{if(!(ub[k[(k[f>>2]|0)+32+(Oa+-224<<2)>>2]&63](a)|0)){Ma=0;Na=303;break a}break}case 254:{if(!(ub[k[(k[f>>2]|0)+28>>2]&63](a)|0)){Ma=0;Na=303;break a}break}case 1:case 215:case 214:case 213:case 212:case 211:case 210:case 209:case 208:{Ra=k[a>>2]|0;k[Ra+20>>2]=94;k[Ra+24>>2]=Oa;rb[k[Ra+4>>2]&31](a,1);break}case 220:{Ra=k[g>>2]|0;cb=Ra+4|0;lb=k[cb>>2]|0;if(!lb){if(!(ub[k[Ra+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Ad=k[cb>>2]|0}else Ad=lb;lb=k[Ra>>2]|0;ib=Ad+-1|0;nb=lb+1|0;Ta=l[lb>>0]<<8;if(!ib){if(!(ub[k[Ra+12>>2]&63](a)|0)){Ma=0;Na=303;break a}Bd=k[cb>>2]|0;Cd=k[Ra>>2]|0}else{Bd=ib;Cd=nb}nb=l[Cd>>0]|Ta;Ta=nb+-2|0;ib=k[a>>2]|0;k[ib+20>>2]=93;k[ib+24>>2]=k[e>>2];k[ib+28>>2]=Ta;rb[k[ib+4>>2]&31](a,1);k[Ra>>2]=Cd+1;k[cb>>2]=Bd+-1;if(nb>>>0>2)rb[k[(k[g>>2]|0)+16>>2]&31](a,Ta);break}default:{Ta=k[a>>2]|0;k[Ta+20>>2]=70;k[Ta+24>>2]=Oa;qb[k[Ta>>2]&127](a)}}while(0);k[e>>2]=0;La=0}if((Na|0)==25){La=k[g>>2]|0;g=k[La>>2]|0;Oa=La+4|0;Bd=k[Oa>>2]|0;if(!(k[(k[f>>2]|0)+16>>2]|0)){Cd=k[a>>2]|0;k[Cd+20>>2]=60;Sq(Cd+24|0,156273,80)|0;qb[k[k[a>>2]>>2]&127](a)}do if(!Bd)if(!(ub[k[La+12>>2]&63](a)|0)){Ma=0;r=b;return Ma|0}else{Dd=k[Oa>>2]|0;Ed=k[La>>2]|0;break}else{Dd=Bd;Ed=g}while(0);g=Dd+-1|0;Dd=Ed+1|0;Bd=l[Ed>>0]<<8;do if(!g)if(!(ub[k[La+12>>2]&63](a)|0)){Ma=0;r=b;return Ma|0}else{Fd=k[Oa>>2]|0;Gd=k[La>>2]|0;break}else{Fd=g;Gd=Dd}while(0);Dd=Fd+-1|0;Fd=Gd+1|0;g=l[Gd>>0]|Bd;do if(!Dd)if(!(ub[k[La+12>>2]&63](a)|0)){Ma=0;r=b;return Ma|0}else{Hd=k[Oa>>2]|0;Id=k[La>>2]|0;break}else{Hd=Dd;Id=Fd}while(0);Fd=i[Id>>0]|0;Dd=Fd&255;Bd=k[a>>2]|0;k[Bd+20>>2]=105;k[Bd+24>>2]=Dd;rb[k[Bd+4>>2]&31](a,1);do if(!((Fd&255)>4|(g|0)!=((Dd<<1)+6|0))){if(Fd<<24>>24){k[a+340>>2]=Dd;Bd=Hd+-1|0;Jd=(Bd|0)==0;Kd=Bd;Ld=Id+1|0;Na=42;break}if(k[a+224>>2]|0){k[a+340>>2]=Dd;Bd=Hd+-1|0;if(!Bd){Md=1;Na=61}else{Nd=1;Od=Bd;Pd=Id+1|0}}else Na=41}else Na=41;while(0);if((Na|0)==41){g=k[a>>2]|0;k[g+20>>2]=12;qb[k[g>>2]&127](a);k[a+340>>2]=Dd;g=Hd+-1|0;Hd=Id+1|0;Id=(g|0)==0;if(!(Fd<<24>>24)){Qd=Id;Rd=1;Sd=g;Td=Hd;Na=60}else{Jd=Id;Kd=g;Ld=Hd;Na=42}}d:do if((Na|0)==42){Hd=La+12|0;g=a+344|0;Id=Jd;Fd=Kd;Bd=0;Gd=Ld;while(1){if(Id){if(!(ub[k[Hd>>2]&63](a)|0)){Ma=0;Na=303;break}Ud=k[Oa>>2]|0;Vd=k[La>>2]|0}else{Ud=Fd;Vd=Gd}Ed=Ud+-1|0;Cd=Vd+1|0;Ad=l[Vd>>0]|0;e:do if((Bd|0)>0){yd=0;while(1){if((Ad|0)==(k[k[a+344+(yd<<2)>>2]>>2]|0))break;yd=yd+1|0;if((yd|0)>=(Bd|0)){Wd=Ad;break e}}yd=k[k[g>>2]>>2]|0;if((Bd|0)>1){ob=yd;Fb=1;while(1){zd=k[k[a+344+(Fb<<2)>>2]>>2]|0;ja=(zd|0)>(ob|0)?zd:ob;Fb=Fb+1|0;if((Fb|0)==(Bd|0)){Xd=ja;break}else ob=ja}}else Xd=yd;Wd=Xd+1|0}else Wd=Ad;while(0);Ad=k[Ka>>2]|0;bb=k[Ja>>2]|0;f:do if((bb|0)>0){Va=0;ob=Ad;while(1){if((Wd|0)==(k[ob>>2]|0)){Yd=ob;break f}Va=Va+1|0;Fb=ob+88|0;if((Va|0)>=(bb|0)){Zd=Fb;Na=55;break}else ob=Fb}}else{Zd=Ad;Na=55}while(0);if((Na|0)==55){Na=0;Ad=k[a>>2]|0;k[Ad+20>>2]=4;k[Ad+24>>2]=Wd;qb[k[Ad>>2]&127](a);Yd=Zd}k[a+344+(Bd<<2)>>2]=Yd;if(!Ed){if(!(ub[k[Hd>>2]&63](a)|0)){Ma=0;Na=303;break}_d=k[Oa>>2]|0;$d=k[La>>2]|0}else{_d=Ed;$d=Cd}Ad=l[$d>>0]|0;bb=Yd+20|0;k[bb>>2]=Ad>>>4;ob=Yd+24|0;k[ob>>2]=Ad&15;Ad=k[a>>2]|0;k[Ad+24>>2]=k[Yd>>2];k[Ad+28>>2]=k[bb>>2];k[Ad+32>>2]=k[ob>>2];k[Ad+20>>2]=106;rb[k[Ad+4>>2]&31](a,1);Bd=Bd+1|0;Ad=_d+-1|0;ob=$d+1|0;bb=(Ad|0)==0;if((Bd|0)>=(Dd|0)){Qd=bb;Rd=0;Sd=Ad;Td=ob;Na=60;break d}else{Id=bb;Fd=Ad;Gd=ob}}if((Na|0)==303){r=b;return Ma|0}}while(0);if((Na|0)==60)if(Qd){Md=Rd;Na=61}else{Nd=Rd;Od=Sd;Pd=Td}do if((Na|0)==61)if(!(ub[k[La+12>>2]&63](a)|0)){Ma=0;r=b;return Ma|0}else{Nd=Md;Od=k[Oa>>2]|0;Pd=k[La>>2]|0;break}while(0);Md=Od+-1|0;Od=Pd+1|0;Td=a+412|0;k[Td>>2]=l[Pd>>0];do if(!Md)if(!(ub[k[La+12>>2]&63](a)|0)){Ma=0;r=b;return Ma|0}else{ae=k[Oa>>2]|0;be=k[La>>2]|0;break}else{ae=Md;be=Od}while(0);Od=ae+-1|0;ae=be+1|0;Md=a+416|0;k[Md>>2]=l[be>>0];do if(!Od)if(!(ub[k[La+12>>2]&63](a)|0)){Ma=0;r=b;return Ma|0}else{ce=k[Oa>>2]|0;de=k[La>>2]|0;break}else{ce=Od;de=ae}while(0);ae=l[de>>0]|0;Od=a+420|0;k[Od>>2]=ae>>>4;be=a+424|0;k[be>>2]=ae&15;ae=k[a>>2]|0;k[ae+24>>2]=k[Td>>2];k[ae+28>>2]=k[Md>>2];k[ae+32>>2]=k[Od>>2];k[ae+36>>2]=k[be>>2];k[ae+20>>2]=107;rb[k[ae+4>>2]&31](a,1);k[(k[f>>2]|0)+20>>2]=0;if(!Nd){Nd=a+144|0;k[Nd>>2]=(k[Nd>>2]|0)+1}k[La>>2]=de+1;k[Oa>>2]=ce+-1;k[e>>2]=0;Ma=1;r=b;return Ma|0}else if((Na|0)==72){ce=k[a>>2]|0;k[ce+20>>2]=87;rb[k[ce+4>>2]&31](a,1);k[e>>2]=0;Ma=2;r=b;return Ma|0}else if((Na|0)==127){Ma=0;r=b;return Ma|0}else if((Na|0)==303){r=b;return Ma|0}return 0}function nl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=a+440|0;c=k[b>>2]|0;do if(!c)if(!(kl(a)|0)){d=0;return d|0}else{e=k[b>>2]|0;break}else e=c;while(0);c=a+464|0;f=k[(k[c>>2]|0)+20>>2]|0;if((e|0)!=(f+208|0)){if(!(yb[k[(k[a+24>>2]|0)+20>>2]&127](a,f)|0)){d=0;return d|0}}else{e=k[a>>2]|0;k[e+20>>2]=100;k[e+24>>2]=f;rb[k[e+4>>2]&31](a,3);k[b>>2]=0}b=(k[c>>2]|0)+20|0;k[b>>2]=(k[b>>2]|0)+1&7;d=1;return d|0}function ol(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0;b=a+24|0;c=k[b>>2]|0;d=c+4|0;e=k[d>>2]|0;do if(!e)if(!(ub[k[c+12>>2]&63](a)|0)){f=0;return f|0}else{g=k[d>>2]|0;break}else g=e;while(0);e=k[c>>2]|0;h=g+-1|0;g=e+1|0;i=(l[e>>0]|0)<<8;do if(!h)if(!(ub[k[c+12>>2]&63](a)|0)){f=0;return f|0}else{j=k[d>>2]|0;m=k[c>>2]|0;break}else{j=h;m=g}while(0);g=l[m>>0]|0|i;i=g+-2|0;h=k[a>>2]|0;k[h+20>>2]=93;k[h+24>>2]=k[a+440>>2];k[h+28>>2]=i;rb[k[h+4>>2]&31](a,1);k[c>>2]=m+1;k[d>>2]=j+-1;if(g>>>0<=2){f=1;return f|0}rb[k[(k[b>>2]|0)+16>>2]&31](a,i);f=1;return f|0}function pl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=r;r=r+16|0;c=b;d=a+24|0;e=k[d>>2]|0;f=e+4|0;g=k[f>>2]|0;do if(!g)if(!(ub[k[e+12>>2]&63](a)|0)){h=0;r=b;return h|0}else{j=k[f>>2]|0;break}else j=g;while(0);g=k[e>>2]|0;m=j+-1|0;j=g+1|0;n=l[g>>0]<<8;do if(!m)if(!(ub[k[e+12>>2]&63](a)|0)){h=0;r=b;return h|0}else{o=k[f>>2]|0;p=k[e>>2]|0;break}else{o=m;p=j}while(0);j=l[p>>0]|n;n=j+-2|0;m=(n|0)>13?14:j>>>0>2?n:0;j=o+-1|0;o=p+1|0;a:do if(!m){q=j;s=o}else{p=e+12|0;g=j;t=0;u=o;while(1){if(!g){if(!(ub[k[p>>2]&63](a)|0)){h=0;break}v=k[f>>2]|0;w=k[e>>2]|0}else{v=g;w=u}i[c+t>>0]=i[w>>0]|0;t=t+1|0;x=v+-1|0;y=w+1|0;if(t>>>0>=m>>>0){q=x;s=y;break a}else{g=x;u=y}}r=b;return h|0}while(0);w=n-m|0;v=k[a+440>>2]|0;b:do switch(v|0){case 224:{ql(a,c,m,w);break}case 238:{if((((m>>>0>11&(i[c>>0]|0)==65?(i[c+1>>0]|0)==100:0)?(i[c+2>>0]|0)==111:0)?(i[c+3>>0]|0)==98:0)?(i[c+4>>0]|0)==101:0){o=l[c+7>>0]<<8|l[c+8>>0];j=l[c+9>>0]<<8|l[c+10>>0];u=i[c+11>>0]|0;g=k[a>>2]|0;k[g+24>>2]=l[c+5>>0]<<8|l[c+6>>0];k[g+28>>2]=o;k[g+32>>2]=j;k[g+36>>2]=u&255;k[g+20>>2]=78;rb[k[g+4>>2]&31](a,1);k[a+296>>2]=1;i[a+300>>0]=u;break b}u=k[a>>2]|0;k[u+20>>2]=80;k[u+24>>2]=n;rb[k[u+4>>2]&31](a,1);break}default:{u=k[a>>2]|0;k[u+20>>2]=70;k[u+24>>2]=v;qb[k[u>>2]&127](a)}}while(0);k[e>>2]=s;k[f>>2]=q;if((w|0)<=0){h=1;r=b;return h|0}rb[k[(k[d>>2]|0)+16>>2]&31](a,w);h=1;r=b;return h|0}function ql(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=d+c|0;if(c>>>0>13){if((i[b>>0]|0)==74)if((((i[b+1>>0]|0)==70?(i[b+2>>0]|0)==73:0)?(i[b+3>>0]|0)==70:0)?(i[b+4>>0]|0)==0:0){k[a+284>>2]=1;d=i[b+5>>0]|0;f=a+288|0;i[f>>0]=d;g=i[b+6>>0]|0;h=a+289|0;i[h>>0]=g;m=i[b+7>>0]|0;n=a+290|0;i[n>>0]=m;o=(l[b+8>>0]<<8|l[b+9>>0])&65535;p=a+292|0;j[p>>1]=o;q=(l[b+10>>0]<<8|l[b+11>>0])&65535;r=a+294|0;j[r>>1]=q;if((d+-1&255)<2){s=a;t=d;u=g;v=o;w=q;x=m}else{m=k[a>>2]|0;k[m+20>>2]=122;k[m+24>>2]=d&255;k[m+28>>2]=g&255;rb[k[m+4>>2]&31](a,-1);s=a;t=i[f>>0]|0;u=i[h>>0]|0;v=j[p>>1]|0;w=j[r>>1]|0;x=i[n>>0]|0}n=k[a>>2]|0;k[n+24>>2]=t&255;k[n+28>>2]=u&255;k[n+32>>2]=v&65535;k[n+36>>2]=w&65535;k[n+40>>2]=x&255;k[n+20>>2]=89;rb[k[n+4>>2]&31](s,1);n=b+12|0;x=i[n>>0]|0;w=b+13|0;v=i[w>>0]|0;if(!((v|x)<<24>>24)){y=x;z=v}else{v=k[a>>2]|0;k[v+20>>2]=92;k[v+24>>2]=l[n>>0];k[v+28>>2]=l[w>>0];rb[k[v+4>>2]&31](s,1);y=i[n>>0]|0;z=i[w>>0]|0}w=e+-14|0;if((w|0)==(ha((y&255)*3|0,z&255)|0))return;z=k[a>>2]|0;k[z+20>>2]=90;k[z+24>>2]=w;rb[k[z+4>>2]&31](s,1);return}else A=16}else if(c>>>0>5?(i[b>>0]|0)==74:0)A=16;if(((((A|0)==16?(i[b+1>>0]|0)==70:0)?(i[b+2>>0]|0)==88:0)?(i[b+3>>0]|0)==88:0)?(i[b+4>>0]|0)==0:0){A=b+5|0;switch(l[A>>0]|0){case 16:{b=k[a>>2]|0;k[b+20>>2]=110;k[b+24>>2]=e;rb[k[b+4>>2]&31](a,1);return}case 17:{b=k[a>>2]|0;k[b+20>>2]=111;k[b+24>>2]=e;rb[k[b+4>>2]&31](a,1);return}case 19:{b=k[a>>2]|0;k[b+20>>2]=112;k[b+24>>2]=e;rb[k[b+4>>2]&31](a,1);return}default:{b=k[a>>2]|0;k[b+20>>2]=91;k[b+24>>2]=l[A>>0];k[b+28>>2]=e;rb[k[b+4>>2]&31](a,1);return}}}b=k[a>>2]|0;k[b+20>>2]=79;k[b+24>>2]=e;rb[k[b+4>>2]&31](a,1);return}function rl(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,m=0,n=0,o=0,p=0,q=0,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;e=k[a+24>>2]|0;f=k[e>>2]|0;g=e+4|0;h=k[g>>2]|0;k[a+220>>2]=b;k[a+224>>2]=c;k[a+228>>2]=d;do if(!h)if(!(ub[k[e+12>>2]&63](a)|0)){i=0;return i|0}else{j=k[g>>2]|0;m=k[e>>2]|0;break}else{j=h;m=f}while(0);f=j+-1|0;j=m+1|0;h=(l[m>>0]|0)<<8;do if(!f)if(!(ub[k[e+12>>2]&63](a)|0)){i=0;return i|0}else{n=k[g>>2]|0;o=k[e>>2]|0;break}else{n=f;o=j}while(0);j=n+-1|0;n=o+1|0;f=l[o>>0]|0|h;do if(!j)if(!(ub[k[e+12>>2]&63](a)|0)){i=0;return i|0}else{p=k[g>>2]|0;q=k[e>>2]|0;break}else{p=j;q=n}while(0);n=p+-1|0;p=q+1|0;k[a+212>>2]=l[q>>0];do if(!n)if(!(ub[k[e+12>>2]&63](a)|0)){i=0;return i|0}else{r=k[g>>2]|0;s=k[e>>2]|0;break}else{r=n;s=p}while(0);p=r+-1|0;r=s+1|0;n=(l[s>>0]|0)<<8;s=a+32|0;k[s>>2]=n;do if(!p)if(!(ub[k[e+12>>2]&63](a)|0)){i=0;return i|0}else{t=k[s>>2]|0;u=k[g>>2]|0;v=k[e>>2]|0;break}else{t=n;u=p;v=r}while(0);r=u+-1|0;u=v+1|0;k[s>>2]=t+(l[v>>0]|0);do if(!r)if(!(ub[k[e+12>>2]&63](a)|0)){i=0;return i|0}else{w=k[g>>2]|0;x=k[e>>2]|0;break}else{w=r;x=u}while(0);u=w+-1|0;w=x+1|0;r=(l[x>>0]|0)<<8;x=a+28|0;k[x>>2]=r;do if(!u)if(!(ub[k[e+12>>2]&63](a)|0)){i=0;return i|0}else{y=k[x>>2]|0;z=k[g>>2]|0;A=k[e>>2]|0;break}else{y=r;z=u;A=w}while(0);w=z+-1|0;z=A+1|0;k[x>>2]=y+(l[A>>0]|0);do if(!w)if(!(ub[k[e+12>>2]&63](a)|0)){i=0;return i|0}else{B=k[g>>2]|0;C=k[e>>2]|0;break}else{B=w;C=z}while(0);z=a+36|0;k[z>>2]=l[C>>0];w=f+-8|0;f=k[a>>2]|0;k[f+24>>2]=k[a+440>>2];k[f+28>>2]=k[x>>2];k[f+32>>2]=k[s>>2];k[f+36>>2]=k[z>>2];k[f+20>>2]=102;rb[k[f+4>>2]&31](a,1);f=a+464|0;if(k[(k[f>>2]|0)+16>>2]|0){A=k[a>>2]|0;k[A+20>>2]=61;qb[k[A>>2]&127](a)}if(((k[s>>2]|0)!=0?(k[x>>2]|0)!=0:0)?(x=k[z>>2]|0,(x|0)>=1):0)D=x;else{x=k[a>>2]|0;k[x+20>>2]=33;qb[k[x>>2]&127](a);D=k[z>>2]|0}if((w|0)!=(D*3|0)){D=k[a>>2]|0;k[D+20>>2]=12;qb[k[D>>2]&127](a)}D=a+216|0;if(!(k[D>>2]|0)){w=nb[k[k[a+4>>2]>>2]&63](a,1,(k[z>>2]|0)*88|0)|0;k[D>>2]=w}w=B+-1|0;B=C+1|0;a:do if((k[z>>2]|0)>0){C=e+12|0;x=w;s=0;A=B;while(1){if(!x){if(!(ub[k[C>>2]&63](a)|0)){i=0;E=55;break}F=k[g>>2]|0;G=k[e>>2]|0}else{F=x;G=A}y=F+-1|0;u=G+1|0;r=l[G>>0]|0;v=k[D>>2]|0;b:do if((s|0)>0){t=v;p=0;while(1){if((r|0)==(k[t>>2]|0))break;p=p+1|0;n=t+88|0;if((p|0)>=(s|0)){H=r;I=n;break b}else t=n}t=k[v>>2]|0;p=v+88|0;if((s|0)>1){n=v;q=t;j=p;h=1;while(1){o=k[n+88>>2]|0;m=(o|0)>(q|0)?o:q;h=h+1|0;if((h|0)==(s|0)){J=m;break}else{o=j;q=m;j=j+88|0;n=o}}K=J;L=v+(s*88|0)|0}else{K=t;L=p}H=K+1|0;I=L}else{H=r;I=v}while(0);k[I>>2]=H;k[I+4>>2]=s;if(!y){if(!(ub[k[C>>2]&63](a)|0)){i=0;E=55;break}M=k[g>>2]|0;N=k[e>>2]|0}else{M=y;N=u}v=M+-1|0;r=N+1|0;n=l[N>>0]|0;j=I+8|0;k[j>>2]=n>>>4;q=I+12|0;k[q>>2]=n&15;if(!v){if(!(ub[k[C>>2]&63](a)|0)){i=0;E=55;break}O=k[g>>2]|0;P=k[e>>2]|0}else{O=v;P=r}r=I+16|0;k[r>>2]=l[P>>0];v=k[a>>2]|0;k[v+24>>2]=k[I>>2];k[v+28>>2]=k[j>>2];k[v+32>>2]=k[q>>2];k[v+36>>2]=k[r>>2];k[v+20>>2]=103;rb[k[v+4>>2]&31](a,1);s=s+1|0;v=O+-1|0;r=P+1|0;if((s|0)>=(k[z>>2]|0)){Q=v;R=r;break a}else{x=v;A=r}}if((E|0)==55)return i|0}else{Q=w;R=B}while(0);k[(k[f>>2]|0)+16>>2]=1;k[e>>2]=R;k[g>>2]=Q;i=1;return i|0}function sl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,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=k[a+20>>2]|0;if((b|0)!=202){c=k[a>>2]|0;k[c+20>>2]=21;k[c+24>>2]=b;qb[k[c>>2]&127](a)}cl(a);c=k[a+216>>2]|0;b=a+36|0;d=k[b>>2]|0;e=(d|0)>0;if(e){f=k[a+324>>2]|0;g=(k[a+76>>2]|0)!=0?8:4;h=a+320|0;i=k[a+328>>2]|0;if((f|0)>(g|0)){j=(i|0)>(g|0);l=f<<1;m=0;n=c;while(1){o=n+36|0;k[o>>2]=f;a:do if(j)p=1;else{q=k[h>>2]|0;r=k[n+12>>2]|0;s=1;while(1){t=s<<1;if((q|0)%(ha(t,r)|0)|0){p=s;break a}if((ha(i,t)|0)>(g|0)){p=t;break}else s=t}}while(0);s=ha(i,p)|0;r=n+40|0;k[r>>2]=s;q=s<<1;if((f|0)<=(q|0)){if((s|0)>(l|0))k[r>>2]=l}else k[o>>2]=q;m=m+1|0;if((m|0)>=(d|0))break;else n=n+88|0}}else{n=k[a+316>>2]|0;m=(i|0)>(g|0);l=0;p=c;while(1){j=k[p+8>>2]|0;q=1;while(1){r=q<<1;if((n|0)%(ha(r,j)|0)|0){u=q;break}if((ha(f,r)|0)>(g|0)){u=r;break}else q=r}q=ha(f,u)|0;j=p+36|0;k[j>>2]=q;b:do if(m)v=1;else{o=k[h>>2]|0;r=k[p+12>>2]|0;s=1;while(1){t=s<<1;if((o|0)%(ha(t,r)|0)|0){v=s;break b}if((ha(i,t)|0)>(g|0)){v=t;break}else s=t}}while(0);s=ha(i,v)|0;r=p+40|0;k[r>>2]=s;o=s<<1;if((q|0)<=(o|0)){t=q<<1;if((s|0)>(t|0))k[r>>2]=t}else k[j>>2]=o;l=l+1|0;if((l|0)>=(d|0))break;else p=p+88|0}}if(e){e=a+28|0;p=a+316|0;l=a+428|0;v=a+32|0;i=a+320|0;g=0;h=c;while(1){c=ha(ha(k[h+8>>2]|0,k[e>>2]|0)|0,k[h+36>>2]|0)|0;m=pm(c,ha(k[l>>2]|0,k[p>>2]|0)|0)|0;k[h+44>>2]=m;m=ha(ha(k[h+12>>2]|0,k[v>>2]|0)|0,k[h+40>>2]|0)|0;c=pm(m,ha(k[l>>2]|0,k[i>>2]|0)|0)|0;k[h+48>>2]=c;g=g+1|0;c=k[b>>2]|0;if((g|0)>=(c|0)){w=c;break}else h=h+88|0}}else w=d}else w=d;switch(k[a+44>>2]|0){case 1:{k[a+120>>2]=1;x=1;break}case 6:case 2:{k[a+120>>2]=3;x=3;break}case 7:case 3:{k[a+120>>2]=3;x=3;break}case 5:case 4:{k[a+120>>2]=4;x=4;break}default:{k[a+120>>2]=w;x=w}}k[a+124>>2]=(k[a+84>>2]|0)==0?x:1;if(!(ul(a)|0)){y=1;z=a+128|0;k[z>>2]=y;return}y=k[a+320>>2]|0;z=a+128|0;k[z>>2]=y;return}function tl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,28)|0;k[a+444>>2]=c;k[c>>2]=43;k[c+4>>2]=44;k[c+8>>2]=0;d=k[a+212>>2]|0;if((d|0)!=8){e=k[a>>2]|0;k[e+20>>2]=16;k[e+24>>2]=d;qb[k[e>>2]&127](a)}sl(a);e=nb[k[k[b>>2]>>2]&63](a,1,1280)|0;qr(e|0,0,512)|0;k[a+336>>2]=e+512;d=0;do{i[e+(d+512)>>0]=d;d=d+1|0}while((d|0)!=256);qr(e+768|0,-1,512)|0;if(((k[a+116>>2]|0)!=0?(k[a+112>>2]|0)!=0:0)?(e=a+120|0,(k[e>>2]|0)>=1):0)f=e;else{e=k[a>>2]|0;k[e+20>>2]=33;qb[k[e>>2]&127](a);f=a+120|0}e=c+12|0;k[e>>2]=0;d=ul(a)|0;g=c+16|0;k[g>>2]=d;d=c+20|0;k[d>>2]=0;h=c+24|0;k[h>>2]=0;do if(!(k[a+84>>2]|0)){k[a+100>>2]=0;k[a+104>>2]=0;k[a+108>>2]=0;j=a+68|0}else{if(!(k[a+64>>2]|0)){k[a+100>>2]=0;k[a+104>>2]=0;k[a+108>>2]=0}c=a+68|0;if(k[c>>2]|0){l=k[a>>2]|0;k[l+20>>2]=48;qb[k[l>>2]&127](a)}do if((k[f>>2]|0)==3){if(k[a+136>>2]|0){k[a+104>>2]=1;break}if(!(k[a+92>>2]|0)){k[a+100>>2]=1;break}else{k[a+108>>2]=1;break}}else{k[a+100>>2]=1;k[a+104>>2]=0;k[a+108>>2]=0;k[a+136>>2]=0}while(0);if(k[a+100>>2]|0){Wl(a);k[d>>2]=k[a+484>>2]}if((k[a+108>>2]|0)==0?(k[a+104>>2]|0)==0:0){j=c;break}em(a);k[h>>2]=k[a+484>>2];j=c}while(0);if(!(k[j>>2]|0)){if(!(k[g>>2]|0)){Vn(a);Il(a)}else xl(a);Dl(a,k[a+108>>2]|0)}fo(a);if(!(k[a+228>>2]|0))ho(a);else Dn(a);g=a+460|0;if(!(k[(k[g>>2]|0)+16>>2]|0))m=(k[a+64>>2]|0)!=0;else m=1;Nn(a,m&1);if(!(k[j>>2]|0))to(a,0);qb[k[(k[b>>2]|0)+24>>2]&127](a);qb[k[(k[g>>2]|0)+8>>2]&127](a);b=k[a+8>>2]|0;if(!b)return;if(k[a+64>>2]|0)return;if(!(k[(k[g>>2]|0)+16>>2]|0))return;g=k[a+36>>2]|0;j=(k[a+224>>2]|0)==0?g:(g*3|0)+2|0;k[b+4>>2]=0;g=ha(j,k[a+332>>2]|0)|0;k[b+8>>2]=g;k[b+12>>2]=0;k[b+16>>2]=(k[a+108>>2]|0)!=0?3:2;k[e>>2]=(k[e>>2]|0)+1;return}function ul(a){a=a|0;var b=0,c=0;if(k[a+308>>2]|0)return 0;switch(k[a+40>>2]|0){case 7:case 3:break;default:return 0}if((k[a+36>>2]|0)!=3)return 0;if((k[a+44>>2]|0)!=2)return 0;if((k[a+120>>2]|0)!=3)return 0;if(k[a+304>>2]|0)return 0;b=k[a+216>>2]|0;if((k[b+8>>2]|0)!=2)return 0;if((k[b+96>>2]|0)!=1)return 0;if((k[b+184>>2]|0)!=1)return 0;if((k[b+12>>2]|0)>2)return 0;if((k[b+100>>2]|0)!=1)return 0;if((k[b+188>>2]|0)!=1)return 0;c=k[b+36>>2]|0;if((c|0)!=(k[a+324>>2]|0))return 0;if((k[b+124>>2]|0)!=(c|0))return 0;if((k[b+212>>2]|0)!=(c|0))return 0;c=k[b+40>>2]|0;if((c|0)!=(k[a+328>>2]|0))return 0;if((k[b+128>>2]|0)==(c|0))return (k[b+216>>2]|0)==(c|0)|0;else return 0;return 0}function vl(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+444>>2]|0;c=b+8|0;if(!(k[c>>2]|0)){d=a+84|0;do if((k[d>>2]|0)!=0?(k[a+136>>2]|0)==0:0){if((k[a+92>>2]|0)!=0?(k[a+108>>2]|0)!=0:0){k[a+484>>2]=k[b+24>>2];k[c>>2]=1;break}if(!(k[a+100>>2]|0)){e=k[a>>2]|0;k[e+20>>2]=47;qb[k[e>>2]&127](a);break}else{k[a+484>>2]=k[b+20>>2];break}}while(0);qb[k[k[a+472>>2]>>2]&127](a);qb[k[(k[a+452>>2]|0)+8>>2]&127](a);if(!(k[a+68>>2]|0)){if(!(k[b+16>>2]|0))qb[k[k[a+480>>2]>>2]&127](a);qb[k[k[a+476>>2]>>2]&127](a);if(k[d>>2]|0)rb[k[k[a+484>>2]>>2]&31](a,k[c>>2]|0);rb[k[k[a+456>>2]>>2]&31](a,(k[c>>2]|0)!=0?3:0);rb[k[k[a+448>>2]>>2]&31](a,0)}}else{k[c>>2]=0;rb[k[k[a+484>>2]>>2]&31](a,0);rb[k[k[a+456>>2]>>2]&31](a,2);rb[k[k[a+448>>2]>>2]&31](a,2)}d=k[a+8>>2]|0;if(!d)return;e=k[b+12>>2]|0;k[d+12>>2]=e;b=((k[c>>2]|0)!=0?2:1)+e|0;e=d+16|0;k[e>>2]=b;if(!(k[a+64>>2]|0))return;if(k[(k[a+460>>2]|0)+20>>2]|0)return;k[e>>2]=b+((k[a+108>>2]|0)!=0?2:1);return}function wl(a){a=a|0;var b=0;b=k[a+444>>2]|0;if(k[a+84>>2]|0)qb[k[(k[a+484>>2]|0)+8>>2]&127](a);a=b+12|0;k[a>>2]=(k[a>>2]|0)+1;return}function xl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,48)|0;d=a+476|0;k[d>>2]=c;k[c>>2]=45;k[c+8>>2]=0;e=ha(k[a+120>>2]|0,k[a+112>>2]|0)|0;k[c+40>>2]=e;f=c+4|0;if((k[a+320>>2]|0)==2){k[f>>2]=3;k[c+12>>2]=11;g=nb[k[(k[b>>2]|0)+4>>2]&63](a,1,e)|0;k[c+32>>2]=g;h=k[d>>2]|0}else{k[f>>2]=4;k[c+12>>2]=12;k[c+32>>2]=0;h=c}c=(k[a+40>>2]|0)==7;f=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;d=h+16|0;k[d>>2]=f;f=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;g=h+20|0;k[g>>2]=f;f=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;e=h+24|0;k[e>>2]=f;f=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;k[h+28>>2]=f;h=k[d>>2]|0;d=k[g>>2]|0;g=k[e>>2]|0;if(c){c=0;e=-128;while(1){k[h+(c<<2)>>2]=(e*183763|0)+32768>>16;k[d+(c<<2)>>2]=(e*232260|0)+32768>>16;a=ha(e,-93603)|0;k[g+(c<<2)>>2]=a;a=(ha(e,-45107)|0)+32768|0;k[f+(c<<2)>>2]=a;c=c+1|0;if((c|0)==256)break;else e=e+1|0}return}else{e=0;c=-128;while(1){k[h+(e<<2)>>2]=(c*91881|0)+32768>>16;k[d+(e<<2)>>2]=(c*116130|0)+32768>>16;a=ha(c,-46802)|0;k[g+(e<<2)>>2]=a;a=(ha(c,-22553)|0)+32768|0;k[f+(e<<2)>>2]=a;e=e+1|0;if((e|0)==256)break;else c=c+1|0}return}}function yl(a){a=a|0;var b=0;b=k[a+476>>2]|0;k[b+36>>2]=0;k[b+44>>2]=k[a+116>>2];return}function zl(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,l=0,m=0,n=0,o=0;d=r;r=r+16|0;h=d;i=k[a+476>>2]|0;j=i+36|0;if(!(k[j>>2]|0)){l=i+44|0;m=k[l>>2]|0;n=m>>>0<2?m:2;m=k[f>>2]|0;o=g-m|0;g=n>>>0>o>>>0?o:n;k[h>>2]=k[e+(m<<2)>>2];if(g>>>0>1)k[h+4>>2]=k[e+(m+1<<2)>>2];else{k[h+4>>2]=k[i+32>>2];k[j>>2]=1}Ab[k[i+12>>2]&31](a,b,k[c>>2]|0,h);h=(k[j>>2]|0)==0;k[f>>2]=(k[f>>2]|0)+g;k[l>>2]=(k[l>>2]|0)-g;if(!h){r=d;return}}else{rm(i+32|0,0,e+(k[f>>2]<<2)|0,0,1,k[i+40>>2]|0);k[j>>2]=0;j=i+44|0;k[f>>2]=(k[f>>2]|0)+1;k[j>>2]=(k[j>>2]|0)+-1}k[c>>2]=(k[c>>2]|0)+1;r=d;return}function Al(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,j=0,m=0,n=0,o=0,p=0,q=0,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=k[a+476>>2]|0;f=k[a+336>>2]|0;g=k[e+16>>2]|0;h=k[e+20>>2]|0;j=k[e+24>>2]|0;m=k[e+28>>2]|0;e=c<<1;n=k[b>>2]|0;o=k[n+(e<<2)>>2]|0;p=k[n+((e|1)<<2)>>2]|0;e=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;n=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;c=k[d>>2]|0;b=k[d+4>>2]|0;d=a+112|0;a=k[d>>2]|0;q=a>>>1;if(!q){r=a;s=o;t=p;u=e;v=n;w=c;x=b}else{a=q*6|0;y=q<<1;z=c+a|0;A=n+q|0;B=q;C=o;D=p;E=e;F=n;n=c;c=b;while(1){G=l[E>>0]|0;H=l[F>>0]|0;I=k[g+(H<<2)>>2]|0;J=(k[j+(H<<2)>>2]|0)+(k[m+(G<<2)>>2]|0)>>16;H=k[h+(G<<2)>>2]|0;G=l[C>>0]|0;i[n>>0]=i[f+(G+I)>>0]|0;i[n+1>>0]=i[f+(G+J)>>0]|0;i[n+2>>0]=i[f+(G+H)>>0]|0;G=l[C+1>>0]|0;i[n+3>>0]=i[f+(G+I)>>0]|0;i[n+4>>0]=i[f+(G+J)>>0]|0;i[n+5>>0]=i[f+(G+H)>>0]|0;G=l[D>>0]|0;i[c>>0]=i[f+(G+I)>>0]|0;i[c+1>>0]=i[f+(G+J)>>0]|0;i[c+2>>0]=i[f+(G+H)>>0]|0;G=l[D+1>>0]|0;i[c+3>>0]=i[f+(G+I)>>0]|0;i[c+4>>0]=i[f+(G+J)>>0]|0;i[c+5>>0]=i[f+(G+H)>>0]|0;B=B+-1|0;if(!B)break;else{C=C+2|0;D=D+2|0;E=E+1|0;F=F+1|0;n=n+6|0;c=c+6|0}}r=k[d>>2]|0;s=o+y|0;t=p+y|0;u=e+q|0;v=A;w=z;x=b+a|0}if(!(r&1))return;r=l[u>>0]|0;u=l[v>>0]|0;v=k[g+(u<<2)>>2]|0;g=(k[j+(u<<2)>>2]|0)+(k[m+(r<<2)>>2]|0)>>16;m=k[h+(r<<2)>>2]|0;r=l[s>>0]|0;i[w>>0]=i[f+(r+v)>>0]|0;i[w+1>>0]=i[f+(r+g)>>0]|0;i[w+2>>0]=i[f+(r+m)>>0]|0;r=l[t>>0]|0;i[x>>0]=i[f+(r+v)>>0]|0;i[x+1>>0]=i[f+(r+g)>>0]|0;i[x+2>>0]=i[f+(r+m)>>0]|0;return}function Bl(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;Ab[k[(k[a+476>>2]|0)+12>>2]&31](a,b,k[c>>2]|0,e+(k[f>>2]<<2)|0);k[f>>2]=(k[f>>2]|0)+1;k[c>>2]=(k[c>>2]|0)+1;return}function Cl(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,j=0,m=0,n=0,o=0,p=0,q=0,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=k[a+476>>2]|0;f=k[a+336>>2]|0;g=k[e+16>>2]|0;h=k[e+20>>2]|0;j=k[e+24>>2]|0;m=k[e+28>>2]|0;e=k[(k[b>>2]|0)+(c<<2)>>2]|0;n=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;o=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;c=k[d>>2]|0;d=a+112|0;a=k[d>>2]|0;b=a>>>1;if(!b){p=a;q=e;r=n;s=o;t=c}else{a=b*6|0;u=b<<1;v=o+b|0;w=b;x=e;y=n;z=o;o=c;while(1){A=l[y>>0]|0;B=l[z>>0]|0;C=k[g+(B<<2)>>2]|0;D=(k[j+(B<<2)>>2]|0)+(k[m+(A<<2)>>2]|0)>>16;B=k[h+(A<<2)>>2]|0;A=l[x>>0]|0;i[o>>0]=i[f+(A+C)>>0]|0;i[o+1>>0]=i[f+(A+D)>>0]|0;i[o+2>>0]=i[f+(A+B)>>0]|0;A=l[x+1>>0]|0;i[o+3>>0]=i[f+(A+C)>>0]|0;i[o+4>>0]=i[f+(A+D)>>0]|0;i[o+5>>0]=i[f+(A+B)>>0]|0;w=w+-1|0;if(!w)break;else{x=x+2|0;y=y+1|0;z=z+1|0;o=o+6|0}}p=k[d>>2]|0;q=e+u|0;r=n+b|0;s=v;t=c+a|0}if(!(p&1))return;p=l[r>>0]|0;r=l[s>>0]|0;s=(k[j+(r<<2)>>2]|0)+(k[m+(p<<2)>>2]|0)>>16;m=k[h+(p<<2)>>2]|0;p=l[q>>0]|0;i[t>>0]=i[f+(p+(k[g+(r<<2)>>2]|0))>>0]|0;i[t+1>>0]=i[f+(p+s)>>0]|0;i[t+2>>0]=i[f+(p+m)>>0]|0;return}function Dl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=a+4|0;d=nb[k[k[c>>2]>>2]&63](a,1,28)|0;k[a+456>>2]=d;k[d>>2]=10;e=d+8|0;k[e>>2]=0;f=d+12|0;k[f>>2]=0;if(!(k[a+84>>2]|0))return;g=k[a+320>>2]|0;h=d+16|0;k[h>>2]=g;d=k[c>>2]|0;c=k[a+112>>2]|0;i=k[a+120>>2]|0;if(!b){b=ha(i,c)|0;j=xb[k[d+8>>2]&63](a,1,b,g)|0;k[f>>2]=j;return}else{j=k[d+16>>2]|0;d=ha(i,c)|0;c=qm(k[a+116>>2]|0,g)|0;g=sb[j&3](a,1,0,d,c,k[h>>2]|0)|0;k[e>>2]=g;return}}function El(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=k[a+456>>2]|0;a:do switch(b|0){case 0:{if(!(k[a+84>>2]|0)){k[c+4>>2]=k[(k[a+476>>2]|0)+4>>2];break a}k[c+4>>2]=5;d=c+12|0;if(!(k[d>>2]|0)){e=zb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[c+8>>2]|0,0,k[c+16>>2]|0,1)|0;k[d>>2]=e}break}case 3:{if(!(k[c+8>>2]|0)){e=k[a>>2]|0;k[e+20>>2]=3;qb[k[e>>2]&127](a)}k[c+4>>2]=6;break}case 2:{if(!(k[c+8>>2]|0)){e=k[a>>2]|0;k[e+20>>2]=3;qb[k[e>>2]&127](a)}k[c+4>>2]=7;break}default:{e=k[a>>2]|0;k[e+20>>2]=3;qb[k[e>>2]&127](a)}}while(0);k[c+24>>2]=0;k[c+20>>2]=0;return}function Fl(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,l=0,m=0;h=r;r=r+16|0;i=h;j=k[a+456>>2]|0;l=g-(k[f>>2]|0)|0;g=k[j+16>>2]|0;k[i>>2]=0;m=j+12|0;ob[k[(k[a+476>>2]|0)+4>>2]&15](a,b,c,d,k[m>>2]|0,i,l>>>0>g>>>0?g:l);Ab[k[(k[a+484>>2]|0)+4>>2]&31](a,k[m>>2]|0,e+(k[f>>2]<<2)|0,k[i>>2]|0);k[f>>2]=(k[f>>2]|0)+(k[i>>2]|0);r=h;return}function Gl(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,l=0,m=0,n=0,o=0,p=0,q=0;g=k[a+456>>2]|0;e=g+24|0;h=k[e>>2]|0;if(!h){i=g+16|0;j=zb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[g+8>>2]|0,k[g+20>>2]|0,k[i>>2]|0,1)|0;l=g+12|0;k[l>>2]=j;m=i;n=l;o=j;p=k[e>>2]|0}else{j=g+12|0;m=g+16|0;n=j;o=k[j>>2]|0;p=h}ob[k[(k[a+476>>2]|0)+4>>2]&15](a,b,c,d,o,e,k[m>>2]|0);o=k[e>>2]|0;if(o>>>0>p>>>0){d=o-p|0;Ab[k[(k[a+484>>2]|0)+4>>2]&31](a,(k[n>>2]|0)+(p<<2)|0,0,d);k[f>>2]=(k[f>>2]|0)+d;q=k[e>>2]|0}else q=o;o=k[m>>2]|0;if(q>>>0<o>>>0)return;q=g+20|0;k[q>>2]=(k[q>>2]|0)+o;k[e>>2]=0;return}function Hl(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,l=0,m=0,n=0,o=0;d=k[a+456>>2]|0;c=d+24|0;b=k[c>>2]|0;if(!b){h=d+20|0;i=d+16|0;j=zb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[d+8>>2]|0,k[h>>2]|0,k[i>>2]|0,0)|0;k[d+12>>2]=j;l=h;m=i;n=k[c>>2]|0;o=j}else{l=d+20|0;m=d+16|0;n=b;o=k[d+12>>2]|0}d=(k[m>>2]|0)-n|0;b=k[f>>2]|0;j=g-b|0;g=d>>>0>j>>>0?j:d;d=(k[a+116>>2]|0)-(k[l>>2]|0)|0;j=g>>>0>d>>>0?d:g;Ab[k[(k[a+484>>2]|0)+4>>2]&31](a,o+(n<<2)|0,e+(b<<2)|0,j);k[f>>2]=(k[f>>2]|0)+j;f=(k[c>>2]|0)+j|0;k[c>>2]=f;j=k[m>>2]|0;if(f>>>0<j>>>0)return;k[l>>2]=(k[l>>2]|0)+j;k[c>>2]=0;return}function Il(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,160)|0;k[a+476>>2]=c;k[c>>2]=46;k[c+4>>2]=8;k[c+8>>2]=0;if(k[a+308>>2]|0){d=k[a>>2]|0;k[d+20>>2]=26;qb[k[d>>2]&127](a)}d=a+36|0;if((k[d>>2]|0)<=0)return;e=a+324|0;f=a+328|0;g=a+316|0;h=a+320|0;j=c+100|0;l=c+52|0;m=a+112|0;n=c+12|0;o=0;p=k[a+216>>2]|0;while(1){q=ha(k[p+36>>2]|0,k[p+8>>2]|0)|0;r=(q|0)/(k[e>>2]|0)|0;q=ha(k[p+40>>2]|0,k[p+12>>2]|0)|0;s=(q|0)/(k[f>>2]|0)|0;q=k[g>>2]|0;t=k[h>>2]|0;k[j+(o<<2)>>2]=s;do if(!(k[p+52>>2]|0))k[l+(o<<2)>>2]=13;else{u=(s|0)==(t|0);if((r|0)==(q|0)&u){k[l+(o<<2)>>2]=14;break}v=(r<<1|0)==(q|0);do if(v&u)k[l+(o<<2)>>2]=15;else{if(v&(s<<1|0)==(t|0)){k[l+(o<<2)>>2]=16;break}if(((q|0)%(r|0)|0|0)==0?((t|0)%(s|0)|0|0)==0:0){k[l+(o<<2)>>2]=17;i[c+(o+140)>>0]=(q|0)/(r|0)|0;i[c+(o+150)>>0]=(t|0)/(s|0)|0;break}w=k[a>>2]|0;k[w+20>>2]=39;qb[k[w>>2]&127](a)}while(0);v=k[(k[b>>2]|0)+8>>2]|0;u=qm(k[m>>2]|0,k[g>>2]|0)|0;w=xb[v&63](a,1,u,k[h>>2]|0)|0;k[n+(o<<2)>>2]=w}while(0);o=o+1|0;if((o|0)>=(k[d>>2]|0))break;else p=p+88|0}return}function Jl(a){a=a|0;var b=0;b=k[a+476>>2]|0;k[b+92>>2]=k[a+320>>2];k[b+96>>2]=k[a+116>>2];return}function Kl(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=k[a+476>>2]|0;h=d+92|0;i=k[h>>2]|0;j=a+320|0;l=k[j>>2]|0;if((i|0)<(l|0)){m=l;n=i}else{i=a+36|0;if((k[i>>2]|0)>0){o=0;p=k[a+216>>2]|0;while(1){q=(k[b+(o<<2)>>2]|0)+((ha(k[d+100+(o<<2)>>2]|0,k[c>>2]|0)|0)<<2)|0;Ab[k[d+52+(o<<2)>>2]&31](a,p,q,d+12+(o<<2)|0);o=o+1|0;if((o|0)>=(k[i>>2]|0))break;else p=p+88|0}r=k[j>>2]|0}else r=l;k[h>>2]=0;m=r;n=0}r=m-n|0;m=d+96|0;l=k[m>>2]|0;p=r>>>0>l>>>0?l:r;r=k[f>>2]|0;l=g-r|0;g=p>>>0>l>>>0?l:p;pb[k[(k[a+480>>2]|0)+4>>2]&63](a,d+12|0,n,e+(r<<2)|0,g);k[f>>2]=(k[f>>2]|0)+g;k[m>>2]=(k[m>>2]|0)-g;m=(k[h>>2]|0)+g|0;k[h>>2]=m;if((m|0)<(k[j>>2]|0))return;k[c>>2]=(k[c>>2]|0)+1;return}function Ll(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[d>>2]=0;return}function Ml(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[d>>2]=c;return}function Nl(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,j=0,l=0,m=0;b=k[d>>2]|0;d=a+320|0;e=k[d>>2]|0;if((e|0)<=0)return;f=a+112|0;a=e;e=0;while(1){g=k[b+(e<<2)>>2]|0;h=k[f>>2]|0;j=g+h|0;if((h|0)>0){h=k[c+(e<<2)>>2]|0;l=g;while(1){g=i[h>>0]|0;i[l>>0]=g;i[l+1>>0]=g;l=l+2|0;if(l>>>0>=j>>>0)break;else h=h+1|0}m=k[d>>2]|0}else m=a;e=e+1|0;if((e|0)>=(m|0))break;else a=m}return}function Ol(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,j=0,l=0,m=0,n=0;b=k[d>>2]|0;d=a+320|0;if((k[d>>2]|0)<=0)return;e=a+112|0;a=0;f=0;while(1){g=k[b+(f<<2)>>2]|0;h=k[e>>2]|0;j=g+h|0;if((h|0)>0){l=k[c+(a<<2)>>2]|0;m=g;while(1){g=i[l>>0]|0;i[m>>0]=g;i[m+1>>0]=g;m=m+2|0;if(m>>>0>=j>>>0)break;else l=l+1|0}n=k[e>>2]|0}else n=h;rm(b,f,b,f|1,1,n);f=f+2|0;if((f|0)>=(k[d>>2]|0))break;else a=a+1|0}return}function Pl(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,j=0,l=0,m=0,n=0,o=0,p=0,q=0;e=k[a+476>>2]|0;f=k[d>>2]|0;d=k[b+4>>2]|0;b=i[e+140+d>>0]|0;g=b&255;h=i[e+150+d>>0]|0;d=h&255;e=a+320|0;if((k[e>>2]|0)<=0)return;j=a+112|0;a=b<<24>>24!=0;l=d+-1|0;m=(b<<24>>24==0?~g:-2)+g+2|0;if((h&255)>1){h=0;g=0;while(1){b=k[f+(g<<2)>>2]|0;n=k[j>>2]|0;o=b+n|0;if((n|0)>0){if(!a){p=5;break}n=k[c+(h<<2)>>2]|0;q=b;while(1){qr(q|0,i[n>>0]|0,m|0)|0;q=q+m|0;if(q>>>0>=o>>>0)break;else n=n+1|0}}rm(f,g,f,g+1|0,l,k[j>>2]|0);g=g+d|0;if((g|0)>=(k[e>>2]|0)){p=15;break}else h=h+1|0}if((p|0)==5)while(1){p=0;p=5}else if((p|0)==15)return}else{h=0;g=0;while(1){l=k[f+(g<<2)>>2]|0;n=k[j>>2]|0;o=l+n|0;if((n|0)>0){if(!a){p=13;break}n=k[c+(h<<2)>>2]|0;q=l;while(1){qr(q|0,i[n>>0]|0,m|0)|0;q=q+m|0;if(q>>>0>=o>>>0)break;else n=n+1|0}}g=g+d|0;if((g|0)>=(k[e>>2]|0)){p=15;break}else h=h+1|0}if((p|0)==13)while(1){p=0;p=13}else if((p|0)==15)return}}function Ql(a){a=a|0;k[a>>2]=47;k[a+4>>2]=11;k[a+8>>2]=48;k[a+12>>2]=12;k[a+16>>2]=49;k[a+104>>2]=0;k[a+108>>2]=0;k[a+20>>2]=0;k[a+112>>2]=119460;k[a+116>>2]=126;k[a+120>>2]=0;k[a+124>>2]=0;k[a+128>>2]=0;return a|0}function Rl(a){a=a|0;qb[k[(k[a>>2]|0)+8>>2]&127](a);Bk(a);jb(1)}function Sl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=k[a>>2]|0;if((b|0)>=0){if((k[c+104>>2]|0)<(b|0))return;qb[k[c+8>>2]&127](a);return}b=c+108|0;d=k[b>>2]|0;if((d|0)!=0?(k[c+104>>2]|0)<=2:0)e=d;else{qb[k[c+8>>2]&127](a);e=k[b>>2]|0}k[b>>2]=e+1;return}function Tl(a){a=a|0;var b=0,c=0,d=0;b=r;r=r+208|0;c=b;d=b+8|0;rb[k[(k[a>>2]|0)+12>>2]&31](a,d);a=k[30710]|0;k[c>>2]=d;wq(a,160973,c)|0;r=b;return}function Ul(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;c=r;r=r+48|0;d=c+8|0;e=c;f=k[a>>2]|0;a=k[f+20>>2]|0;if((a|0)>0?(a|0)<=(k[f+116>>2]|0):0){g=(k[f+112>>2]|0)+(a<<2)|0;h=8}else{j=k[f+120>>2]|0;if(((j|0)!=0?(l=k[f+124>>2]|0,(a|0)>=(l|0)):0)?(a|0)<=(k[f+128>>2]|0):0){g=j+(a-l<<2)|0;h=8}else h=9}if((h|0)==8){l=k[g>>2]|0;if(!l)h=9;else m=l}if((h|0)==9){k[f+24>>2]=a;m=k[k[f+112>>2]>>2]|0}a=m;a:while(1){l=a+1|0;switch(i[a>>0]|0){case 0:{break a;break}case 37:{n=l;h=12;break a;break}default:a=l}}if((h|0)==12?(i[n>>0]|0)==115:0){k[e>>2]=f+24;Bq(b,m,e)|0;r=c;return}e=k[f+28>>2]|0;n=k[f+32>>2]|0;h=k[f+36>>2]|0;a=k[f+40>>2]|0;l=k[f+44>>2]|0;g=k[f+48>>2]|0;j=k[f+52>>2]|0;k[d>>2]=k[f+24>>2];k[d+4>>2]=e;k[d+8>>2]=n;k[d+12>>2]=h;k[d+16>>2]=a;k[d+20>>2]=l;k[d+24>>2]=g;k[d+28>>2]=j;Bq(b,m,d)|0;r=c;return}function Vl(a){a=a|0;var b=0;b=k[a>>2]|0;k[b+108>>2]=0;k[b+20>>2]=0;return}function Wl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,88)|0;d=a+484|0;k[d>>2]=c;k[c>>2]=13;k[c+8>>2]=50;k[c+12>>2]=51;k[c+68>>2]=0;k[c+52>>2]=0;c=a+120|0;if((k[c>>2]|0)>4){e=k[a>>2]|0;k[e+20>>2]=57;k[e+24>>2]=4;qb[k[e>>2]&127](a)}e=a+96|0;f=k[e>>2]|0;if((f|0)>256){g=k[a>>2]|0;k[g+20>>2]=59;k[g+24>>2]=256;qb[k[g>>2]&127](a);h=k[e>>2]|0}else h=f;f=k[d>>2]|0;e=f+32|0;g=k[c>>2]|0;if((g|0)>1){j=1;while(1){l=j+1|0;m=1;n=l;while(1){o=ha(n,l)|0;m=m+1|0;if((m|0)==(g|0)){p=o;break}else n=o}if((p|0)>(h|0)){q=j;r=p;break}else j=l}}else{j=(h|0)>1?h:1;q=j;r=j+1|0}if((q|0)<2){j=k[a>>2]|0;k[j+20>>2]=58;k[j+24>>2]=r;qb[k[j>>2]&127](a)}if((g|0)>0){j=0;r=1;while(1){k[f+32+(j<<2)>>2]=q;p=ha(r,q)|0;j=j+1|0;if((j|0)==(g|0)){s=p;break}else r=p}}else s=1;r=a+44|0;j=0;q=0;p=s;a:while(1){s=j;n=q;while(1){if((n|0)<(g|0)){if((k[r>>2]|0)==2)t=k[119972+(n<<2)>>2]|0;else t=n;m=f+32+(t<<2)|0;o=k[m>>2]|0;u=o+1|0;v=ha((p|0)/(o|0)|0,u)|0;if((v|0)<=(h|0)){w=m;x=u;y=v;z=n;break}}if(!s){A=p;break a}else{s=0;n=0}}k[w>>2]=x;j=1;q=z+1|0;p=y}y=k[a>>2]|0;p=k[y+4>>2]|0;if((k[c>>2]|0)==3){k[y+24>>2]=A;k[y+28>>2]=k[e>>2];k[y+32>>2]=k[f+36>>2];k[y+36>>2]=k[f+40>>2];k[y+20>>2]=96;rb[p&31](a,1)}else{k[y+20>>2]=97;k[y+24>>2]=A;rb[p&31](a,1)}p=xb[k[(k[b>>2]|0)+8>>2]&63](a,1,A,k[c>>2]|0)|0;y=k[c>>2]|0;if((y|0)>0){e=y;y=A;z=0;while(1){q=k[f+32+(z<<2)>>2]|0;j=y;y=(y|0)/(q|0)|0;b:do if((q|0)>0){x=q+-1|0;w=(x|0)/2|0;h=p+(z<<2)|0;if((y|0)>0)B=0;else{t=0;while(1){r=ha(t,y)|0;if((r|0)<(A|0)){g=r;do g=g+j|0;while((g|0)<(A|0))}t=t+1|0;if((t|0)==(q|0)){C=e;break b}}}do{t=ha(B,y)|0;if((t|0)<(A|0)){g=(((B*255|0)+w|0)/(x|0)|0)&255;r=t;do{t=0;do{i[(k[h>>2]|0)+(t+r)>>0]=g;t=t+1|0}while((t|0)!=(y|0));r=r+j|0}while((r|0)<(A|0))}B=B+1|0}while((B|0)!=(q|0));C=k[c>>2]|0}else C=e;while(0);z=z+1|0;if((z|0)>=(C|0))break;else e=C}}k[f+16>>2]=p;k[f+20>>2]=A;_l(a);if((k[a+88>>2]|0)!=2)return;A=k[d>>2]|0;d=(k[a+112>>2]<<1)+4|0;if((k[c>>2]|0)>0)D=0;else return;do{f=nb[k[(k[b>>2]|0)+4>>2]&63](a,1,d)|0;k[A+68+(D<<2)>>2]=f;D=D+1|0}while((D|0)<(k[c>>2]|0));return}function Xl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=a+484|0;c=k[b>>2]|0;k[a+136>>2]=k[c+16>>2];k[a+132>>2]=k[c+20>>2];switch(k[a+88>>2]|0){case 0:{d=c+4|0;if((k[a+120>>2]|0)==3){k[d>>2]=18;return}else{k[d>>2]=19;return}break}case 1:{d=a+120|0;k[c+4>>2]=(k[d>>2]|0)==3?20:21;k[c+48>>2]=0;if(!(k[c+28>>2]|0))_l(a);if(k[c+52>>2]|0)return;e=k[b>>2]|0;b=k[d>>2]|0;if((b|0)<=0)return;f=a+4|0;g=b;b=0;while(1){h=k[e+32+(b<<2)>>2]|0;a:do if((b|0)>0){i=0;while(1){if((h|0)==(k[e+32+(i<<2)>>2]|0)){j=i;break}i=i+1|0;if((i|0)>=(b|0)){m=14;break a}}i=k[e+52+(j<<2)>>2]|0;if(i){n=g;o=i}else m=14}else m=14;while(0);if((m|0)==14){m=0;i=nb[k[k[f>>2]>>2]&63](a,1,1024)|0;p=(h<<9)+-512|0;q=0;do{r=0;do{s=255-((l[160977+(q<<4)+r>>0]|0)<<1)|0;t=s*255|0;if((s|0)<0)u=0-((0-t|0)/(p|0)|0)|0;else u=(t|0)/(p|0)|0;k[i+(q<<6)+(r<<2)>>2]=u;r=r+1|0}while((r|0)!=16);q=q+1|0}while((q|0)!=16);n=k[d>>2]|0;o=i}k[e+52+(b<<2)>>2]=o;b=b+1|0;if((b|0)>=(n|0))break;else g=n}return}case 2:{k[c+4>>2]=22;k[c+84>>2]=0;if(!(k[c+68>>2]|0)){n=a+112|0;g=(k[n>>2]<<1)+4|0;b=a+120|0;if((k[b>>2]|0)<=0)return;o=a+4|0;e=0;do{d=nb[k[(k[o>>2]|0)+4>>2]&63](a,1,g)|0;k[c+68+(e<<2)>>2]=d;e=e+1|0;d=k[b>>2]|0}while((e|0)<(d|0));v=b;w=n;x=d}else{n=a+120|0;v=n;w=a+112|0;x=k[n>>2]|0}n=(k[w>>2]<<1)+4|0;if((x|0)>0)y=0;else return;do{qr(k[c+68+(y<<2)>>2]|0,0,n|0)|0;y=y+1|0}while((y|0)<(k[v>>2]|0));return}default:{v=k[a>>2]|0;k[v+20>>2]=49;qb[k[v>>2]&127](a);return}}}function Yl(a){a=a|0;return}function Zl(a){a=a|0;var b=0;b=k[a>>2]|0;k[b+20>>2]=47;qb[k[b>>2]&127](a);return}function _l(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;b=k[a+484>>2]|0;c=(k[a+88>>2]|0)==1;k[b+28>>2]=c&1;d=a+120|0;e=xb[k[(k[a+4>>2]|0)+8>>2]&63](a,1,c?766:256,k[d>>2]|0)|0;a=b+24|0;k[a>>2]=e;if((k[d>>2]|0)<=0)return;e=k[b+20>>2]|0;f=0;do{g=k[b+32+(f<<2)>>2]|0;e=(e|0)/(g|0)|0;if(c){h=(k[a>>2]|0)+(f<<2)|0;k[h>>2]=(k[h>>2]|0)+255}h=k[(k[a>>2]|0)+(f<<2)>>2]|0;j=g+-1|0;l=j<<1;m=0;n=(g+254|0)/(l|0)|0;g=0;while(1){if((m|0)>(n|0)){o=g;while(1){p=o+1|0;q=(((p<<1|1)*255|0)+j|0)/(l|0)|0;if((m|0)>(q|0))o=p;else{r=q;s=p;break}}}else{r=n;s=g}o=(ha(s,e)|0)&255;i[h+m>>0]=o;m=m+1|0;if((m|0)==256)break;else{n=r;g=s}}if(c){g=h+255|0;n=1;do{i[h+(0-n)>>0]=i[h>>0]|0;i[h+(n+255)>>0]=i[g>>0]|0;n=n+1|0}while((n|0)!=256)}f=f+1|0}while((f|0)<(k[d>>2]|0));return}function $l(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,j=0,m=0,n=0;e=k[(k[a+484>>2]|0)+24>>2]|0;f=k[e>>2]|0;g=k[e+4>>2]|0;h=k[e+8>>2]|0;e=k[a+112>>2]|0;if((d|0)<1|(e|0)==0)return;else j=0;do{a=e;m=k[b+(j<<2)>>2]|0;n=k[c+(j<<2)>>2]|0;while(1){i[n>>0]=(l[g+(l[m+1>>0]|0)>>0]|0)+(l[f+(l[m>>0]|0)>>0]|0)+(l[h+(l[m+2>>0]|0)>>0]|0);a=a+-1|0;if(!a)break;else{m=m+3|0;n=n+1|0}}j=j+1|0}while((j|0)!=(d|0));return}function am(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=k[(k[a+484>>2]|0)+24>>2]|0;f=k[a+112>>2]|0;g=k[a+120>>2]|0;if((d|0)<=0)return;a=(f|0)==0;h=(g|0)>0;j=0;do{if(!a){m=f;n=k[b+(j<<2)>>2]|0;o=k[c+(j<<2)>>2]|0;while(1){if(h){p=0;q=0;r=n;while(1){s=(l[(k[e+(p<<2)>>2]|0)+(l[r>>0]|0)>>0]|0)+q|0;p=p+1|0;if((p|0)==(g|0)){t=s;break}else{q=s;r=r+1|0}}u=t;v=n+g|0}else{u=0;v=n}i[o>>0]=u;m=m+-1|0;if(!m)break;else{n=v;o=o+1|0}}}j=j+1|0}while((j|0)!=(d|0));return}function bm(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=k[a+484>>2]|0;f=k[e+24>>2]|0;g=k[f>>2]|0;h=k[f+4>>2]|0;j=k[f+8>>2]|0;f=k[a+112>>2]|0;if((d|0)<=0)return;a=e+48|0;m=e+52|0;n=e+56|0;o=e+60|0;e=(f|0)==0;p=k[a>>2]|0;q=0;do{r=k[m>>2]|0;s=k[n>>2]|0;t=k[o>>2]|0;if(!e){u=f;v=0;w=k[b+(q<<2)>>2]|0;x=k[c+(q<<2)>>2]|0;while(1){i[x>>0]=(l[h+((l[w+1>>0]|0)+(k[s+(p<<6)+(v<<2)>>2]|0))>>0]|0)+(l[g+((l[w>>0]|0)+(k[r+(p<<6)+(v<<2)>>2]|0))>>0]|0)+(l[j+((l[w+2>>0]|0)+(k[t+(p<<6)+(v<<2)>>2]|0))>>0]|0);u=u+-1|0;if(!u)break;else{v=v+1&15;w=w+3|0;x=x+1|0}}}p=p+1&15;k[a>>2]=p;q=q+1|0}while((q|0)!=(d|0));return}function cm(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;e=k[a+484>>2]|0;f=k[a+120>>2]|0;g=k[a+112>>2]|0;if((d|0)<=0)return;a=e+48|0;h=(f|0)>0;j=e+24|0;m=(g|0)==0;n=0;do{o=c+(n<<2)|0;qr(k[o>>2]|0,0,g|0)|0;p=k[a>>2]|0;if(h){q=b+(n<<2)|0;r=0;do{s=k[(k[j>>2]|0)+(r<<2)>>2]|0;t=k[e+52+(r<<2)>>2]|0;if(!m){u=g;v=0;w=(k[q>>2]|0)+r|0;x=k[o>>2]|0;while(1){i[x>>0]=(l[x>>0]|0)+(l[s+((l[w>>0]|0)+(k[t+(p<<6)+(v<<2)>>2]|0))>>0]|0);u=u+-1|0;if(!u)break;else{v=v+1&15;w=w+f|0;x=x+1|0}}}r=r+1|0}while((r|0)!=(f|0))}k[a>>2]=p+1&15;n=n+1|0}while((n|0)!=(d|0));return}function dm(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,m=0,n=0,o=0,p=0,q=0,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;e=k[a+484>>2]|0;f=k[a+120>>2]|0;g=k[a+112>>2]|0;h=k[a+336>>2]|0;if((d|0)<=0)return;a=(f|0)>0;m=e+84|0;n=e+24|0;o=e+16|0;p=(g|0)==0;q=g+-1|0;r=ha(q,f)|0;s=0-f|0;t=g+1|0;u=0;do{v=c+(u<<2)|0;qr(k[v>>2]|0,0,g|0)|0;if(a){w=b+(u<<2)|0;x=0;do{y=k[v>>2]|0;z=k[e+68+(x<<2)>>2]|0;if(!(k[m>>2]|0)){A=x;B=1;C=f;D=z;E=y}else{A=x+r|0;B=-1;C=s;D=z+(t<<1)|0;E=y+q|0}y=k[(k[n>>2]|0)+(x<<2)>>2]|0;z=k[(k[o>>2]|0)+(x<<2)>>2]|0;if(p){F=0;G=D}else{H=ha(g,B)|0;I=0;J=0;K=g;L=0;M=D;N=(k[w>>2]|0)+A|0;O=E;while(1){P=M;M=M+(B<<1)|0;Q=l[h+((L+8+(j[M>>1]|0)>>4)+(l[N>>0]|0))>>0]|0;R=l[y+Q>>0]|0;i[O>>0]=(l[O>>0]|0)+R;S=Q-(l[z+R>>0]|0)|0;j[P>>1]=(S*3|0)+J;P=(S*5|0)+I|0;K=K+-1|0;if(!K){T=P;break}else{I=S;J=P;L=S*7|0;N=N+C|0;O=O+B|0}}F=T;G=D+(H<<1)|0}j[G>>1]=F;x=x+1|0}while((x|0)!=(f|0))}k[m>>2]=(k[m>>2]|0)==0&1;u=u+1|0}while((u|0)!=(d|0));return}function em(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,44)|0;k[a+484>>2]=c;k[c>>2]=14;k[c+12>>2]=52;d=c+32|0;k[d>>2]=0;k[c+40>>2]=0;if((k[a+120>>2]|0)!=3){e=k[a>>2]|0;k[e+20>>2]=48;qb[k[e>>2]&127](a)}e=nb[k[k[b>>2]>>2]&63](a,1,128)|0;f=c+24|0;k[f>>2]=e;e=0;do{g=nb[k[(k[b>>2]|0)+4>>2]&63](a,1,4096)|0;k[(k[f>>2]|0)+(e<<2)>>2]=g;e=e+1|0}while((e|0)!=32);k[c+28>>2]=1;if(!(k[a+108>>2]|0))k[c+16>>2]=0;else{e=k[a+96>>2]|0;if((e|0)>=8){if((e|0)>256){f=k[a>>2]|0;k[f+20>>2]=59;k[f+24>>2]=256;qb[k[f>>2]&127](a)}}else{f=k[a>>2]|0;k[f+20>>2]=58;k[f+24>>2]=8;qb[k[f>>2]&127](a)}f=xb[k[(k[b>>2]|0)+8>>2]&63](a,1,e,3)|0;k[c+16>>2]=f;k[c+20>>2]=e}e=a+88|0;if(!(k[e>>2]|0))return;k[e>>2]=2;e=nb[k[(k[b>>2]|0)+4>>2]&63](a,1,((k[a+112>>2]|0)*6|0)+12|0)|0;k[d>>2]=e;hm(a);return}function fm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=k[a+484>>2]|0;d=k[c+24>>2]|0;e=a+88|0;if(!(k[e>>2]|0))f=0;else{k[e>>2]=2;f=2}if(!b){k[c+4>>2]=(f|0)==2?24:25;k[c+8>>2]=54;f=k[a+132>>2]|0;if((f|0)>=1){if((f|0)>256){f=k[a>>2]|0;k[f+20>>2]=59;k[f+24>>2]=256;qb[k[f>>2]&127](a)}}else{f=k[a>>2]|0;k[f+20>>2]=58;k[f+24>>2]=1;qb[k[f>>2]&127](a)}if((k[e>>2]|0)==2){e=((k[a+112>>2]|0)*6|0)+12|0;f=c+32|0;b=k[f>>2]|0;if(!b){g=nb[k[(k[a+4>>2]|0)+4>>2]&63](a,1,e)|0;k[f>>2]=g;h=g}else h=b;qr(h|0,0,e|0)|0;if(!(k[c+40>>2]|0))hm(a);k[c+36>>2]=0}}else{k[c+4>>2]=23;k[c+8>>2]=53;k[c+28>>2]=1}a=c+28|0;if(!(k[a>>2]|0))return;qr(k[d>>2]|0,0,4096)|0;qr(k[d+4>>2]|0,0,4096)|0;qr(k[d+8>>2]|0,0,4096)|0;qr(k[d+12>>2]|0,0,4096)|0;qr(k[d+16>>2]|0,0,4096)|0;qr(k[d+20>>2]|0,0,4096)|0;qr(k[d+24>>2]|0,0,4096)|0;qr(k[d+28>>2]|0,0,4096)|0;qr(k[d+32>>2]|0,0,4096)|0;qr(k[d+36>>2]|0,0,4096)|0;qr(k[d+40>>2]|0,0,4096)|0;qr(k[d+44>>2]|0,0,4096)|0;qr(k[d+48>>2]|0,0,4096)|0;qr(k[d+52>>2]|0,0,4096)|0;qr(k[d+56>>2]|0,0,4096)|0;qr(k[d+60>>2]|0,0,4096)|0;qr(k[d+64>>2]|0,0,4096)|0;qr(k[d+68>>2]|0,0,4096)|0;qr(k[d+72>>2]|0,0,4096)|0;qr(k[d+76>>2]|0,0,4096)|0;qr(k[d+80>>2]|0,0,4096)|0;qr(k[d+84>>2]|0,0,4096)|0;qr(k[d+88>>2]|0,0,4096)|0;qr(k[d+92>>2]|0,0,4096)|0;qr(k[d+96>>2]|0,0,4096)|0;qr(k[d+100>>2]|0,0,4096)|0;qr(k[d+104>>2]|0,0,4096)|0;qr(k[d+108>>2]|0,0,4096)|0;qr(k[d+112>>2]|0,0,4096)|0;qr(k[d+116>>2]|0,0,4096)|0;qr(k[d+120>>2]|0,0,4096)|0;qr(k[d+124>>2]|0,0,4096)|0;k[a>>2]=0;return}function gm(a){a=a|0;k[(k[a+484>>2]|0)+28>>2]=1;return}function hm(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+484>>2]|0;c=nb[k[k[a+4>>2]>>2]&63](a,1,2044)|0;a=c+1020|0;k[b+40>>2]=a;k[a>>2]=0;k[c+1024>>2]=1;k[c+1016>>2]=-1;k[c+1028>>2]=2;k[c+1012>>2]=-2;k[c+1032>>2]=3;k[c+1008>>2]=-3;k[c+1036>>2]=4;k[c+1004>>2]=-4;k[c+1040>>2]=5;k[c+1e3>>2]=-5;k[c+1044>>2]=6;k[c+996>>2]=-6;k[c+1048>>2]=7;k[c+992>>2]=-7;k[c+1052>>2]=8;k[c+988>>2]=-8;k[c+1056>>2]=9;k[c+984>>2]=-9;k[c+1060>>2]=10;k[c+980>>2]=-10;k[c+1064>>2]=11;k[c+976>>2]=-11;k[c+1068>>2]=12;k[c+972>>2]=-12;k[c+1072>>2]=13;k[c+968>>2]=-13;k[c+1076>>2]=14;k[c+964>>2]=-14;k[c+1080>>2]=15;k[c+960>>2]=-15;c=16;b=16;while(1){k[a+(c<<2)>>2]=b;k[a+(0-c<<2)>>2]=0-b;c=c+1|0;d=(c&1^1)+b|0;if((c|0)==48){e=d;break}else b=d}b=0-e|0;c=48;do{k[a+(c<<2)>>2]=e;k[a+(0-c<<2)>>2]=b;c=c+1|0}while((c|0)!=256);return}function im(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,m=0;c=k[(k[a+484>>2]|0)+24>>2]|0;e=k[a+112>>2]|0;if((d|0)<1|(e|0)==0)return;else f=0;do{a=e;g=k[b+(f<<2)>>2]|0;while(1){h=(k[c+((l[g>>0]|0)>>>3<<2)>>2]|0)+((l[g+1>>0]|0)>>>2<<6)+((l[g+2>>0]|0)>>>3<<1)|0;i=j[h>>1]|0;m=i+1<<16>>16;j[h>>1]=m<<16>>16==0?i:m;a=a+-1|0;if(!a)break;else g=g+3|0}f=f+1|0}while((f|0)!=(d|0));return}function jm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,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,ia=0,ja=0;b=a+484|0;c=k[b>>2]|0;d=a+136|0;k[d>>2]=k[c+16>>2];e=k[c+20>>2]|0;f=nb[k[k[a+4>>2]>>2]&63](a,1,e<<5)|0;k[f>>2]=0;k[f+4>>2]=31;k[f+8>>2]=0;k[f+12>>2]=63;k[f+16>>2]=0;k[f+20>>2]=31;om(a,f);if((e|0)>1){g=1;while(1){if((g<<1|0)>(e|0)){h=f;l=0;m=0;n=0;while(1){o=k[h+24>>2]|0;p=(o|0)>(m|0);q=p?h:n;l=l+1|0;if((l|0)==(g|0)){r=q;break}else{h=h+32|0;m=p?o:m;n=q}}}else{n=f;m=0;h=0;l=0;while(1){q=k[n+28>>2]|0;if((q|0)>(h|0)){o=(k[n+24>>2]|0)>0;s=o?q:h;t=o?n:l}else{s=h;t=l}m=m+1|0;if((m|0)==(g|0)){r=t;break}else{n=n+32|0;h=s;l=t}}}if(!r){u=g;break}l=f+(g<<5)|0;h=r+4|0;k[f+(g<<5)+4>>2]=k[h>>2];n=r+12|0;k[f+(g<<5)+12>>2]=k[n>>2];m=r+20|0;k[f+(g<<5)+20>>2]=k[m>>2];k[l>>2]=k[r>>2];o=r+8|0;q=f+(g<<5)+8|0;k[q>>2]=k[o>>2];p=r+16|0;v=f+(g<<5)+16|0;k[v>>2]=k[p>>2];w=k[h>>2]|0;x=k[r>>2]|0;y=w-x<<4;z=k[n>>2]|0;A=k[o>>2]|0;o=(z-A|0)*12|0;B=k[m>>2]|0;C=k[p>>2]|0;p=(y|0)>(o|0);switch(((B-C<<3|0)>((p?y:o)|0)?2:p&1^1)|0){case 0:{p=(x+w|0)/2|0;k[h>>2]=p;k[l>>2]=p+1;break}case 1:{p=(A+z|0)/2|0;k[n>>2]=p;k[q>>2]=p+1;break}case 2:{p=(C+B|0)/2|0;k[m>>2]=p;k[v>>2]=p+1;break}default:{}}om(a,r);om(a,l);l=g+1|0;if((l|0)<(e|0))g=l;else{u=l;break}}if((u|0)>0)D=u;else{E=u;F=a+132|0;k[F>>2]=E;G=k[a>>2]|0;H=G+20|0;k[H>>2]=98;I=G+24|0;k[I>>2]=E;J=G+4|0;K=k[J>>2]|0;rb[K&31](a,1);L=c+28|0;k[L>>2]=1;return}}else D=1;u=0;do{g=k[(k[b>>2]|0)+24>>2]|0;e=k[f+(u<<5)>>2]|0;r=k[f+(u<<5)+4>>2]|0;t=k[f+(u<<5)+8>>2]|0;s=k[f+(u<<5)+12>>2]|0;l=k[f+(u<<5)+16>>2]|0;p=k[f+(u<<5)+20>>2]|0;if((e|0)>(r|0)){M=0;N=0;O=0;P=0}else{v=(t|0)>(s|0);m=(l|0)>(p|0);B=e;e=0;C=0;q=0;n=0;while(1){if(v){Q=e;R=C;S=q;T=n}else{z=k[g+(B<<2)>>2]|0;A=B<<3|4;h=e;w=t;x=C;o=q;y=n;while(1){if(m){U=h;V=x;W=o;X=y}else{Y=w<<2|2;Z=h;_=x;$=l;aa=o;ba=z+(w<<6)+(l<<1)|0;ca=y;while(1){da=j[ba>>1]|0;ea=da&65535;if(!(da<<16>>16)){fa=Z;ga=_;ia=aa;ja=ca}else{fa=(ha(ea,A)|0)+Z|0;ga=(ha(ea,Y)|0)+_|0;ia=(ha(ea,$<<3|4)|0)+aa|0;ja=ea+ca|0}if(($|0)<(p|0)){Z=fa;_=ga;$=$+1|0;aa=ia;ba=ba+2|0;ca=ja}else{U=fa;V=ga;W=ia;X=ja;break}}}if((w|0)<(s|0)){h=U;w=w+1|0;x=V;o=W;y=X}else{Q=U;R=V;S=W;T=X;break}}}if((B|0)<(r|0)){B=B+1|0;e=Q;C=R;q=S;n=T}else{M=Q;N=R;O=S;P=T;break}}}n=P>>1;i[(k[k[d>>2]>>2]|0)+u>>0]=(n+M|0)/(P|0)|0;i[(k[(k[d>>2]|0)+4>>2]|0)+u>>0]=(n+N|0)/(P|0)|0;i[(k[(k[d>>2]|0)+8>>2]|0)+u>>0]=(n+O|0)/(P|0)|0;u=u+1|0}while((u|0)!=(D|0));E=D;F=a+132|0;k[F>>2]=E;G=k[a>>2]|0;H=G+20|0;k[H>>2]=98;I=G+24|0;k[I>>2]=E;J=G+4|0;K=k[J>>2]|0;rb[K&31](a,1);L=c+28|0;k[L>>2]=1;return}function km(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,m=0,n=0,o=0,p=0,q=0,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;e=k[a+484>>2]|0;f=k[e+24>>2]|0;g=k[a+112>>2]|0;h=k[a+336>>2]|0;m=k[e+40>>2]|0;n=k[a+136>>2]|0;o=k[n>>2]|0;p=k[n+4>>2]|0;q=k[n+8>>2]|0;if((d|0)<=0)return;n=e+36|0;r=e+32|0;e=(g|0)==0;s=g+-1|0;t=s*3|0;u=(g*3|0)+3|0;v=0;do{w=k[b+(v<<2)>>2]|0;x=k[c+(v<<2)>>2]|0;if(!(k[n>>2]|0)){y=1;z=3;A=k[r>>2]|0;B=w;C=x;D=1}else{y=-1;z=-3;A=(k[r>>2]|0)+(u<<1)|0;B=w+t|0;C=x+s|0;D=0}k[n>>2]=D;if(e){E=0;F=0;G=0;H=A}else{x=z+1|0;w=z+2|0;I=ha(g,z)|0;J=0;K=0;L=0;M=0;N=0;O=0;P=g;Q=0;R=0;S=0;T=A;U=B;V=C;while(1){W=T;T=T+(z<<1)|0;X=l[h+((l[U>>0]|0)+(k[m+(Q+8+(j[T>>1]|0)>>4<<2)>>2]|0))>>0]|0;Y=l[h+((l[U+1>>0]|0)+(k[m+(R+8+(j[W+(x<<1)>>1]|0)>>4<<2)>>2]|0))>>0]|0;Z=l[h+((l[U+2>>0]|0)+(k[m+(S+8+(j[W+(w<<1)>>1]|0)>>4<<2)>>2]|0))>>0]|0;_=Z>>>3;$=Y>>>2;aa=X>>>3;ba=(k[f+(aa<<2)>>2]|0)+($<<6)+(_<<1)|0;ca=j[ba>>1]|0;if(!(ca<<16>>16)){nm(a,aa,$,_);da=j[ba>>1]|0}else da=ca;ca=(da&65535)+-1|0;i[V>>0]=ca;ba=X-(l[o+ca>>0]|0)|0;X=Y-(l[p+ca>>0]|0)|0;Y=Z-(l[q+ca>>0]|0)|0;j[W>>1]=(ba*3|0)+M;ca=(ba*5|0)+J|0;j[W+2>>1]=(X*3|0)+N;Z=(X*5|0)+K|0;j[W+4>>1]=(Y*3|0)+O;W=(Y*5|0)+L|0;P=P+-1|0;if(!P){ea=ca;fa=Z;ga=W;break}else{J=ba;K=X;L=Y;M=ca;N=Z;O=W;Q=ba*7|0;R=X*7|0;S=Y*7|0;U=U+z|0;V=V+y|0}}E=ea;F=fa;G=ga;H=A+(I<<1)|0}j[H>>1]=E;j[H+2>>1]=F;j[H+4>>1]=G;v=v+1|0}while((v|0)!=(d|0));return}function lm(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=k[(k[a+484>>2]|0)+24>>2]|0;f=k[a+112>>2]|0;if((d|0)<=0)return;g=(f|0)==0;h=0;do{if(!g){m=f;n=k[b+(h<<2)>>2]|0;o=k[c+(h<<2)>>2]|0;while(1){p=(l[n>>0]|0)>>>3;q=(l[n+1>>0]|0)>>>2;r=(l[n+2>>0]|0)>>>3;s=(k[e+(p<<2)>>2]|0)+(q<<6)+(r<<1)|0;t=j[s>>1]|0;if(!(t<<16>>16)){nm(a,p,q,r);u=j[s>>1]|0}else u=t;i[o>>0]=(u&65535)+255;m=m+-1|0;if(!m)break;else{n=n+3|0;o=o+1|0}}}h=h+1|0}while((h|0)!=(d|0));return}function mm(a){a=a|0;return}function nm(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,m=0,n=0,o=0,p=0,q=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;e=r;r=r+1408|0;f=e;g=e+1152|0;h=e+1024|0;m=k[(k[a+484>>2]|0)+24>>2]|0;n=b>>2;b=c>>3;c=d>>2;d=n<<5;o=d|4;p=b<<5;q=p|2;s=c<<5;t=s|4;u=k[a+132>>2]|0;v=d|28;d=v+o>>1;w=p|30;p=w+q>>1;x=s|28;s=x+t>>1;if((u|0)>0){y=k[a+136>>2]|0;z=k[y>>2]|0;A=k[y+4>>2]|0;B=k[y+8>>2]|0;y=0;C=2147483647;while(1){D=l[z+y>>0]|0;do if((D|0)>=(o|0)){if((D|0)>(v|0)){E=D-v<<1;F=D-o<<1;G=ha(F,F)|0;H=ha(E,E)|0;break}if((D|0)>(d|0)){E=D-o<<1;G=ha(E,E)|0;H=0;break}else{E=D-v<<1;G=ha(E,E)|0;H=0;break}}else{E=D-o<<1;F=D-v<<1;G=ha(F,F)|0;H=ha(E,E)|0}while(0);D=l[A+y>>0]|0;do if((D|0)>=(q|0)){if((D|0)>(w|0)){E=(D-w|0)*3|0;F=(D-q|0)*3|0;I=ha(F,F)|0;J=(ha(E,E)|0)+H|0;break}if((D|0)>(p|0)){E=(D-q|0)*3|0;I=ha(E,E)|0;J=H;break}else{E=(D-w|0)*3|0;I=ha(E,E)|0;J=H;break}}else{E=(D-q|0)*3|0;F=(D-w|0)*3|0;I=ha(F,F)|0;J=(ha(E,E)|0)+H|0}while(0);D=I+G|0;E=l[B+y>>0]|0;do if((E|0)>=(t|0)){if((E|0)>(x|0)){F=E-x|0;K=E-t|0;L=ha(K,K)|0;M=(ha(F,F)|0)+J|0;break}if((E|0)>(s|0)){F=E-t|0;L=ha(F,F)|0;M=J;break}else{F=E-x|0;L=ha(F,F)|0;M=J;break}}else{F=E-t|0;K=E-x|0;L=ha(K,K)|0;M=(ha(F,F)|0)+J|0}while(0);E=D+L|0;k[f+(y<<2)>>2]=M;F=(E|0)<(C|0)?E:C;y=y+1|0;if((y|0)==(u|0)){N=F;break}else C=F}C=0;y=0;while(1){if((k[f+(C<<2)>>2]|0)>(N|0))O=y;else{i[g+y>>0]=C;O=y+1|0}C=C+1|0;if((C|0)==(u|0)){P=O;break}else y=O}}else P=0;O=f;y=127;while(1){k[O>>2]=2147483647;if((y|0)>0){O=O+4|0;y=y+-1|0}else break}if((P|0)>0){y=a+136|0;a=h+32|0;O=f+128|0;u=h+64|0;C=f+256|0;N=h+96|0;M=f+384|0;L=0;do{J=i[g+L>>0]|0;x=J&255;s=k[y>>2]|0;B=o-(l[(k[s>>2]|0)+x>>0]|0)|0;G=B<<1;I=ha(G,G)|0;G=q-(l[(k[s+4>>2]|0)+x>>0]|0)|0;H=G*3|0;w=(ha(H,H)|0)+I|0;I=t-(l[(k[s+8>>2]|0)+x>>0]|0)|0;x=w+(ha(I,I)|0)|0;w=B<<6;B=w+256|0;s=(G*72|0)+144|0;G=I<<4;I=G+64|0;H=G+192|0;p=G+320|0;G=f;A=h;v=x;d=7;z=s;while(1){if((v|0)<(k[G>>2]|0)){k[G>>2]=v;i[A>>0]=J}F=I+v|0;E=G+4|0;if((F|0)<(k[E>>2]|0)){k[E>>2]=F;i[A+1>>0]=J}E=H+F|0;F=G+8|0;if((E|0)<(k[F>>2]|0)){k[F>>2]=E;i[A+2>>0]=J}F=p+E|0;E=G+12|0;if((F|0)<(k[E>>2]|0)){k[E>>2]=F;i[A+3>>0]=J}if((d|0)>0){G=G+16|0;A=A+4|0;v=v+z|0;d=d+-1|0;z=z+288|0}else break}z=x+B|0;d=w+768|0;v=O;A=a;G=z;D=7;F=s;while(1){if((G|0)<(k[v>>2]|0)){k[v>>2]=G;i[A>>0]=J}E=I+G|0;K=v+4|0;if((E|0)<(k[K>>2]|0)){k[K>>2]=E;i[A+1>>0]=J}K=H+E|0;E=v+8|0;if((K|0)<(k[E>>2]|0)){k[E>>2]=K;i[A+2>>0]=J}E=p+K|0;K=v+12|0;if((E|0)<(k[K>>2]|0)){k[K>>2]=E;i[A+3>>0]=J}if((D|0)>0){v=v+16|0;A=A+4|0;G=G+F|0;D=D+-1|0;F=F+288|0}else break}F=z+d|0;D=w+1280|0;G=C;A=u;v=F;B=7;x=s;while(1){if((v|0)<(k[G>>2]|0)){k[G>>2]=v;i[A>>0]=J}E=I+v|0;K=G+4|0;if((E|0)<(k[K>>2]|0)){k[K>>2]=E;i[A+1>>0]=J}K=H+E|0;E=G+8|0;if((K|0)<(k[E>>2]|0)){k[E>>2]=K;i[A+2>>0]=J}E=p+K|0;K=G+12|0;if((E|0)<(k[K>>2]|0)){k[K>>2]=E;i[A+3>>0]=J}if((B|0)>0){G=G+16|0;A=A+4|0;v=v+x|0;B=B+-1|0;x=x+288|0}else break}x=M;B=N;v=F+D|0;A=7;G=s;while(1){if((v|0)<(k[x>>2]|0)){k[x>>2]=v;i[B>>0]=J}w=I+v|0;d=x+4|0;if((w|0)<(k[d>>2]|0)){k[d>>2]=w;i[B+1>>0]=J}d=H+w|0;w=x+8|0;if((d|0)<(k[w>>2]|0)){k[w>>2]=d;i[B+2>>0]=J}w=p+d|0;d=x+12|0;if((w|0)<(k[d>>2]|0)){k[d>>2]=w;i[B+3>>0]=J}if((A|0)>0){x=x+16|0;B=B+4|0;v=v+G|0;A=A+-1|0;G=G+288|0}else break}L=L+1|0}while((L|0)!=(P|0))}P=n<<2;n=b<<3;b=c<<2;c=k[m+(P<<2)>>2]|0;L=b|1;N=L+1|0;M=b|3;u=h;C=0;while(1){a=C+n|0;j[c+(a<<6)+(b<<1)>>1]=(l[u>>0]|0)+1;j[c+(a<<6)+(L<<1)>>1]=(l[u+1>>0]|0)+1;j[c+(a<<6)+(N<<1)>>1]=(l[u+2>>0]|0)+1;j[c+(a<<6)+(M<<1)>>1]=(l[u+3>>0]|0)+1;C=C+1|0;if((C|0)==8)break;else u=u+4|0}u=k[m+((P|1)<<2)>>2]|0;C=b|1;M=C+1|0;c=b|3;N=h+32|0;L=0;while(1){a=L+n|0;j[u+(a<<6)+(b<<1)>>1]=(l[N>>0]|0)+1;j[u+(a<<6)+(C<<1)>>1]=(l[N+1>>0]|0)+1;j[u+(a<<6)+(M<<1)>>1]=(l[N+2>>0]|0)+1;j[u+(a<<6)+(c<<1)>>1]=(l[N+3>>0]|0)+1;L=L+1|0;if((L|0)==8)break;else N=N+4|0}N=k[m+((P|2)<<2)>>2]|0;L=b|1;c=L+1|0;u=b|3;M=h+64|0;C=0;while(1){a=C+n|0;j[N+(a<<6)+(b<<1)>>1]=(l[M>>0]|0)+1;j[N+(a<<6)+(L<<1)>>1]=(l[M+1>>0]|0)+1;j[N+(a<<6)+(c<<1)>>1]=(l[M+2>>0]|0)+1;j[N+(a<<6)+(u<<1)>>1]=(l[M+3>>0]|0)+1;C=C+1|0;if((C|0)==8)break;else M=M+4|0}M=k[m+((P|3)<<2)>>2]|0;P=b|1;m=P+1|0;C=b|3;u=h+96|0;h=0;while(1){N=h+n|0;j[M+(N<<6)+(b<<1)>>1]=(l[u>>0]|0)+1;j[M+(N<<6)+(P<<1)>>1]=(l[u+1>>0]|0)+1;j[M+(N<<6)+(m<<1)>>1]=(l[u+2>>0]|0)+1;j[M+(N<<6)+(C<<1)>>1]=(l[u+3>>0]|0)+1;h=h+1|0;if((h|0)==8)break;else u=u+4|0}r=e;return}function om(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,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;c=k[(k[a+484>>2]|0)+24>>2]|0;a=k[b>>2]|0;d=b+4|0;e=k[d>>2]|0;f=b+8|0;g=k[f>>2]|0;h=b+12|0;i=k[h>>2]|0;l=b+16|0;m=k[l>>2]|0;n=b+20|0;o=k[n>>2]|0;a:do if((a|0)<(e|0)){p=(g|0)>(i|0);q=(m|0)>(o|0);r=a;b:while(1){if(!p){s=k[c+(r<<2)>>2]|0;t=g;while(1){if(!q){u=m;v=s+(t<<6)+(m<<1)|0;while(1){if(j[v>>1]|0){w=r;break b}if((u|0)<(o|0)){u=u+1|0;v=v+2|0}else break}}if((t|0)<(i|0))t=t+1|0;else break}}if((r|0)<(e|0))r=r+1|0;else{x=a;break a}}k[b>>2]=w;x=w}else x=a;while(0);c:do if((e|0)>(x|0)){a=(g|0)>(i|0);w=(m|0)>(o|0);r=e;d:while(1){if(!a){q=k[c+(r<<2)>>2]|0;p=g;while(1){if(!w){t=m;s=q+(p<<6)+(m<<1)|0;while(1){if(j[s>>1]|0){y=r;break d}if((t|0)<(o|0)){t=t+1|0;s=s+2|0}else break}}if((p|0)<(i|0))p=p+1|0;else break}}if((r|0)>(x|0))r=r+-1|0;else{z=e;break c}}k[d>>2]=y;z=y}else z=e;while(0);e:do if((g|0)<(i|0)){e=(z|0)<(x|0);y=(m|0)>(o|0);d=g;f:while(1){if(!e){r=x;while(1){if(!y){w=m;a=(k[c+(r<<2)>>2]|0)+(d<<6)+(m<<1)|0;while(1){if(j[a>>1]|0){A=d;break f}if((w|0)<(o|0)){w=w+1|0;a=a+2|0}else break}}if((r|0)<(z|0))r=r+1|0;else break}}if((d|0)<(i|0))d=d+1|0;else{B=g;break e}}k[f>>2]=A;B=A}else B=g;while(0);g:do if((i|0)>(B|0)){g=(z|0)<(x|0);A=(m|0)>(o|0);f=i;h:while(1){if(!g){d=x;while(1){if(!A){y=m;e=(k[c+(d<<2)>>2]|0)+(f<<6)+(m<<1)|0;while(1){if(j[e>>1]|0){C=f;break h}if((y|0)<(o|0)){y=y+1|0;e=e+2|0}else break}}if((d|0)<(z|0))d=d+1|0;else break}}if((f|0)>(B|0))f=f+-1|0;else{D=i;break g}}k[h>>2]=C;D=C}else D=i;while(0);i:do if((m|0)<(o|0)){i=(z|0)<(x|0);C=(D|0)<(B|0);h=m;j:while(1){if(!i){f=x;while(1){if(!C){A=B;g=(k[c+(f<<2)>>2]|0)+(B<<6)+(h<<1)|0;while(1){if(j[g>>1]|0){E=h;break j}if((A|0)<(D|0)){A=A+1|0;g=g+64|0}else break}}if((f|0)<(z|0))f=f+1|0;else break}}if((h|0)<(o|0))h=h+1|0;else{F=m;break i}}k[l>>2]=E;F=E}else F=m;while(0);k:do if((o|0)>(F|0)){m=(z|0)<(x|0);E=(D|0)<(B|0);l=o;l:while(1){m:do if(!m){if(E){h=x;while(1)if((h|0)<(z|0))h=h+1|0;else break m}else G=x;while(1){h=B;C=(k[c+(G<<2)>>2]|0)+(B<<6)+(l<<1)|0;while(1){if(j[C>>1]|0){H=l;break l}if((h|0)<(D|0)){h=h+1|0;C=C+64|0}else break}if((G|0)<(z|0))G=G+1|0;else break}}while(0);if((l|0)>(F|0))l=l+-1|0;else{I=o;break k}}k[n>>2]=H;I=H}else I=o;while(0);o=z-x<<4;H=(D-B|0)*12|0;n=I-F<<3;G=(ha(H,H)|0)+(ha(o,o)|0)+(ha(n,n)|0)|0;k[b+24>>2]=G;if((z|0)<(x|0)){J=0;K=b+28|0;k[K>>2]=J;return}G=(I|0)<(F|0);if((D|0)<(B|0)){J=0;K=b+28|0;k[K>>2]=J;return}else{L=x;M=0}while(1){x=k[c+(L<<2)>>2]|0;if(G)N=M;else{n=B;o=M;while(1){H=F;l=o;E=x+(n<<6)+(F<<1)|0;while(1){m=((j[E>>1]|0)!=0&1)+l|0;if((H|0)<(I|0)){H=H+1|0;l=m;E=E+2|0}else{O=m;break}}if((n|0)<(D|0)){n=n+1|0;o=O}else{N=O;break}}}if((L|0)<(z|0)){L=L+1|0;M=N}else{J=N;break}}K=b+28|0;k[K>>2]=J;return}function pm(a,b){a=a|0;b=b|0;return (a+-1+b|0)/(b|0)|0|0}function qm(a,b){a=a|0;b=b|0;var c=0;c=a+-1+b|0;return c-((c|0)%(b|0)|0)|0}function rm(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0;if((e|0)<=0)return;g=c+(d<<2)|0;d=a+(b<<2)|0;b=e;while(1){wr(k[g>>2]|0,k[d>>2]|0,f|0)|0;if((b|0)>1){g=g+4|0;d=d+4|0;b=b+-1|0}else break}return}function sm(a,b,c){a=a|0;b=b|0;c=c|0;wr(b|0,a|0,c<<7|0)|0;return}function tm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;b=r;r=r+16|0;c=b;d=b+8|0;e=b+12|0;f=a+4|0;k[f>>2]=0;g=Lm(a)|0;k[d>>2]=g;g=Fm(a,84)|0;if(!g){Mm(a);h=k[a>>2]|0;k[h+20>>2]=56;k[h+24>>2]=0;qb[k[h>>2]&127](a)}k[g>>2]=30;k[g+4>>2]=31;k[g+8>>2]=53;k[g+12>>2]=54;k[g+16>>2]=1;k[g+20>>2]=2;k[g+24>>2]=55;k[g+28>>2]=1;k[g+32>>2]=2;k[g+36>>2]=15;k[g+40>>2]=56;k[g+48>>2]=1e9;a=g+44|0;k[a>>2]=k[d>>2];k[g+56>>2]=0;k[g+64>>2]=0;k[g+52>>2]=0;k[g+60>>2]=0;k[g+68>>2]=0;k[g+72>>2]=0;k[g+76>>2]=84;k[f>>2]=g;g=Xa(161233)|0;if(!g){r=b;return}i[e>>0]=120;k[c>>2]=d;k[c+4>>2]=e;if((Cq(g,161241,c)|0)<=0){r=b;return}switch(i[e>>0]|0){case 77:case 109:{e=(k[d>>2]|0)*1e3|0;k[d>>2]=e;j=e;break}default:j=k[d>>2]|0}k[a>>2]=j*1e3;r=b;return}function um(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=k[a+4>>2]|0;if(c>>>0>999999984){e=k[a>>2]|0;k[e+20>>2]=56;k[e+24>>2]=1;qb[k[e>>2]&127](a)}e=c&7;f=((e|0)==0?0:8-e|0)+c|0;if(b>>>0>1){c=k[a>>2]|0;k[c+20>>2]=15;k[c+24>>2]=b;qb[k[c>>2]&127](a)}c=d+52+(b<<2)|0;e=k[c>>2]|0;a:do if(!e){g=0;h=8}else{i=e;while(1){if((k[i+8>>2]|0)>>>0>=f>>>0){j=i;break a}l=k[i>>2]|0;if(!l){g=i;h=8;break}else i=l}}while(0);do if((h|0)==8){e=f+16|0;i=(g|0)==0;l=k[(i?121244:121252)+(b<<2)>>2]|0;m=999999984-f|0;n=l>>>0>m>>>0?m:l;l=e+n|0;m=Fm(a,l)|0;if(!m){o=n;while(1){p=o>>>1;if(o>>>0<100){q=k[a>>2]|0;k[q+20>>2]=56;k[q+24>>2]=2;qb[k[q>>2]&127](a)}q=e+p|0;r=Fm(a,q)|0;if(!r)o=p;else{s=q;t=r;u=p;break}}}else{s=l;t=m;u=n}o=d+76|0;k[o>>2]=(k[o>>2]|0)+s;k[t>>2]=0;k[t+4>>2]=0;k[t+8>>2]=u+f;if(i){k[c>>2]=t;j=t;break}else{k[g>>2]=t;j=t;break}}while(0);t=j+4|0;g=k[t>>2]|0;k[t>>2]=g+f;t=j+8|0;k[t>>2]=(k[t>>2]|0)-f;return j+16+g|0}function vm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=k[a+4>>2]|0;if(c>>>0>999999984){e=k[a>>2]|0;k[e+20>>2]=56;k[e+24>>2]=3;qb[k[e>>2]&127](a)}e=c&7;f=((e|0)==0?0:8-e|0)+c|0;if(b>>>0>1){c=k[a>>2]|0;k[c+20>>2]=15;k[c+24>>2]=b;qb[k[c>>2]&127](a)}c=f+16|0;e=Hm(a,c)|0;if(!e){g=k[a>>2]|0;k[g+20>>2]=56;k[g+24>>2]=4;qb[k[g>>2]&127](a)}a=d+76|0;k[a>>2]=(k[a>>2]|0)+c;c=d+60+(b<<2)|0;k[e>>2]=k[c>>2];k[e+4>>2]=f;k[e+8>>2]=0;k[c>>2]=e;return e+16|0}function wm(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,l=0,m=0,n=0,o=0;e=k[a+4>>2]|0;f=999999984/(c>>>0)|0;if(!f){g=k[a>>2]|0;k[g+20>>2]=72;qb[k[g>>2]&127](a)}g=(f|0)<(d|0)?f:d;k[e+80>>2]=g;e=um(a,b,d<<2)|0;if(!d)return e|0;f=~d;h=0;i=g;while(1){g=d-h|0;j=i;i=i>>>0<g>>>0?i:g;g=vm(a,b,ha(i,c)|0)|0;if(!i)l=h;else{m=h+f|0;n=~j;j=m>>>0>n>>>0?m:n;n=h;m=i;o=g;while(1){k[e+(n<<2)>>2]=o;m=m+-1|0;if(!m)break;else{n=n+1|0;o=o+c|0}}l=h+-1-j|0}if(l>>>0>=d>>>0)break;else h=l}return e|0}function xm(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,l=0,m=0,n=0,o=0,p=0;e=k[a+4>>2]|0;f=c<<7;g=999999984/(f>>>0)|0;if(!g){h=k[a>>2]|0;k[h+20>>2]=72;qb[k[h>>2]&127](a)}h=(g|0)<(d|0)?g:d;k[e+80>>2]=h;e=um(a,b,d<<2)|0;if(!d)return e|0;g=~d;i=0;j=h;while(1){h=d-i|0;l=j;j=j>>>0<h>>>0?j:h;h=vm(a,b,ha(f,j)|0)|0;if(!j)m=i;else{n=i+g|0;o=~l;l=n>>>0>o>>>0?n:o;o=i;n=j;p=h;while(1){k[e+(o<<2)>>2]=p;n=n+-1|0;if(!n)break;else{o=o+1|0;p=p+(c<<7)|0}}m=i+-1-l|0}if(m>>>0>=d>>>0)break;else i=m}return e|0}function ym(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=k[a+4>>2]|0;if((b|0)!=1){h=k[a>>2]|0;k[h+20>>2]=15;k[h+24>>2]=b;qb[k[h>>2]&127](a)}h=um(a,b,128)|0;k[h>>2]=0;k[h+4>>2]=e;k[h+8>>2]=d;k[h+12>>2]=f;k[h+32>>2]=c;k[h+40>>2]=0;c=g+68|0;k[h+44>>2]=k[c>>2];k[c>>2]=h;return h|0}function zm(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=k[a+4>>2]|0;if((b|0)!=1){h=k[a>>2]|0;k[h+20>>2]=15;k[h+24>>2]=b;qb[k[h>>2]&127](a)}h=um(a,b,128)|0;k[h>>2]=0;k[h+4>>2]=e;k[h+8>>2]=d;k[h+12>>2]=f;k[h+32>>2]=c;k[h+40>>2]=0;c=g+72|0;k[h+44>>2]=k[c>>2];k[c>>2]=h;return h|0}function Am(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,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=a+4|0;c=k[b>>2]|0;d=c+68|0;e=k[d>>2]|0;if(!e){f=0;g=0}else{h=0;i=0;j=e;while(1){if(!(k[j>>2]|0)){e=k[j+8>>2]|0;l=(ha(e,k[j+12>>2]|0)|0)+i|0;m=(ha(k[j+4>>2]|0,e)|0)+h|0;n=l}else{m=h;n=i}j=k[j+44>>2]|0;if(!j){f=m;g=n;break}else{h=m;i=n}}}n=c+72|0;i=k[n>>2]|0;if(!i){o=f;p=g}else{m=i;i=f;f=g;while(1){if(!(k[m>>2]|0)){g=k[m+8>>2]|0;h=(ha(k[m+12>>2]<<7,g)|0)+f|0;q=(ha(g<<7,k[m+4>>2]|0)|0)+i|0;r=h}else{q=i;r=f}m=k[m+44>>2]|0;if(!m){o=q;p=r;break}else{i=q;f=r}}}if((p|0)<1)return;r=Jm(a,p,o,k[c+76>>2]|0)|0;if((r|0)<(o|0)){o=(r|0)/(p|0)|0;s=(o|0)<1?1:o}else s=1e9;o=k[d>>2]|0;if(o){d=c+80|0;p=o;do{if(!(k[p>>2]|0)){o=k[p+4>>2]|0;r=k[p+12>>2]|0;if(((((o+-1|0)>>>0)/(r>>>0)|0)+1|0)>(s|0)){f=ha(r,s)|0;r=p+16|0;k[r>>2]=f;f=p+8|0;Km(a,p+48|0,ha(k[f>>2]|0,o)|0);k[p+40>>2]=1;t=f;u=k[r>>2]|0}else{k[p+16>>2]=o;t=p+8|0;u=o}o=k[t>>2]|0;r=k[b>>2]|0;f=999999984/(o>>>0)|0;if(!f){q=k[a>>2]|0;k[q+20>>2]=72;qb[k[q>>2]&127](a)}q=(f|0)<(u|0)?f:u;k[r+80>>2]=q;r=um(a,1,u<<2)|0;if(u){f=~u;i=0;m=q;while(1){q=u-i|0;h=m;m=m>>>0<q>>>0?m:q;q=ha(m,o)|0;g=k[b>>2]|0;if(q>>>0>999999984){j=k[a>>2]|0;k[j+20>>2]=56;k[j+24>>2]=3;qb[k[j>>2]&127](a)}j=q&7;l=((j|0)==0?0:8-j|0)+q|0;q=l+16|0;j=Hm(a,q)|0;if(!j){e=k[a>>2]|0;k[e+20>>2]=56;k[e+24>>2]=4;qb[k[e>>2]&127](a)}e=g+76|0;k[e>>2]=(k[e>>2]|0)+q;q=g+64|0;k[j>>2]=k[q>>2];k[j+4>>2]=l;k[j+8>>2]=0;k[q>>2]=j;if(!m)v=i;else{q=i+f|0;l=~h;h=q>>>0>l>>>0;g=i;e=m;w=j+16|0;while(1){k[r+(g<<2)>>2]=w;e=e+-1|0;if(!e)break;else{g=g+1|0;w=w+o|0}}v=i+-1-(h?q:l)|0}if(v>>>0>=u>>>0)break;else i=v}}k[p>>2]=r;k[p+20>>2]=k[d>>2];k[p+24>>2]=0;k[p+28>>2]=0;k[p+36>>2]=0}p=k[p+44>>2]|0}while((p|0)!=0)}p=k[n>>2]|0;if(!p)return;n=c+80|0;c=p;do{if(!(k[c>>2]|0)){p=k[c+4>>2]|0;d=k[c+12>>2]|0;if(((((p+-1|0)>>>0)/(d>>>0)|0)+1|0)>(s|0)){v=ha(d,s)|0;d=c+16|0;k[d>>2]=v;v=c+8|0;Km(a,c+48|0,ha(p<<7,k[v>>2]|0)|0);k[c+40>>2]=1;x=v;y=k[d>>2]|0}else{k[c+16>>2]=p;x=c+8|0;y=p}p=k[x>>2]|0;d=k[b>>2]|0;v=p<<7;u=999999984/(v>>>0)|0;if(!u){t=k[a>>2]|0;k[t+20>>2]=72;qb[k[t>>2]&127](a)}t=(u|0)<(y|0)?u:y;k[d+80>>2]=t;d=um(a,1,y<<2)|0;if(y){u=~y;i=0;o=t;while(1){t=y-i|0;m=o;o=o>>>0<t>>>0?o:t;t=ha(o,v)|0;f=k[b>>2]|0;if(t>>>0>999999984){w=k[a>>2]|0;k[w+20>>2]=56;k[w+24>>2]=3;qb[k[w>>2]&127](a)}w=t|16;g=Hm(a,w)|0;if(!g){e=k[a>>2]|0;k[e+20>>2]=56;k[e+24>>2]=4;qb[k[e>>2]&127](a)}e=f+76|0;k[e>>2]=(k[e>>2]|0)+w;w=f+64|0;k[g>>2]=k[w>>2];k[g+4>>2]=t;k[g+8>>2]=0;k[w>>2]=g;if(!o)z=i;else{w=i+u|0;t=~m;m=w>>>0>t>>>0;f=i;e=o;j=g+16|0;while(1){k[d+(f<<2)>>2]=j;e=e+-1|0;if(!e)break;else{f=f+1|0;j=j+(p<<7)|0}}z=i+-1-(m?w:t)|0}if(z>>>0>=y>>>0)break;else i=z}}k[c>>2]=d;k[c+20>>2]=k[n>>2];k[c+24>>2]=0;k[c+28>>2]=0;k[c+36>>2]=0}c=k[c+44>>2]|0}while((c|0)!=0);return}function Bm(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f=d+c|0;g=b+4|0;if(!((f>>>0<=(k[g>>2]|0)>>>0?(k[b+12>>2]|0)>>>0>=d>>>0:0)?(k[b>>2]|0)!=0:0)){d=k[a>>2]|0;k[d+20>>2]=23;qb[k[d>>2]&127](a)}d=b+24|0;h=k[d>>2]|0;if(!(h>>>0<=c>>>0?f>>>0<=((k[b+16>>2]|0)+h|0)>>>0:0))i=7;a:do if((i|0)==7){if(!(k[b+40>>2]|0)){h=k[a>>2]|0;k[h+20>>2]=71;qb[k[h>>2]&127](a)}h=b+36|0;if(k[h>>2]|0){j=k[b+8>>2]|0;l=k[d>>2]|0;m=b+20|0;n=b+16|0;o=k[n>>2]|0;b:do if((o|0)>0?(p=b+28|0,q=b+48|0,r=b+52|0,s=k[m>>2]|0,t=(s|0)<(o|0)?s:o,s=(k[p>>2]|0)-l|0,u=(t|0)<(s|0)?t:s,s=(k[g>>2]|0)-l|0,t=(u|0)<(s|0)?u:s,(t|0)>=1):0){s=t;t=ha(l,j)|0;u=0;while(1){v=ha(s,j)|0;pb[k[r>>2]&63](a,q,k[(k[b>>2]|0)+(u<<2)>>2]|0,t,v);w=k[m>>2]|0;x=k[n>>2]|0;u=w+u|0;if((x|0)<=(u|0))break b;y=x-u|0;x=(w|0)<(y|0)?w:y;y=u+(k[d>>2]|0)|0;w=(k[p>>2]|0)-y|0;z=(x|0)<(w|0)?x:w;w=(k[g>>2]|0)-y|0;s=(z|0)<(w|0)?z:w;if((s|0)<1)break;else t=v+t|0}}while(0);k[h>>2]=0}n=b+16|0;m=k[n>>2]|0;if((k[d>>2]|0)>>>0<c>>>0)A=c;else{j=f-m|0;A=(j|0)<0?0:j}k[d>>2]=A;j=k[b+8>>2]|0;l=b+20|0;if((m|0)>0?(o=b+28|0,t=b+48|0,s=k[l>>2]|0,p=(s|0)<(m|0)?s:m,m=(k[o>>2]|0)-A|0,s=(p|0)<(m|0)?p:m,m=(k[g>>2]|0)-A|0,p=(s|0)<(m|0)?s:m,(p|0)>=1):0){m=p;p=ha(j,A)|0;s=0;while(1){u=ha(m,j)|0;pb[k[t>>2]&63](a,t,k[(k[b>>2]|0)+(s<<2)>>2]|0,p,u);q=k[l>>2]|0;r=k[n>>2]|0;s=q+s|0;if((r|0)<=(s|0))break a;v=r-s|0;r=(q|0)<(v|0)?q:v;v=s+(k[d>>2]|0)|0;q=(k[o>>2]|0)-v|0;w=(r|0)<(q|0)?r:q;q=(k[g>>2]|0)-v|0;m=(w|0)<(q|0)?w:q;if((m|0)<1)break;else p=u+p|0}}}while(0);g=b+28|0;A=k[g>>2]|0;do if(A>>>0<f>>>0){p=(e|0)==0;if(A>>>0<c>>>0)if(p){B=0;C=c}else{m=k[a>>2]|0;k[m+20>>2]=23;qb[k[m>>2]&127](a);D=c;i=28}else if(p){B=0;C=A}else{D=A;i=28}if((i|0)==28){k[g>>2]=f;B=1;C=D}if(!(k[b+32>>2]|0)){if(B)break;p=k[a>>2]|0;k[p+20>>2]=23;qb[k[p>>2]&127](a);break}p=k[b+8>>2]|0;m=k[d>>2]|0;o=C-m|0;s=f-m|0;if(o>>>0<s>>>0){m=o;do{qr(k[(k[b>>2]|0)+(m<<2)>>2]|0,0,p|0)|0;m=m+1|0}while((m|0)!=(s|0))}}while(0);if(!e){E=k[b>>2]|0;F=k[d>>2]|0;G=c-F|0;H=E+(G<<2)|0;return H|0}k[b+36>>2]=1;E=k[b>>2]|0;F=k[d>>2]|0;G=c-F|0;H=E+(G<<2)|0;return H|0}
function $h(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=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,M=0,N=0,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,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,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,vb=0,wb=0,yb=0,zb=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;b=r;r=r+272|0;c=b+248|0;d=b+240|0;e=b+232|0;f=b+224|0;g=b+216|0;h=b+208|0;n=b+200|0;o=b+192|0;p=b+184|0;q=b+176|0;s=b+168|0;t=b+160|0;u=b+152|0;v=b+144|0;w=b+136|0;x=b+128|0;y=b+120|0;z=b+112|0;A=b+104|0;B=b+96|0;C=b+88|0;D=b+80|0;E=b+72|0;F=b+64|0;G=b+56|0;H=b+48|0;I=b+40|0;J=b+32|0;K=b+24|0;M=b+16|0;N=b+8|0;O=b;P=b+256|0;Q=a+576|0;R=k[Q>>2]|0;S=R+176|0;T=S;U=k[T>>2]|0;V=k[T+4>>2]|0;if((U|0)==0&(V|0)==0){T=ub[k[a+648>>2]&63](k[a+628>>2]|0)|0;W=L;X=S;k[X>>2]=T;k[X+4>>2]=W;Y=W;Z=T}else{Y=V;Z=U}U=R+208|0;V=U;T=k[V>>2]|0;W=k[V+4>>2]|0;do if(!((T|0)==0&(W|0)==0)){if(!(Y>>>0>W>>>0|(Y|0)==(W|0)&Z>>>0>T>>>0)){k[U>>2]=0;k[U+4>>2]=0;k[U+8>>2]=0;k[U+12>>2]=0;break}V=R+216|0;X=V;S=k[X>>2]|0;_=k[X+4>>2]|0;X=sr(S|0,_|0,T|0,W|0)|0;$=L;if((S|0)==0&(_|0)==0|($>>>0>Y>>>0|($|0)==(Y|0)&X>>>0>Z>>>0)){X=pr(Z|0,Y|0,T|0,W|0)|0;$=V;k[$>>2]=X;k[$+4>>2]=L}}while(0);k[R+1220>>2]=0;k[R+1224>>2]=0;k[R+1228>>2]=k[a+168>>2];W=R+1248|0;T=W;k[T>>2]=0;k[T+4>>2]=0;T=R+1256|0;j[T>>1]=0;Y=R+1260|0;Z=R+1232|0;U=R+1240|0;$=R+225|0;X=R+205|0;V=0;a:while(1){if(!(V<<16>>16)){if(!(ai(R)|0)){aa=0;ba=324;break}_=j[T>>1]|0;if(!(_<<16>>16)){ba=13;break}else ca=_}else ca=V;_=k[Y>>2]|0;if((i[_>>0]|0)!=-1){ba=252;break}S=_+1|0;k[Y>>2]=S;_=ca+-1<<16>>16;j[T>>1]=_;da=S;S=_;while(1){if(!(S<<16>>16)){if(!(ai(R)|0)){aa=0;ba=324;break a}_=j[T>>1]|0;if(!(_<<16>>16)){ba=20;break a}ea=_;fa=k[Y>>2]|0}else{ea=S;fa=da}_=i[fa>>0]|0;ga=fa+1|0;k[Y>>2]=ga;ha=ea+-1<<16>>16;j[T>>1]=ha;if(_<<24>>24==-1){da=ga;S=ha}else{ia=_;ja=ga;ka=ha;break}}S=ia&255;b:do switch(S|0){case 216:break;case 239:case 238:case 237:case 236:case 235:case 234:case 233:case 232:case 231:case 230:case 229:case 228:case 227:case 226:case 225:case 224:case 254:{if(!(ka<<16>>16)){if(!(ai(R)|0)){aa=0;ba=324;break a}da=j[T>>1]|0;if(!(da<<16>>16)){ba=27;break a}la=k[Y>>2]|0;ma=da}else{la=ja;ma=ka}da=i[la>>0]|0;ha=la+1|0;k[Y>>2]=ha;ga=ma+-1<<16>>16;j[T>>1]=ga;_=(da&255)<<8;if(!(ga<<16>>16)){if(!(ai(R)|0)){aa=0;ba=324;break a}da=j[T>>1]|0;if(!(da<<16>>16)){ba=32;break a}na=k[Y>>2]|0;oa=da}else{na=ha;oa=ga}ga=i[na>>0]|0;k[Y>>2]=na+1;ha=oa+-1<<16>>16;j[T>>1]=ha;da=ga&255|_;_=da&65535;if((_&65535)<2){ba=34;break a}if((_&65535)>2?(_=da+65534|0,da=_&65535,ga=((ha&65535)<(da&65535)?ha:da)&65535,k[Y>>2]=na+(ga+1),da=(ha&65535)-ga|0,j[T>>1]=da,ha=_-ga|0,ga=ha&65535,_=ha&65535,(_|0)!=0):0){if(da&65535){ba=39;break a}da=W;ha=k[da>>2]|0;pa=k[da+4>>2]|0;da=(0>pa>>>0|0==(pa|0)&_>>>0>ha>>>0?ha&65535:ga)&65535;ga=Z;_=sr(da|0,0,k[ga>>2]|0,k[ga+4>>2]|0)|0;ga=Z;k[ga>>2]=_;k[ga+4>>2]=L;ga=pr(ha|0,pa|0,da|0,0)|0;da=W;k[da>>2]=ga;k[da+4>>2]=L;i[U>>0]=0}break}case 221:{da=k[Q>>2]|0;ga=da+1256|0;pa=j[ga>>1]|0;if(!(pa<<16>>16)){if(!(ai(da)|0)){aa=0;ba=324;break a}ha=j[ga>>1]|0;if(!(ha<<16>>16)){ba=44;break a}else qa=ha}else qa=pa;pa=da+1260|0;ha=k[pa>>2]|0;_=i[ha>>0]|0;ra=ha+1|0;k[pa>>2]=ra;ha=qa+-1<<16>>16;j[ga>>1]=ha;sa=(_&255)<<8;if(!(ha<<16>>16)){if(!(ai(da)|0)){aa=0;ba=324;break a}_=j[ga>>1]|0;if(!(_<<16>>16)){ba=49;break a}ta=k[pa>>2]|0;ua=_}else{ta=ra;ua=ha}ha=i[ta>>0]|0;ra=ta+1|0;k[pa>>2]=ra;_=ua+-1<<16>>16;j[ga>>1]=_;if((ha&255|sa|0)!=4){ba=51;break a}if(!(_<<16>>16)){if(!(ai(da)|0)){aa=0;ba=324;break a}sa=j[ga>>1]|0;if(!(sa<<16>>16)){ba=56;break a}va=k[pa>>2]|0;wa=sa}else{va=ra;wa=_}_=i[va>>0]|0;ra=va+1|0;k[pa>>2]=ra;sa=wa+-1<<16>>16;j[ga>>1]=sa;ha=(_&255)<<8;if(!(sa<<16>>16)){if(!(ai(da)|0)){aa=0;ba=324;break a}_=j[ga>>1]|0;if(!(_<<16>>16)){ba=61;break a}xa=k[pa>>2]|0;ya=_}else{xa=ra;ya=sa}sa=i[xa>>0]|0;k[pa>>2]=xa+1;j[ga>>1]=ya+-1<<16>>16;j[da+360>>1]=sa&255|ha;break}case 219:{ha=k[Q>>2]|0;sa=ha+1256|0;da=j[sa>>1]|0;if(!(da<<16>>16)){if(!(ai(ha)|0)){aa=0;ba=324;break a}ga=j[sa>>1]|0;if(!(ga<<16>>16)){ba=66;break a}else za=ga}else za=da;da=ha+1260|0;ga=k[da>>2]|0;pa=i[ga>>0]|0;ra=ga+1|0;k[da>>2]=ra;ga=za+-1<<16>>16;j[sa>>1]=ga;_=(pa&255)<<8;if(!(ga<<16>>16)){if(!(ai(ha)|0)){aa=0;ba=324;break a}pa=j[sa>>1]|0;if(!(pa<<16>>16)){ba=71;break a}Aa=k[da>>2]|0;Ba=pa}else{Aa=ra;Ba=ga}ga=i[Aa>>0]|0;k[da>>2]=Aa+1;ra=Ba+-1<<16>>16;j[sa>>1]=ra;pa=ga&255|_;Ca=(i[ha+225>>0]|0)==0;if((pa&65535)<3){ba=73;break a}_=pa+65534|0;pa=_&65535;if(Ca)Da=pa;else{ga=((ra&65535)<(pa&65535)?ra:pa)&65535;k[da>>2]=Aa+(ga+1);pa=(ra&65535)-ga|0;j[sa>>1]=pa;ra=_-ga|0;ga=ra&65535;if(!ga)break b;if(pa&65535){ba=78;break a}pa=ha+1248|0;_=pa;Ea=k[_>>2]|0;Fa=k[_+4>>2]|0;_=(0>Fa>>>0|0==(Fa|0)&ga>>>0>Ea>>>0?Ea&65535:ra&65535)&65535;ra=ha+1232|0;ga=ra;Ga=sr(_|0,0,k[ga>>2]|0,k[ga+4>>2]|0)|0;ga=ra;k[ga>>2]=Ga;k[ga+4>>2]=L;ga=pr(Ea|0,Fa|0,_|0,0)|0;_=pa;k[_>>2]=ga;k[_+4>>2]=L;i[ha+1240>>0]=0;break b}while(1){if((Da&65535)<65){ba=81;break a}_=me(73)|0;if(!_){ba=83;break a}k[_>>2]=73;i[_+4>>0]=-1;i[_+5>>0]=-37;i[_+6>>0]=0;i[_+7>>0]=67;ga=_+8|0;pa=j[sa>>1]|0;Fa=65;Ea=ga;while(1){if(!(pa<<16>>16)){if(!(ai(ha)|0)){Ha=_;ba=90;break a}Ga=j[sa>>1]|0;if(!(Ga<<16>>16)){ba=88;break a}else Ia=Ga}else Ia=pa;Ga=((Fa&65535)>(Ia&65535)?Ia:Fa)&65535;qe(Ea,k[da>>2]|0,Ga);k[da>>2]=(k[da>>2]|0)+Ga;pa=(m[sa>>1]|0)-Ga&65535;j[sa>>1]=pa;ra=(Fa&65535)-Ga|0;if(!(ra&65535))break;else{Fa=ra&65535;Ea=Ea+Ga|0}}Ea=l[ga>>0]&15;if(Ea>>>0>3){Ka=_;ba=92;break a}Fa=ha+312+(Ea<<2)|0;Ea=k[Fa>>2]|0;if(Ea)ne(Ea);k[Fa>>2]=_;Fa=(Da&65535)+65471|0;if(!(Fa&65535))break;else Da=Fa&65535}break}case 196:{ha=k[Q>>2]|0;sa=ha+1256|0;da=j[sa>>1]|0;if(!(da<<16>>16)){if(!(ai(ha)|0)){aa=0;ba=324;break a}Fa=j[sa>>1]|0;if(!(Fa<<16>>16)){ba=99;break a}else La=Fa}else La=da;da=ha+1260|0;Fa=k[da>>2]|0;Ea=i[Fa>>0]|0;pa=Fa+1|0;k[da>>2]=pa;Fa=La+-1<<16>>16;j[sa>>1]=Fa;Ga=(Ea&255)<<8;if(!(Fa<<16>>16)){if(!(ai(ha)|0)){aa=0;ba=324;break a}Ea=j[sa>>1]|0;if(!(Ea<<16>>16)){ba=104;break a}Ma=k[da>>2]|0;Na=Ea}else{Ma=pa;Na=Fa}Fa=i[Ma>>0]|0;k[da>>2]=Ma+1;pa=Na+-1<<16>>16;j[sa>>1]=pa;Ea=Fa&255|Ga;Ga=Ea&65535;Oa=(i[ha+225>>0]|0)==0;if((Ga&65535)<3){ba=106;break a}if(!Oa){ra=Ea+65534|0;Pa=ra&65535;Qa=((pa&65535)<(Pa&65535)?pa:Pa)&65535;k[da>>2]=Ma+(Qa+1);Pa=(pa&65535)-Qa|0;j[sa>>1]=Pa;pa=ra-Qa|0;Qa=pa&65535;if(!Qa)break b;if(Pa&65535){ba=111;break a}Pa=ha+1248|0;ra=Pa;Ra=k[ra>>2]|0;Sa=k[ra+4>>2]|0;ra=(0>Sa>>>0|0==(Sa|0)&Qa>>>0>Ra>>>0?Ra&65535:pa&65535)&65535;pa=ha+1232|0;Qa=pa;Ta=sr(ra|0,0,k[Qa>>2]|0,k[Qa+4>>2]|0)|0;Qa=pa;k[Qa>>2]=Ta;k[Qa+4>>2]=L;Qa=pr(Ra|0,Sa|0,ra|0,0)|0;ra=Pa;k[ra>>2]=Qa;k[ra+4>>2]=L;i[ha+1240>>0]=0;break b}ra=Ea+6|0;Qa=me(ra)|0;if(!Qa){ba=114;break a}k[Qa>>2]=ra;i[Qa+4>>0]=-1;i[Qa+5>>0]=-60;i[Qa+6>>0]=(Ga&65535)>>>8;i[Qa+7>>0]=Fa;Fa=Ea+65534&65535;Ea=Qa+8|0;if(!(Fa<<16>>16)){ba=117;break a}Ga=j[sa>>1]|0;ra=Fa;Fa=Ea;while(1){if(!(Ga<<16>>16)){if(!(ai(ha)|0)){Ua=Qa;ba=123;break a}Pa=j[sa>>1]|0;if(!(Pa<<16>>16)){ba=121;break a}else Va=Pa}else Va=Ga;Pa=((ra&65535)>(Va&65535)?Va:ra)&65535;qe(Fa,k[da>>2]|0,Pa);k[da>>2]=(k[da>>2]|0)+Pa;Ga=(m[sa>>1]|0)-Pa&65535;j[sa>>1]=Ga;Sa=(ra&65535)-Pa|0;if(!(Sa&65535))break;else{ra=Sa&65535;Fa=Fa+Pa|0}}Fa=i[Ea>>0]|0;ra=Fa&255;switch(ra&240|0){case 0:{if((Fa&255)>3){Wa=Qa;ba=126;break a}Fa=ha+328+(ra<<2)|0;Ga=k[Fa>>2]|0;if(Ga)ne(Ga);k[Fa>>2]=Qa;break b;break}case 16:{Fa=ra&15;if(Fa>>>0>3){Xa=Qa;ba=132;break a}ra=ha+344+(Fa<<2)|0;Fa=k[ra>>2]|0;if(Fa)ne(Fa);k[ra>>2]=Qa;break b;break}default:{Ya=Qa;ba=130;break a}}break}case 195:case 193:case 192:{ra=k[Q>>2]|0;Fa=ra+363|0;if(i[Fa>>0]|0){ba=137;break a}Ga=ra+225|0;if(!(i[Ga>>0]|0))i[ra+364>>0]=ia;sa=ra+1256|0;da=j[sa>>1]|0;if(!(da<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}Pa=j[sa>>1]|0;if(!(Pa<<16>>16)){ba=143;break a}else Za=Pa}else Za=da;da=ra+1260|0;Pa=k[da>>2]|0;Sa=i[Pa>>0]|0;Ra=Pa+1|0;k[da>>2]=Ra;Pa=Za+-1<<16>>16;j[sa>>1]=Pa;Ta=(Sa&255)<<8;if(!(Pa<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}Sa=j[sa>>1]|0;if(!(Sa<<16>>16)){ba=148;break a}_a=k[da>>2]|0;$a=Sa}else{_a=Ra;$a=Pa}Pa=i[_a>>0]|0;Ra=_a+1|0;k[da>>2]=Ra;Sa=$a+-1<<16>>16;j[sa>>1]=Sa;pa=Pa&255|Ta;if((pa&65535)<11){ab=Ga;ba=150;break a}Ta=pa+65528&65535;if((Ta>>>0)%3|0){bb=Ga;ba=153;break a}pa=(Ta>>>0)/3|0;Pa=i[Ga>>0]|0;if(Pa<<24>>24==0?(pa|0)!=(l[ra+204>>0]|0):0){ba=157;break a}if(!(Sa<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}cb=j[sa>>1]|0;if(!(cb<<16>>16)){ba=162;break a}db=k[da>>2]|0;eb=cb;fb=i[Ga>>0]|0}else{db=Ra;eb=Sa;fb=Pa}Pa=i[db>>0]|0;Sa=db+1|0;k[da>>2]=Sa;Ra=eb+-1<<16>>16;j[sa>>1]=Ra;gb=fb<<24>>24==0;if(Pa<<24>>24!=8){ba=164;break a}if(!gb){Pa=Ra&65535;cb=(Ra&65535)<4?Pa:4;hb=db+(cb+1)|0;k[da>>2]=hb;ib=Pa-cb|0;Pa=ib&65535;j[sa>>1]=Pa;jb=4-cb|0;cb=jb&65535;kb=jb&65535;if(!kb){lb=hb;mb=Pa}else{if(ib&65535){ba=169;break a}ib=ra+1248|0;jb=ib;ob=k[jb>>2]|0;pb=k[jb+4>>2]|0;jb=(0>pb>>>0|0==(pb|0)&kb>>>0>ob>>>0?ob&65535:cb)&65535;cb=ra+1232|0;kb=cb;qb=sr(jb|0,0,k[kb>>2]|0,k[kb+4>>2]|0)|0;kb=cb;k[kb>>2]=qb;k[kb+4>>2]=L;kb=pr(ob|0,pb|0,jb|0,0)|0;jb=ib;k[jb>>2]=kb;k[jb+4>>2]=L;i[ra+1240>>0]=0;lb=hb;mb=Pa}}else{if(!(Ra<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}Pa=j[sa>>1]|0;if(!(Pa<<16>>16)){ba=175;break a}rb=k[da>>2]|0;sb=Pa}else{rb=Sa;sb=Ra}Ra=i[rb>>0]|0;Sa=rb+1|0;k[da>>2]=Sa;Pa=sb+-1<<16>>16;j[sa>>1]=Pa;hb=(Ra&255)<<8;if(!(Pa<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}Ra=j[sa>>1]|0;if(!(Ra<<16>>16)){ba=180;break a}tb=k[da>>2]|0;vb=Ra}else{tb=Sa;vb=Pa}Pa=i[tb>>0]|0;Sa=tb+1|0;k[da>>2]=Sa;Ra=vb+-1<<16>>16;j[sa>>1]=Ra;jb=Pa&255|hb;if(jb>>>0<(k[ra+188>>2]|0)>>>0?jb>>>0<(k[ra+200>>2]|0)>>>0:0){ba=183;break a}k[ra+372>>2]=jb;if(!(Ra<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}jb=j[sa>>1]|0;if(!(jb<<16>>16)){ba=188;break a}wb=k[da>>2]|0;yb=jb}else{wb=Sa;yb=Ra}Ra=i[wb>>0]|0;Sa=wb+1|0;k[da>>2]=Sa;jb=yb+-1<<16>>16;j[sa>>1]=jb;hb=(Ra&255)<<8;if(!(jb<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}Ra=j[sa>>1]|0;if(!(Ra<<16>>16)){ba=193;break a}zb=k[da>>2]|0;Ab=Ra}else{zb=Sa;Ab=jb}jb=i[zb>>0]|0;Sa=zb+1|0;k[da>>2]=Sa;Ra=Ab+-1<<16>>16;j[sa>>1]=Ra;Pa=jb&255|hb;hb=k[ra+192>>2]|0;if(Pa>>>0<hb>>>0?Pa>>>0<(k[ra+184>>2]|0)>>>0:0){ba=195;break a}if(Pa>>>0>hb>>>0){ba=197;break a}k[ra+368>>2]=Pa;lb=Sa;mb=Ra}if(!(mb<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}Ra=j[sa>>1]|0;if(!(Ra<<16>>16)){ba=203;break a}Bb=k[da>>2]|0;Cb=Ra}else{Bb=lb;Cb=mb}Ra=i[Bb>>0]|0;k[da>>2]=Bb+1;Sa=Cb+-1<<16>>16;j[sa>>1]=Sa;if((Ra&255|0)!=(pa|0)){Db=Ga;ba=208;break a}c:do if(Ta>>>0>2){Ra=ra+230|0;Pa=ra+228|0;hb=ra+229|0;jb=Sa;kb=0;ib=0;while(1){if(!(jb<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}pb=j[sa>>1]|0;if(!(pb<<16>>16)){ba=213;break a}else Eb=pb}else Eb=jb;pb=k[da>>2]|0;ob=i[pb>>0]|0;k[da>>2]=pb+1;pb=Eb+-1<<16>>16;j[sa>>1]=pb;qb=i[Ga>>0]|0;if(!(qb<<24>>24)){i[ra+376+kb>>0]=ob;Fb=j[sa>>1]|0}else Fb=pb;if(!(Fb<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}pb=j[sa>>1]|0;if(!(pb<<16>>16)){ba=220;break a}Gb=pb;Hb=i[Ga>>0]|0}else{Gb=Fb;Hb=qb}qb=k[da>>2]|0;pb=i[qb>>0]|0;k[da>>2]=qb+1;j[sa>>1]=Gb+-1<<16>>16;d:do if(!(Hb<<24>>24)){i[ra+379+kb>>0]=pb;if(i[Ra>>0]|0)break;if(!(ib<<16>>16))if((pb&255|0)==(l[Pa>>0]<<4|l[hb>>0]|0))break;else{ba=231;break a}else if(pb<<24>>24==17)break;else{ba=233;break a}}else{if(ib<<16>>16){if(pb<<24>>24==17)break;i[Ra>>0]=1;break}qb=(pb&255)>>>4;i[Pa>>0]=qb;ob=pb&15;i[hb>>0]=ob;switch(qb<<24>>24){case 4:case 2:case 1:{switch(ob<<24>>24){case 4:case 2:case 1:{break d;break}default:{}}break}default:{}}i[Ra>>0]=1}while(0);pb=j[sa>>1]|0;if(!(pb<<16>>16)){if(!(ai(ra)|0)){aa=0;ba=324;break a}ob=j[sa>>1]|0;if(!(ob<<16>>16)){ba=238;break a}Ib=ob;Jb=i[Ga>>0]|0}else{Ib=pb;Jb=Hb}pb=k[da>>2]|0;ob=i[pb>>0]|0;k[da>>2]=pb+1;j[sa>>1]=Ib+-1<<16>>16;if(!(Jb<<24>>24))i[ra+382+kb>>0]=ob;ob=ib+1<<16>>16;pb=ob&65535;if(pb>>>0>=pa>>>0){Kb=Jb;break c}jb=j[sa>>1]|0;kb=pb;ib=ob}}else Kb=i[Ga>>0]|0;while(0);if(!(Kb<<24>>24))i[Fa>>0]=1;if(i[$>>0]|0){aa=1;ba=324;break a}break}case 218:{if(i[$>>0]|0){aa=1;ba=324;break a}if(i[X>>0]|0){ba=248;break a}if(!(bi(a)|0)){aa=0;ba=324;break a}break}default:{Lb=S;ba=250;break a}}while(0);if(ia<<24>>24==-38){ba=252;break}V=j[T>>1]|0}switch(ba|0){case 13:{Ja(149747,148429,2031,149768);break}case 20:{Ja(149747,148429,2016,149786);break}case 27:{Ja(149747,148429,2016,149786);break}case 32:{Ja(149747,148429,2016,149786);break}case 34:{if(i[$>>0]|0){aa=0;r=b;return aa|0}vc(k[a+628>>2]|0,149800,149823,O);aa=0;r=b;return aa|0}case 39:{Ja(149841,148429,2101,149863);break}case 44:{Ja(149747,148429,2016,149786);break}case 49:{Ja(149747,148429,2016,149786);break}case 51:{vc(k[a+628>>2]|0,149877,149909,N);aa=0;r=b;return aa|0}case 56:{Ja(149747,148429,2016,149786);break}case 61:{Ja(149747,148429,2016,149786);break}case 66:{Ja(149747,148429,2016,149786);break}case 71:{Ja(149747,148429,2016,149786);break}case 73:{if(!Ca){aa=0;r=b;return aa|0}vc(k[a+628>>2]|0,149941,149973,M);aa=0;r=b;return aa|0}case 78:{Ja(149841,148429,2101,149863);break}case 81:{vc(k[a+628>>2]|0,149941,149973,K);aa=0;r=b;return aa|0}case 83:{vc(k[a+628>>2]|0,149941,150005,J);aa=0;r=b;return aa|0}case 88:{Ja(149747,148429,2073,150019);break}case 90:{ne(Ha);aa=0;r=b;return aa|0}case 92:{vc(k[a+628>>2]|0,149941,149973,I);ne(Ka);aa=0;r=b;return aa|0}case 99:{Ja(149747,148429,2016,149786);break}case 104:{Ja(149747,148429,2016,149786);break}case 106:{if(!Oa){aa=0;r=b;return aa|0}vc(k[a+628>>2]|0,150034,150066,H);aa=0;r=b;return aa|0}case 111:{Ja(149841,148429,2101,149863);break}case 114:{vc(k[a+628>>2]|0,150034,150005,G);aa=0;r=b;return aa|0}case 117:{Ja(150098,148429,2064,150019);break}case 121:{Ja(149747,148429,2073,150019);break}case 123:{ne(Ua);aa=0;r=b;return aa|0}case 126:{vc(k[a+628>>2]|0,150034,150066,F);ne(Wa);aa=0;r=b;return aa|0}case 130:{vc(k[a+628>>2]|0,150034,150066,E);ne(Ya);aa=0;r=b;return aa|0}case 132:{vc(k[a+628>>2]|0,150034,150066,D);ne(Xa);aa=0;r=b;return aa|0}case 137:{vc(k[a+628>>2]|0,150104,149823,C);aa=0;r=b;return aa|0}case 143:{Ja(149747,148429,2016,149786);break}case 148:{Ja(149747,148429,2016,149786);break}case 150:{if(i[ab>>0]|0){aa=0;r=b;return aa|0}vc(k[a+628>>2]|0,150104,150136,B);aa=0;r=b;return aa|0}case 153:{if(i[bb>>0]|0){aa=0;r=b;return aa|0}vc(k[a+628>>2]|0,150104,150136,A);aa=0;r=b;return aa|0}case 157:{vc(k[a+628>>2]|0,150104,150168,z);aa=0;r=b;return aa|0}case 162:{Ja(149747,148429,2016,149786);break}case 164:{if(!gb){aa=0;r=b;return aa|0}vc(k[a+628>>2]|0,150104,150228,y);aa=0;r=b;return aa|0}case 169:{Ja(149841,148429,2101,149863);break}case 175:{Ja(149747,148429,2016,149786);break}case 180:{Ja(149747,148429,2016,149786);break}case 183:{vc(k[a+628>>2]|0,150104,150296,x);aa=0;r=b;return aa|0}case 188:{Ja(149747,148429,2016,149786);break}case 193:{Ja(149747,148429,2016,149786);break}case 195:{vc(k[a+628>>2]|0,150104,150345,w);aa=0;r=b;return aa|0}case 197:{vc(k[a+628>>2]|0,150104,150393,v);aa=0;r=b;return aa|0}case 203:{Ja(149747,148429,2016,149786);break}case 208:{if(i[Db>>0]|0){aa=0;r=b;return aa|0}vc(k[a+628>>2]|0,150104,150136,u);aa=0;r=b;return aa|0}case 213:{Ja(149747,148429,2016,149786);break}case 220:{Ja(149747,148429,2016,149786);break}case 231:{vc(k[a+628>>2]|0,150104,150455,t);aa=0;r=b;return aa|0}case 233:{vc(k[a+628>>2]|0,150104,150455,s);aa=0;r=b;return aa|0}case 238:{Ja(149747,148429,2016,149786);break}case 248:{Ja(150516,148429,1347,149800);break}case 250:{s=k[a+628>>2]|0;k[q>>2]=Lb;vc(s,149800,150543,q);aa=0;r=b;return aa|0}case 252:{if(i[$>>0]|0){aa=1;r=b;return aa|0}$=R+363|0;if(i[$>>0]|0){aa=1;r=b;return aa|0}q=k[Q>>2]|0;s=q+240|0;Lb=k[s>>2]|0;t=k[s+4>>2]|0;if((Lb|0)==0&(t|0)==0){vc(k[a+628>>2]|0,150579,150614,p);aa=0;r=b;return aa|0}i[q+1240>>0]=0;p=q+204|0;s=i[p>>0]|0;e:do if(s<<24>>24){u=a+640|0;Db=a+628|0;v=a+632|0;w=s;x=0;y=Lb;gb=t;z=0;f:while(1){A=q+240+(x<<3)|0;do if((y|0)==0&(gb|0)==0){Mb=x+-1|0;ba=270}else{bb=x+-1|0;if(z<<24>>24!=0?(B=q+240+(bb<<3)|0,(y|0)==(k[B>>2]|0)?(gb|0)==(k[B+4>>2]|0):0):0){Mb=bb;ba=270;break}if(x>>>0>1){B=0;ab=0;do{C=q+240+(B<<3)|0;ab=ab+1<<24>>24;if((y|0)==(k[C>>2]|0)?(gb|0)==(k[C+4>>2]|0):0){ba=265;break f}B=ab&255}while((B|0)<(bb|0))}bb=me(73)|0;if(!bb){ba=267;break f}k[bb>>2]=73;i[bb+4>>0]=-1;i[bb+5>>0]=-37;i[bb+6>>0]=0;i[bb+7>>0]=67;i[bb+8>>0]=z;B=A;xb[k[u>>2]&63](k[Db>>2]|0,k[B>>2]|0,k[B+4>>2]|0,0)|0;if((nb[k[v>>2]&63](k[Db>>2]|0,bb+9|0,64)|0)!=64){aa=0;ba=324;break f}k[q+312+(x<<2)>>2]=bb;i[q+382+x>>0]=z;Nb=i[p>>0]|0}while(0);if((ba|0)==270){ba=0;i[q+382+x>>0]=i[q+382+Mb>>0]|0;Nb=w}A=z+1<<24>>24;Fa=A&255;if((A&255)>=(Nb&255))break e;bb=q+240+(Fa<<3)|0;w=Nb;x=Fa;y=k[bb>>2]|0;gb=k[bb+4>>2]|0;z=A}if((ba|0)==265){vc(k[Db>>2]|0,150579,150634,o);aa=0;r=b;return aa|0}else if((ba|0)==267){vc(k[Db>>2]|0,150579,150005,n);aa=0;r=b;return aa|0}else if((ba|0)==324){r=b;return aa|0}}while(0);i[R+364>>0]=-64;n=R+204|0;o=i[n>>0]|0;if(!(o<<24>>24))Ob=0;else{Nb=o&255;o=0;do{i[R+376+o>>0]=o;o=o+1|0}while(o>>>0<Nb>>>0);Ob=i[n>>0]|0}i[R+379>>0]=l[R+228>>0]<<4|l[R+229>>0];if((Ob&255)>1){Nb=1;do{i[(Nb&255)+(R+379)>>0]=17;Nb=Nb+1<<24>>24}while((Nb&255)<(Ob&255))}k[R+368>>2]=k[R+192>>2];k[R+372>>2]=k[R+200>>2];i[$>>0]=1;$=k[Q>>2]|0;Ob=$+264|0;Nb=k[Ob>>2]|0;o=k[Ob+4>>2]|0;g:do if((Nb|0)==0&(o|0)==0)vc(k[a+628>>2]|0,150664,150614,h);else{i[$+1240>>0]=0;Ob=$+204|0;q=i[Ob>>0]|0;do if(q<<24>>24){Mb=a+640|0;p=a+628|0;t=a+632|0;Lb=P+1|0;s=P+2|0;z=P+3|0;gb=P+4|0;y=P+5|0;x=P+6|0;w=P+7|0;v=P+8|0;u=P+9|0;A=P+10|0;bb=P+11|0;Fa=P+12|0;B=P+13|0;ab=P+14|0;C=P+15|0;Xa=q;D=Nb;Ya=o;E=0;Wa=0;h:while(1){do if((D|0)==0&(Ya|0)==0){Pb=E+-1|0;ba=296}else{F=E+-1|0;if(Wa<<24>>24!=0?(Ua=$+264+(F<<3)|0,(D|0)==(k[Ua>>2]|0)?(Ya|0)==(k[Ua+4>>2]|0):0):0){Pb=F;ba=296;break}if(E>>>0>1){Ua=0;G=0;do{H=$+264+(Ua<<3)|0;G=G+1<<24>>24;if((D|0)==(k[H>>2]|0)?(Ya|0)==(k[H+4>>2]|0):0){ba=290;break h}Ua=G&255}while((Ua|0)<(F|0))}xb[k[Mb>>2]&63](k[p>>2]|0,D,Ya,0)|0;if((nb[k[t>>2]&63](k[p>>2]|0,P,16)|0)!=16)break g;F=(l[Lb>>0]|0)+(l[P>>0]|0)+(l[s>>0]|0)+(l[z>>0]|0)+(l[gb>>0]|0)+(l[y>>0]|0)+(l[x>>0]|0)+(l[w>>0]|0)+(l[v>>0]|0)+(l[u>>0]|0)+(l[A>>0]|0)+(l[bb>>0]|0)+(l[Fa>>0]|0)+(l[B>>0]|0)+(l[ab>>0]|0)+(l[C>>0]|0)|0;Ua=F+25|0;G=me(Ua)|0;if(!G){ba=293;break h}k[G>>2]=Ua;i[G+4>>0]=-1;i[G+5>>0]=-60;Ua=F+19|0;i[G+6>>0]=Ua>>>8;i[G+7>>0]=Ua;i[G+8>>0]=Wa;i[G+9>>0]=i[P>>0]|0;i[G+10>>0]=i[Lb>>0]|0;i[G+11>>0]=i[s>>0]|0;i[G+12>>0]=i[z>>0]|0;i[G+13>>0]=i[gb>>0]|0;i[G+14>>0]=i[y>>0]|0;i[G+15>>0]=i[x>>0]|0;i[G+16>>0]=i[w>>0]|0;i[G+17>>0]=i[v>>0]|0;i[G+18>>0]=i[u>>0]|0;i[G+19>>0]=i[A>>0]|0;i[G+20>>0]=i[bb>>0]|0;i[G+21>>0]=i[Fa>>0]|0;i[G+22>>0]=i[B>>0]|0;i[G+23>>0]=i[ab>>0]|0;i[G+24>>0]=i[C>>0]|0;if((nb[k[t>>2]&63](k[p>>2]|0,G+25|0,F)|0)!=(F|0))break g;k[$+328+(E<<2)>>2]=G;i[$+388+E>>0]=E<<4;Qb=i[Ob>>0]|0}while(0);if((ba|0)==296){ba=0;i[$+388+E>>0]=i[$+388+Pb>>0]|0;Qb=Xa}G=Wa+1<<24>>24;F=G&255;if((G&255)>=(Qb&255)){ba=300;break}Ua=$+264+(F<<3)|0;Xa=Qb;D=k[Ua>>2]|0;Ya=k[Ua+4>>2]|0;E=F;Wa=G}if((ba|0)==290){vc(k[p>>2]|0,150664,150700,g);break g}else if((ba|0)==293){vc(k[p>>2]|0,150664,150005,f);break g}else if((ba|0)==300){Rb=k[Q>>2]|0;break}}else Rb=$;while(0);Ob=Rb+288|0;q=k[Ob>>2]|0;Db=k[Ob+4>>2]|0;i:do if((q|0)==0&(Db|0)==0)vc(k[a+628>>2]|0,150731,150614,e);else{i[Rb+1240>>0]=0;Ob=Rb+204|0;Wa=i[Ob>>0]|0;j:do if(Wa<<24>>24){E=a+640|0;Ya=a+628|0;D=a+632|0;Xa=P+1|0;t=P+2|0;C=P+3|0;ab=P+4|0;B=P+5|0;Fa=P+6|0;bb=P+7|0;A=P+8|0;u=P+9|0;v=P+10|0;w=P+11|0;x=P+12|0;y=P+13|0;gb=P+14|0;z=P+15|0;s=q;Lb=Db;Mb=0;G=Wa;F=0;k:while(1){do if((s|0)==0&(Lb|0)==0){Sb=Mb+-1|0;ba=318}else{Ua=Mb+-1|0;if(F<<24>>24!=0?(H=Rb+288+(Ua<<3)|0,(s|0)==(k[H>>2]|0)?(Lb|0)==(k[H+4>>2]|0):0):0){Sb=Ua;ba=318;break}if(Mb>>>0>1){H=0;Oa=0;do{Ka=Rb+288+(H<<3)|0;Oa=Oa+1<<24>>24;if((s|0)==(k[Ka>>2]|0)?(Lb|0)==(k[Ka+4>>2]|0):0){ba=312;break k}H=Oa&255}while((H|0)<(Ua|0))}xb[k[E>>2]&63](k[Ya>>2]|0,s,Lb,0)|0;if((nb[k[D>>2]&63](k[Ya>>2]|0,P,16)|0)!=16)break i;Ua=(l[Xa>>0]|0)+(l[P>>0]|0)+(l[t>>0]|0)+(l[C>>0]|0)+(l[ab>>0]|0)+(l[B>>0]|0)+(l[Fa>>0]|0)+(l[bb>>0]|0)+(l[A>>0]|0)+(l[u>>0]|0)+(l[v>>0]|0)+(l[w>>0]|0)+(l[x>>0]|0)+(l[y>>0]|0)+(l[gb>>0]|0)+(l[z>>0]|0)|0;H=Ua+25|0;Oa=me(H)|0;if(!Oa){ba=315;break k}k[Oa>>2]=H;i[Oa+4>>0]=-1;i[Oa+5>>0]=-60;H=Ua+19|0;i[Oa+6>>0]=H>>>8;i[Oa+7>>0]=H;i[Oa+8>>0]=Mb|16;i[Oa+9>>0]=i[P>>0]|0;i[Oa+10>>0]=i[Xa>>0]|0;i[Oa+11>>0]=i[t>>0]|0;i[Oa+12>>0]=i[C>>0]|0;i[Oa+13>>0]=i[ab>>0]|0;i[Oa+14>>0]=i[B>>0]|0;i[Oa+15>>0]=i[Fa>>0]|0;i[Oa+16>>0]=i[bb>>0]|0;i[Oa+17>>0]=i[A>>0]|0;i[Oa+18>>0]=i[u>>0]|0;i[Oa+19>>0]=i[v>>0]|0;i[Oa+20>>0]=i[w>>0]|0;i[Oa+21>>0]=i[x>>0]|0;i[Oa+22>>0]=i[y>>0]|0;i[Oa+23>>0]=i[gb>>0]|0;i[Oa+24>>0]=i[z>>0]|0;if((nb[k[D>>2]&63](k[Ya>>2]|0,Oa+25|0,Ua)|0)!=(Ua|0))break i;k[Rb+344+(Mb<<2)>>2]=Oa;Oa=Rb+388+Mb|0;i[Oa>>0]=i[Oa>>0]|F;Tb=i[Ob>>0]|0}while(0);if((ba|0)==318){ba=0;Oa=Rb+388+Mb|0;i[Oa>>0]=l[Rb+388+Sb>>0]&15|l[Oa>>0];Tb=G}Oa=F+1<<24>>24;Ua=Oa&255;if((Oa&255)>=(Tb&255))break j;H=Rb+288+(Ua<<3)|0;s=k[H>>2]|0;Lb=k[H+4>>2]|0;Mb=Ua;G=Tb;F=Oa}if((ba|0)==312){vc(k[Ya>>2]|0,150731,150767,d);break i}else if((ba|0)==315){vc(k[Ya>>2]|0,150731,150005,c);break i}}while(0);Ob=i[n>>0]|0;if((Ob&255)>1)Ub=1;else{aa=1;r=b;return aa|0}do{i[(Ub&255)+(R+385)>>0]=Ub;Ub=Ub+1<<24>>24}while((Ub&255)<(Ob&255));aa=1;r=b;return aa|0}while(0);aa=0;r=b;return aa|0}while(0);aa=0;r=b;return aa|0}case 324:{r=b;return aa|0}}return 0}function ai(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,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;b=a+1248|0;c=b;d=k[c>>2]|0;e=k[c+4>>2]|0;c=a+1240|0;a:do if((d|0)==0&(e|0)==0){f=a+1220|0;g=a+208|0;h=a+1232|0;l=a+216|0;m=a+1224|0;n=a+1228|0;o=a+176|0;b:while(1){i[c>>0]=0;c:do switch(k[f>>2]|0){case 0:{p=g;q=k[p>>2]|0;r=k[p+4>>2]|0;if(!((q|0)==0&(r|0)==0)){p=h;k[p>>2]=q;k[p+4>>2]=r;r=l;p=k[r+4>>2]|0;q=b;k[q>>2]=k[r>>2];k[q+4>>2]=p}k[f>>2]=1;break}case 1:{k[f>>2]=2;break}case 2:{if(!(gc(k[a>>2]|0)|0)){s=0;t=32;break b}p=k[a>>2]|0;q=k[p+172>>2]|0;if(!q){s=0;t=32;break b}r=k[p+176>>2]|0;if(!r){s=0;t=32;break b}p=k[m>>2]|0;if((p|0)==(k[n>>2]|0)){k[f>>2]=3;break c}u=q+(p<<3)|0;q=k[u>>2]|0;v=k[u+4>>2]|0;u=h;k[u>>2]=q;k[u+4>>2]=v;do if(!((q|0)==0&(v|0)==0)){u=o;w=k[u>>2]|0;x=k[u+4>>2]|0;if(!(x>>>0>v>>>0|(x|0)==(v|0)&w>>>0>q>>>0)){u=h;k[u>>2]=0;k[u+4>>2]=0;break}u=r+(p<<3)|0;y=k[u>>2]|0;z=k[u+4>>2]|0;u=b;k[u>>2]=y;k[u+4>>2]=z;if((y|0)==0&(z|0)==0){u=h;k[u>>2]=0;k[u+4>>2]=0;break}u=sr(q|0,v|0,y|0,z|0)|0;z=L;if(z>>>0>x>>>0|(z|0)==(x|0)&u>>>0>w>>>0){u=pr(w|0,x|0,q|0,v|0)|0;x=b;k[x>>2]=u;k[x+4>>2]=L}}while(0);k[m>>2]=p+1;break}default:{s=0;t=32;break b}}while(0);v=b;q=k[v>>2]|0;r=k[v+4>>2]|0;if(!((q|0)==0&(r|0)==0)){A=q;B=r;break a}}if((t|0)==32)return s|0}else{A=d;B=e}while(0);if(!(i[c>>0]|0)){e=k[a>>2]|0;d=a+1232|0;xb[k[e+640>>2]&63](k[e+628>>2]|0,k[d>>2]|0,k[d+4>>2]|0,0)|0;i[c>>0]=1;c=b;C=k[c+4>>2]|0;D=k[c>>2]|0}else{C=B;D=A}A=k[a>>2]|0;B=a+1264|0;c=nb[k[A+632>>2]&63](k[A+628>>2]|0,B,C>>>0<0|(C|0)==0&D>>>0<2048?D&65535:2048)|0;if(!c){s=0;return s|0}if((c|0)<=0)Ja(150888,148429,1944,150892);if((c|0)>=2049)Ja(150912,148429,1945,150892);D=((c|0)<0)<<31>>31;C=b;A=k[C>>2]|0;d=k[C+4>>2]|0;if(D>>>0>d>>>0|(D|0)==(d|0)&c>>>0>A>>>0)Ja(150928,148429,1947,150892);j[a+1256>>1]=c;k[a+1260>>2]=B;B=c&65535;c=pr(A|0,d|0,B|0,0)|0;d=b;k[d>>2]=c;k[d+4>>2]=L;d=a+1232|0;a=d;c=sr(k[a>>2]|0,k[a+4>>2]|0,B|0,0)|0;B=d;k[B>>2]=c;k[B+4>>2]=L;s=1;return s|0}function bi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=r;r=r+32|0;c=b+16|0;d=b+8|0;e=k[a+576>>2]|0;if(i[e+225>>0]|0)Ja(150798,148429,1701,150824);if(!(i[e+363>>0]|0)){vc(k[a+628>>2]|0,150824,150856,b);f=0;r=b;return f|0}g=e+1256|0;h=j[g>>1]|0;if(!(h<<16>>16)){if(!(ai(e)|0)){f=0;r=b;return f|0}m=j[g>>1]|0;if(!(m<<16>>16))Ja(149747,148429,2016,149786);else n=m}else n=h;h=e+1260|0;m=k[h>>2]|0;o=i[m>>0]|0;p=m+1|0;k[h>>2]=p;m=n+-1<<16>>16;j[g>>1]=m;n=(o&255)<<8;do if(!(m<<16>>16)){if(!(ai(e)|0)){f=0;r=b;return f|0}o=j[g>>1]|0;if(!(o<<16>>16))Ja(149747,148429,2016,149786);else{q=k[h>>2]|0;s=o;break}}else{q=p;s=m}while(0);m=i[q>>0]|0;p=q+1|0;k[h>>2]=p;q=s+-1<<16>>16;j[g>>1]=q;s=e+206|0;o=i[s>>0]|0;if((m&255|n|0)!=(((o&255)<<1)+6|0)){vc(k[a+628>>2]|0,150824,150856,d);f=0;r=b;return f|0}do if(!(q<<16>>16)){if(!(ai(e)|0)){f=0;r=b;return f|0}d=j[g>>1]|0;if(!(d<<16>>16))Ja(149747,148429,2016,149786);else{t=k[h>>2]|0;u=d;v=i[s>>0]|0;break}}else{t=p;u=q;v=o}while(0);o=i[t>>0]|0;q=t+1|0;k[h>>2]=q;t=u+-1<<16>>16;j[g>>1]=t;if(o<<24>>24!=v<<24>>24){vc(k[a+628>>2]|0,150824,150856,c);f=0;r=b;return f|0}do if(v<<24>>24){c=e+205|0;a=t;o=0;u=0;while(1){if(!(a<<16>>16)){if(!(ai(e)|0)){f=0;w=40;break}p=j[g>>1]|0;if(!(p<<16>>16)){w=28;break}else x=p}else x=a;p=k[h>>2]|0;d=i[p>>0]|0;k[h>>2]=p+1;j[g>>1]=x+-1<<16>>16;p=i[c>>0]|0;i[(p&255)+o+(e+385)>>0]=d;d=j[g>>1]|0;if(!(d<<16>>16)){if(!(ai(e)|0)){f=0;w=40;break}n=j[g>>1]|0;if(!(n<<16>>16)){w=33;break}y=n;z=i[c>>0]|0}else{y=d;z=p}p=k[h>>2]|0;d=i[p>>0]|0;k[h>>2]=p+1;j[g>>1]=y+-1<<16>>16;i[(z&255)+o+(e+388)>>0]=d;d=u+1<<24>>24;p=j[g>>1]|0;if((d&255)<(l[s>>0]|0)){a=p;o=d&255;u=d}else{A=p;w=35;break}}if((w|0)==28)Ja(149747,148429,2016,149786);else if((w|0)==33)Ja(149747,148429,2016,149786);else if((w|0)==35){B=A;C=k[h>>2]|0;break}else if((w|0)==40){r=b;return f|0}}else{B=t;C=q}while(0);q=B&65535;t=(B&65535)<3?q:3;k[h>>2]=C+t;C=q-t|0;j[g>>1]=C;g=3-t|0;t=g&65535;if(!t){f=1;r=b;return f|0}if(C&65535)Ja(149841,148429,2101,149863);C=e+1248|0;q=C;h=k[q>>2]|0;B=k[q+4>>2]|0;q=(0>B>>>0|0==(B|0)&t>>>0>h>>>0?h&65535:g&65535)&65535;g=e+1232|0;t=g;w=sr(q|0,0,k[t>>2]|0,k[t+4>>2]|0)|0;t=g;k[t>>2]=w;k[t+4>>2]=L;t=pr(h|0,B|0,q|0,0)|0;q=C;k[q>>2]=t;k[q+4>>2]=L;i[e+1240>>0]=0;f=1;r=b;return f|0}function ci(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,l=0;e=4;f=jr(40)|0;k[f>>2]=0;f=tr(a+4|0,1,f|0,e|0)|0;e=L;w=0;a=w;w=0;if((a|0)!=0&(x|0)!=0){g=vr(k[a>>2]|0,f|0,e|0)|0;if(!g)La(a|0,x|0);L=x}else g=-1;if((g|0)==1)h=L;else h=0;while(1){if(h){i=0;j=6;break}w=0;ma(18,b|0,c|0,d|0)|0;g=w;w=0;if((g|0)!=0&(x|0)!=0){l=vr(k[g>>2]|0,f|0,e|0)|0;if(!l)La(g|0,x|0);L=x}else l=-1;if((l|0)==1)h=L;else break}if((j|0)==6){kr(f|0);return i|0}i=1;kr(f|0);return i|0}function di(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=4;e=jr(40)|0;k[e>>2]=0;e=tr(a+4|0,1,e|0,d|0)|0;d=L;w=0;a=w;w=0;if((a|0)!=0&(x|0)!=0){f=vr(k[a>>2]|0,e|0,d|0)|0;if(!f)La(a|0,x|0);L=x}else f=-1;if((f|0)==1)g=L;else g=0;while(1){if(g){h=0;i=6;break}w=0;ma(17,b|0,c|0,1)|0;f=w;w=0;if((f|0)!=0&(x|0)!=0){j=vr(k[f>>2]|0,e|0,d|0)|0;if(!j)La(f|0,x|0);L=x}else j=-1;if((j|0)==1)g=L;else break}if((i|0)==6){kr(e|0);return h|0}h=1;kr(e|0);return h|0}function ei(a){a=a|0;var b=0,c=0,d=0,e=0;b=r;r=r+208|0;c=b;d=b+8|0;rb[k[(k[a>>2]|0)+12>>2]&31](a,d);e=k[(k[a+12>>2]|0)+628>>2]|0;k[c>>2]=d;ie(e,151596,154321,c);r=b;return}function fi(a){a=a|0;var b=0,c=0,d=0;b=r;r=r+208|0;c=b;d=b+8|0;rb[k[(k[a>>2]|0)+12>>2]&31](a,d);b=a+12|0;a=k[(k[b>>2]|0)+628>>2]|0;k[c>>2]=d;vc(a,151596,154321,c);oi(k[b>>2]|0)}function gi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=4;d=jr(40)|0;k[d>>2]=0;d=tr(a+4|0,1,d|0,c|0)|0;c=L;w=0;a=w;w=0;if((a|0)!=0&(x|0)!=0){e=vr(k[a>>2]|0,d|0,c|0)|0;if(!e)La(a|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;ua(14,b|0,90,488);e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,d|0,c|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(d|0);return g|0}g=1;kr(d|0);return g|0}function hi(a){a=a|0;return}function ii(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=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;b=r;r=r+16|0;c=b;d=k[a+12>>2]|0;a=d+576|0;e=k[a>>2]|0;f=e+3312|0;g=0;h=0;a:while(1){m=k[f>>2]|0;if(m>>>0>=19){n=4;break}do switch(m|0){case 0:{n=5;break a;break}case 14:{n=45;break a;break}case 15:{n=51;break a;break}case 16:{n=57;break a;break}case 17:{n=67;break a;break}case 18:{n=68;break a;break}case 1:{o=k[a>>2]|0;p=k[o+312>>2]|0;if(!p){q=g;s=h;t=0}else{u=(k[p>>2]|0)+-4|0;q=p+4|0;s=u;t=u}u=o+3312|0;k[u>>2]=(k[u>>2]|0)+1;v=t;w=q;x=s;break}case 2:{u=k[a>>2]|0;o=k[u+316>>2]|0;if(!o){y=g;z=h;A=0}else{p=(k[o>>2]|0)+-4|0;y=o+4|0;z=p;A=p}p=u+3312|0;k[p>>2]=(k[p>>2]|0)+1;v=A;w=y;x=z;break}case 3:{p=k[a>>2]|0;u=k[p+320>>2]|0;if(!u){B=g;C=h;D=0}else{o=(k[u>>2]|0)+-4|0;B=u+4|0;C=o;D=o}o=p+3312|0;k[o>>2]=(k[o>>2]|0)+1;v=D;w=B;x=C;break}case 4:{o=k[a>>2]|0;p=k[o+324>>2]|0;if(!p){E=g;F=h;G=0}else{u=(k[p>>2]|0)+-4|0;E=p+4|0;F=u;G=u}u=o+3312|0;k[u>>2]=(k[u>>2]|0)+1;v=G;w=E;x=F;break}case 5:{u=k[a>>2]|0;o=k[u+328>>2]|0;if(!o){H=g;I=h;J=0}else{p=(k[o>>2]|0)+-4|0;H=o+4|0;I=p;J=p}p=u+3312|0;k[p>>2]=(k[p>>2]|0)+1;v=J;w=H;x=I;break}case 6:{p=k[a>>2]|0;u=k[p+332>>2]|0;if(!u){K=g;L=h;M=0}else{o=(k[u>>2]|0)+-4|0;K=u+4|0;L=o;M=o}o=p+3312|0;k[o>>2]=(k[o>>2]|0)+1;v=M;w=K;x=L;break}case 7:{o=k[a>>2]|0;p=k[o+336>>2]|0;if(!p){N=g;O=h;P=0}else{u=(k[p>>2]|0)+-4|0;N=p+4|0;O=u;P=u}u=o+3312|0;k[u>>2]=(k[u>>2]|0)+1;v=P;w=N;x=O;break}case 8:{u=k[a>>2]|0;o=k[u+340>>2]|0;if(!o){Q=g;R=h;S=0}else{p=(k[o>>2]|0)+-4|0;Q=o+4|0;R=p;S=p}p=u+3312|0;k[p>>2]=(k[p>>2]|0)+1;v=S;w=Q;x=R;break}case 9:{p=k[a>>2]|0;u=k[p+344>>2]|0;if(!u){T=g;U=h;V=0}else{o=(k[u>>2]|0)+-4|0;T=u+4|0;U=o;V=o}o=p+3312|0;k[o>>2]=(k[o>>2]|0)+1;v=V;w=T;x=U;break}case 10:{o=k[a>>2]|0;p=k[o+348>>2]|0;if(!p){W=g;X=h;Y=0}else{u=(k[p>>2]|0)+-4|0;W=p+4|0;X=u;Y=u}u=o+3312|0;k[u>>2]=(k[u>>2]|0)+1;v=Y;w=W;x=X;break}case 11:{u=k[a>>2]|0;o=k[u+352>>2]|0;if(!o){Z=g;_=h;$=0}else{p=(k[o>>2]|0)+-4|0;Z=o+4|0;_=p;$=p}p=u+3312|0;k[p>>2]=(k[p>>2]|0)+1;v=$;w=Z;x=_;break}case 12:{p=k[a>>2]|0;u=k[p+356>>2]|0;if(!u){aa=g;ba=h;ca=0}else{o=(k[u>>2]|0)+-4|0;aa=u+4|0;ba=o;ca=o}o=p+3312|0;k[o>>2]=(k[o>>2]|0)+1;v=ca;w=aa;x=ba;break}case 13:{o=k[a>>2]|0;p=j[o+360>>1]|0;if(!(p<<16>>16)){da=g;ea=h;fa=0}else{u=o+3316|0;i[u>>0]=-1;i[o+3317>>0]=-35;i[o+3318>>0]=0;i[o+3319>>0]=4;i[o+3320>>0]=(p&65535)>>>8;i[o+3321>>0]=p;da=u;ea=6;fa=6}u=o+3312|0;k[u>>2]=(k[u>>2]|0)+1;v=fa;w=da;x=ea;break}default:{n=72;break a}}while(0);if(!v){g=w;h=x}else{ga=w;ha=x;n=71;break}}if((n|0)==4)Ja(151621,148429,2124,151644);else if((n|0)==5){x=k[a>>2]|0;w=x+3316|0;i[w>>0]=-1;i[x+3317>>0]=-40;h=x+3312|0;k[h>>2]=(k[h>>2]|0)+1;ga=w;ha=2;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}else if((n|0)==45){w=k[a>>2]|0;h=i[w+206>>0]|0;x=((h&255)*3|0)+8|0;if(x>>>0>=256)Ja(151661,148429,2263,151702);g=w+3316|0;i[g>>0]=-1;i[w+3317>>0]=i[w+364>>0]|0;i[w+3318>>0]=0;i[w+3319>>0]=x;i[w+3320>>0]=8;x=k[w+372>>2]|0;i[w+3321>>0]=x>>>8;i[w+3322>>0]=x;x=k[w+368>>2]|0;i[w+3323>>0]=x>>>8;i[w+3324>>0]=x;i[w+3325>>0]=h;if(!(h<<24>>24))ka=0;else{x=l[w+205>>0]|0;v=0;do{ea=v+x|0;da=v*3|0;i[da+10+(w+3316)>>0]=i[w+376+ea>>0]|0;i[da+11+(w+3316)>>0]=i[w+379+ea>>0]|0;i[da+12+(w+3316)>>0]=i[w+382+ea>>0]|0;v=v+1|0}while((v&255)<<24>>24!=h<<24>>24);ka=h}h=w+3312|0;k[h>>2]=(k[h>>2]|0)+1;ga=g;ha=((ka&255)*3|0)+10|0;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}else if((n|0)==51){ka=k[a>>2]|0;g=i[ka+206>>0]|0;h=(g&255)<<1;w=h+6|0;if(w>>>0>=256)Ja(151722,148429,2299,151763);v=ka+3316|0;i[v>>0]=-1;i[ka+3317>>0]=-38;i[ka+3318>>0]=0;i[ka+3319>>0]=w;i[ka+3320>>0]=g;if(!(g<<24>>24))la=0;else{x=l[ka+205>>0]|0;ea=0;do{da=ea+x|0;fa=ea<<1;i[fa+5+(ka+3316)>>0]=i[ka+385+da>>0]|0;i[fa+6+(ka+3316)>>0]=i[ka+388+da>>0]|0;ea=ea+1|0}while((ea&255)<<24>>24!=g<<24>>24);la=g}i[((la&255)<<1)+5+(ka+3316)>>0]=0;i[ka+3316+w>>0]=63;i[h+7+(ka+3316)>>0]=0;w=ka+3312|0;k[w>>2]=(k[w>>2]|0)+1;ga=v;ha=h+8|0;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}else if((n|0)==57){h=k[a>>2]|0;v=h+1256|0;w=j[v>>1]|0;if(!(w<<16>>16)){if(!(ai(h)|0)){vc(k[d+628>>2]|0,151596,151810,c);oi(d)}d=j[v>>1]|0;if(!(d<<16>>16))Ja(149747,148429,2333,151783);else ma=d}else ma=w;w=ma&65535;ma=k[h+1260>>2]|0;j[v>>1]=0;v=h+1248|0;if(!((k[v>>2]|0)==0&(k[v+4>>2]|0)==0)){ga=ma;ha=w;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}switch(k[h+1220>>2]|0){case 2:{v=h+3312|0;if((k[h+1224>>2]|0)>>>0<(k[h+1228>>2]|0)>>>0){k[v>>2]=17;ga=ma;ha=w;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}else{k[v>>2]=18;ga=ma;ha=w;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}break}case 3:{k[h+3312>>2]=18;ga=ma;ha=w;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}default:{ga=ma;ha=w;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}}}else if((n|0)==67){w=k[a>>2]|0;ma=w+3316|0;i[ma>>0]=-1;h=w+362|0;v=i[h>>0]|0;i[w+3317>>0]=(v&255)+208;d=v+1<<24>>24;i[h>>0]=d<<24>>24==8?0:d;k[w+3312>>2]=16;ga=ma;ha=2;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}else if((n|0)==68){ma=k[a>>2]|0;a=ma+3316|0;i[a>>0]=-1;i[ma+3317>>0]=-39;ga=a;ha=2;ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}else if((n|0)==71){ia=e+1120|0;ja=e+1124|0;k[ja>>2]=ha;k[ia>>2]=ga;r=b;return 1}else if((n|0)==72)while(1){n=0;n=72}return 0}function ji(a,b){a=a|0;b=b|0;var c=0;b=r;r=r+16|0;c=k[a+12>>2]|0;vc(k[c+628>>2]|0,151596,151604,b);oi(c)}function ki(a,b){a=a|0;b=b|0;var c=0;b=r;r=r+16|0;c=k[a+12>>2]|0;vc(k[c+628>>2]|0,151596,151604,b);oi(c);return 0}function li(a){a=a|0;return}function mi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=4;d=jr(40)|0;k[d>>2]=0;d=tr(a+4|0,1,d|0,c|0)|0;c=L;w=0;a=w;w=0;if((a|0)!=0&(x|0)!=0){e=vr(k[a>>2]|0,d|0,c|0)|0;if(!e)La(a|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;xa(30,b|0,1)|0;e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,d|0,c|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(d|0);return g|0}g=1;kr(d|0);return g|0}function ni(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=4;d=jr(40)|0;k[d>>2]=0;d=tr(a+4|0,1,d|0,c|0)|0;c=L;w=0;a=w;w=0;if((a|0)!=0&(x|0)!=0){e=vr(k[a>>2]|0,d|0,c|0)|0;if(!e)La(a|0,x|0);L=x}else e=-1;if((e|0)==1)f=L;else f=0;while(1){if(f){g=0;h=6;break}w=0;ta(21,b|0)|0;e=w;w=0;if((e|0)!=0&(x|0)!=0){i=vr(k[e>>2]|0,d|0,c|0)|0;if(!i)La(e|0,x|0);L=x}else i=-1;if((i|0)==1)f=L;else break}if((h|0)==6){kr(d|0);return g|0}g=1;kr(d|0);return g|0}function oi(a){a=a|0;La((k[a+576>>2]|0)+4|0,1)}function pi(a,b){a=a|0;b=b|0;k[a+532>>2]=41;k[a+540>>2]=41;k[a+548>>2]=41;k[a+524>>2]=37;k[a+528>>2]=34;k[a+536>>2]=42;k[a+544>>2]=43;k[a+552>>2]=43;return 1}function qi(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,j=0,l=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+32|0;e=d+24|0;f=d+16|0;g=d+8|0;h=d;j=a+604|0;l=k[j>>2]|0;m=a+608|0;n=k[m>>2]|0;o=a+628|0;p=(c|0)>0;a:do if(p){q=b;s=c;t=p;u=l;v=n;b:while(1){w=u;x=v;while(1){if((x|0)<=0){y=w;z=x;A=5;break b}B=w+1|0;C=i[w>>0]|0;D=x+-1|0;if(C<<24>>24>=0){E=B;F=C;G=D;H=w;I=x;A=12;break}if(C<<24>>24==-128){w=B;x=D}else{J=B;K=C;L=w;M=x;A=8;break}}if((A|0)==8){A=0;x=1-(K<<24>>24)|0;if((x|0)>(s|0)){w=k[o>>2]|0;k[h>>2]=x-s;ie(w,152115,152130,h);N=s}else N=x;x=L+2|0;w=M+-2|0;if((N|0)>0){qr(q|0,i[J>>0]|0,N|0)|0;O=q+N|0;P=x;Q=w;R=N}else{O=q;P=x;Q=w;R=N}}else if((A|0)==12){A=0;w=F<<24>>24;if((s|0)<(w+1|0)){x=k[o>>2]|0;k[g>>2]=1-s+w;ie(x,152115,152130,g);S=s+-1|0}else S=w;w=S+1|0;if((I|0)<=(w|0)){A=17;break}qe(q,E,w);O=q+w|0;P=H+(S+2)|0;Q=G-w|0;R=w}s=s-R|0;w=(s|0)>0;if(!w){T=P;U=Q;break a}else{q=O;t=w;u=P;v=Q}}if((A|0)==5){k[j>>2]=y;k[m>>2]=z}else if((A|0)==17?(ie(k[o>>2]|0,152115,152175,f),k[j>>2]=E,k[m>>2]=G,!t):0){V=1;r=d;return V|0}v=k[o>>2]|0;k[e>>2]=k[a+444>>2];vc(v,152115,152223,e);V=0;r=d;return V|0}else{T=l;U=n}while(0);k[j>>2]=T;k[m>>2]=U;V=1;r=d;return V|0}function ri(a,b){a=a|0;b=b|0;var c=0,d=0;b=me(4)|0;c=a+576|0;k[c>>2]=b;if(!b){d=0;return d|0}if(!(k[a+12>>2]&1024)){b=Pd(a)|0;k[k[c>>2]>>2]=b;d=1;return d|0}else{b=de(a)|0;k[k[c>>2]>>2]=b;d=1;return d|0}return 0}function si(a){a=a|0;var b=0;b=k[a+576>>2]|0;if(!b)return 1;ne(b);return 1}function ti(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,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;d=a+604|0;e=k[d>>2]|0;f=(k[a+588>>2]|0)+(k[a+592>>2]|0)|0;g=a+608|0;do if((c|0)>0){h=c;j=b;l=0;m=e;n=0;a:while(1){o=i[j>>0]|0;p=h+-1|0;q=j+1|0;b:do if((h|0)>1){r=p;s=q;t=1;while(1){if(o<<24>>24!=(i[s>>0]|0)){u=r;v=s;w=t;break b}x=t+1|0;y=r+-1|0;z=s+1|0;if((r|0)>1){r=y;s=z;t=x}else{u=y;v=z;w=x;break}}}else{u=p;v=q;w=1}while(0);q=l;p=w;t=m;s=n;c:while(1){d:do if((p|0)==1){do if((t+2|0)>>>0>=f>>>0){if((s&-3|0)!=1){k[g>>2]=t-(k[d>>2]|0)+(k[g>>2]|0);if(!(je(a)|0)){A=-1;B=48;break a}C=q;D=k[d>>2]|0;break}r=q;k[g>>2]=r-(k[d>>2]|0)+(k[g>>2]|0);if(!(je(a)|0)){A=-1;B=48;break a}x=t;z=x-r|0;y=k[d>>2]|0;if((z|0)>0){E=r+-1-x|0;F=x+((E|0)>-2?E:-2)-r|0;r=q;E=y;x=z;while(1){i[E>>0]=i[r>>0]|0;if((x|0)>1){r=r+1|0;E=E+1|0;x=x+-1|0}else break}C=k[d>>2]|0;D=y+(F+2)|0}else{C=y;D=y}}else{C=q;D=t}while(0);switch(s|0){case 0:{G=C;H=D;B=16;break d;break}case 1:{I=C;J=D;B=21;break d;break}case 2:{K=C;L=D;B=26;break d;break}case 3:break;default:{M=C;N=D;O=s;break c}}if((i[D+-2>>0]|0)!=-1){q=C;p=1;t=D;s=2;continue c}x=i[C>>0]|0;if((x&255)>=126){q=C;p=1;t=D;s=2;continue c}E=(x&255)+2|0;i[C>>0]=E;i[D+-2>>0]=i[D+-1>>0]|0;q=C;p=1;t=D;s=(E&255|0)!=127&1;continue c}else{E=q;x=t;r=s;while(1){do if((x+2|0)>>>0>=f>>>0){if((r&-3|0)!=1){k[g>>2]=x-(k[d>>2]|0)+(k[g>>2]|0);if(!(je(a)|0)){A=-1;B=48;break a}P=E;Q=k[d>>2]|0;break}z=E;k[g>>2]=z-(k[d>>2]|0)+(k[g>>2]|0);if(!(je(a)|0)){A=-1;B=48;break a}R=x;S=R-z|0;T=k[d>>2]|0;if((S|0)>0){U=z+-1-R|0;V=R+((U|0)>-2?U:-2)-z|0;z=E;U=T;R=S;while(1){i[U>>0]=i[z>>0]|0;if((R|0)>1){z=z+1|0;U=U+1|0;R=R+-1|0}else break}P=k[d>>2]|0;Q=T+(V+2)|0}else{P=T;Q=T}}else{P=E;Q=x}while(0);switch(r|0){case 0:{G=P;H=Q;B=16;break d;break}case 1:{I=P;J=Q;B=21;break d;break}case 2:{K=P;L=Q;B=26;break d;break}case 3:{E=P;x=Q;r=2;break}default:{M=P;N=Q;O=r;break c}}}}while(0);if((B|0)==16){B=0;if((p|0)<=1){W=H;B=20;break}if((p|0)<=128){X=G;Y=p;Z=H;B=19;break}i[H>>0]=-127;i[H+1>>0]=o;q=G;p=p+-128|0;t=H+2|0;s=2;continue}else if((B|0)==21){B=0;if((p|0)<=1){_=I;$=J;B=25;break}if((p|0)<=128){aa=I;ba=p;ca=J;B=24;break}i[J>>0]=-127;i[J+1>>0]=o;q=I;p=p+-128|0;t=J+2|0;s=3;continue}else if((B|0)==26){B=0;if((p|0)<=1){da=L;B=31;break}if((p|0)<=128){ea=K;fa=p;ga=L;B=29;break}i[L>>0]=-127;i[L+1>>0]=o;q=K;p=p+-128|0;t=L+2|0;s=2;continue}}if((B|0)==19){B=0;i[Z>>0]=1-Y;i[Z+1>>0]=o;M=X;N=Z+2|0;O=2}else if((B|0)==20){B=0;i[W>>0]=0;i[W+1>>0]=o;M=W;N=W+2|0;O=1}else if((B|0)==24){B=0;i[ca>>0]=1-ba;i[ca+1>>0]=o;M=aa;N=ca+2|0;O=3}else if((B|0)==25){B=0;s=(i[_>>0]|0)+1<<24>>24;i[_>>0]=s;i[$>>0]=o;M=_;N=$+1|0;O=s<<24>>24!=127&1}else if((B|0)==29){B=0;i[ga>>0]=1-fa;i[ga+1>>0]=o;M=ea;N=ga+2|0;O=2}else if((B|0)==31){B=0;i[da>>0]=0;i[da+1>>0]=o;M=da;N=da+2|0;O=1}if((u|0)>0){h=u;j=v;l=M;m=N;n=O}else{ha=N;B=46;break}}if((B|0)==46){ia=k[d>>2]|0;ja=ha;break}else if((B|0)==48)return A|0}else{ia=e;ja=e}while(0);k[g>>2]=ja-ia+(k[g>>2]|0);k[d>>2]=ja;A=1;return A|0}function ui(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;e=k[k[a+576>>2]>>2]|0;if((c|0)>0){f=b;g=c}else{h=1;return h|0}while(1){c=(g|0)<(e|0)?g:e;if((ti(a,f,c,d)|0)<0){h=-1;i=4;break}g=g-c|0;if((g|0)<=0){h=1;i=4;break}else f=f+c|0}if((i|0)==4)return h|0;return 0}function vi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0.0,D=0,E=0,F=0,G=0;c=r;r=r+16|0;if((b|0)!=32909)Ja(152256,152287,1366,152302);if(!(_b(a,109784,2)|0)){vc(k[a+628>>2]|0,152302,152319,c);d=0;r=c;return d|0}b=me(172)|0;k[a+576>>2]=b;if(!b){vc(k[a+628>>2]|0,152302,152363,c+8|0);d=0;r=c;return d|0}pe(b,0,172);k[b+108>>2]=0;k[b+132>>2]=-1;k[a+504>>2]=35;k[a+508>>2]=36;k[a+512>>2]=38;k[a+532>>2]=44;k[a+540>>2]=44;k[a+548>>2]=44;k[a+516>>2]=37;k[a+524>>2]=39;k[a+528>>2]=38;k[a+536>>2]=45;k[a+544>>2]=45;k[a+552>>2]=45;k[a+556>>2]=27;k[a+564>>2]=28;e=a+672|0;k[b+140>>2]=k[e>>2];k[e>>2]=23;e=a+668|0;k[b+144>>2]=k[e>>2];k[e>>2]=24;k[b+136>>2]=-1;k[b+128>>2]=0;Ii(a)|0;o[27464]=250.0;o[27465]=148.4131622314453;a=me(54600)|0;e=me(32768)|0;f=me(512)|0;g=me(8196)|0;h=me(4098)|0;l=me(2049)|0;m=(a|0)==0;n=(e|0)==0;p=(f|0)==0;q=(g|0)==0;s=(h|0)==0;t=(l|0)==0;if(!(m|n|p|q|s|t)){u=0;do{o[g+(u<<2)>>2]=+(u|0)*7.326255555493672e-05;u=u+1|0}while((u|0)!=250);v=250;do{w=+ea(+(+(v|0)*.004))*.006737946999085467;o[g+(v<<2)>>2]=w;v=v+1|0}while((v|0)!=2048);k[g+8192>>2]=k[g+8188>>2];v=0;do{w=+o[g+(v<<2)>>2];x=w*65535.0+.5;j[h+(v<<1)>>1]=x>65535.0?-1:~~x&65535;x=w*255.0+.5;i[l+v>>0]=x>255.0?-1:~~x&255;v=v+1|0}while((v|0)!=2049);y=0;z=0;do{x=+(y|0)*7.326255555493672e-05;v=z+1|0;z=x*x>+o[g+(z<<2)>>2]*+o[g+(v<<2)>>2]?v:z;j[a+(y<<1)>>1]=z;y=y+1|0}while((y|0)!=27300);A=0;B=0;while(1){x=+(A|0)/16383.0;w=x*x;x=+o[g+(B<<2)>>2];y=B;while(1){z=y+1|0;C=x;x=+o[g+(z<<2)>>2];if(!(w>C*x)){D=y;break}else y=z}j[e+(A<<1)>>1]=D;y=A+1|0;if((y|0)==16384){E=0;F=0;break}else{A=y;B=D}}while(1){x=+(E|0)/255.0;w=x*x;x=+o[g+(F<<2)>>2];D=F;while(1){B=D+1|0;C=x;x=+o[g+(B<<2)>>2];if(!(w>C*x)){G=D;break}else D=B}j[f+(E<<1)>>1]=G;D=E+1|0;if((D|0)==256)break;else{E=D;F=G}}o[27466]=13650.0;k[b+148>>2]=g;k[b+152>>2]=h;k[b+156>>2]=l;k[b+160>>2]=a;k[b+164>>2]=e;k[b+168>>2]=f;d=1;r=c;return d|0}if(!m)ne(a);if(!n)ne(e);if(!p)ne(f);if(!q)ne(g);if(!s)ne(h);if(!t)ne(l);l=b+148|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[l+16>>2]=0;k[l+20>>2]=0;d=1;r=c;return d|0}function wi(a){a=a|0;return 1}function xi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0;b=r;r=r+16|0;c=b+8|0;d=b;e=k[a+576>>2]|0;if(!e)Ja(154187,152287,676,152768);k[a+652>>2]=3;if((j[a+126>>1]|0)==1)f=j[a+98>>1]|0;else f=1;j[e+124>>1]=f;g=f&65535;h=ha(k[a+56>>2]|0,g)|0;i=ha(h,k[a+100>>2]|0)|0;if(f<<16>>16==0|(i|0)==0){l=0;r=b;return l|0}f=i+g|0;if((i|0)<1|(f|0)==0){l=0;r=b;return l|0}i=me(f<<1)|0;k[e+120>>2]=i;if(!i){l=0;r=b;return l|0}i=e+132|0;do if((k[i>>2]|0)==-1){f=j[a+86>>1]|0;g=m[a+84>>1]|0;switch(g|0){case 32:{if(f<<16>>16==3){n=5;o=15}break}case 16:{switch(f<<16>>16){case 1:case 4:{n=4;o=15;break}default:{}}break}case 12:{switch(f<<16>>16){case 2:case 4:{n=3;o=15;break}default:{}}break}case 11:{switch(f<<16>>16){case 1:case 4:{n=2;o=15;break}default:{}}break}case 8:{switch(f<<16>>16){case 1:case 4:{n=0;o=15;break}default:{}}break}default:{}}if((o|0)==15){k[i>>2]=n;break}k[i>>2]=-1;f=k[a+628>>2]|0;k[d>>2]=g;vc(f,152768,152788,d);l=0;r=b;return l|0}while(0);if(!(Fj(e+64|0,154315,56)|0)){d=e+128|0;k[d>>2]=k[d>>2]|1;l=1;r=b;return l|0}else{d=k[a+628>>2]|0;k[c>>2]=k[e+88>>2];vc(d,152768,154321,c);l=0;r=b;return l|0}return 0}function yi(a,b){a=a|0;b=b|0;var c=0;b=k[a+576>>2]|0;if(!b)Ja(154187,152287,723,152750);else{c=b+64|0;k[c>>2]=k[a+588>>2];k[b+68>>2]=k[a+608>>2];return (Ej(c)|0)==0|0}return 0}function zi(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,l=0,n=0,p=0,q=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,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0.0,ra=0.0,sa=0.0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0.0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=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,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;d=r;r=r+48|0;e=d+40|0;f=d+32|0;g=d+24|0;h=d+16|0;l=d+8|0;n=d;p=k[a+576>>2]|0;q=p+132|0;switch(k[q>>2]|0){case 5:{s=c>>>2;break}case 2:case 3:case 4:{s=c>>>1;break}case 1:case 0:{s=c;break}default:{c=k[a+628>>2]|0;k[n>>2]=m[a+84>>1];vc(c,152640,152446,n);t=0;r=d;return t|0}}n=p+124|0;c=ha(m[n>>1]|0,k[a+56>>2]|0)|0;if(!p)Ja(154187,152287,772,152640);u=p+120|0;v=p+64|0;k[p+76>>2]=k[u>>2];w=p+80|0;k[w>>2]=s<<1;x=a+628|0;y=a+444|0;z=p+88|0;a:do switch(Gj(v,1)|0){case 1:{A=12;break a;break}case -3:{B=k[x>>2]|0;C=k[z>>2]|0;k[l>>2]=k[y>>2];k[l+4>>2]=C;vc(B,152640,154366,l);if(Ij(v)|0){t=0;A=103;break a}break}case 0:break;default:{A=10;break a}}while((k[w>>2]|0)!=0);if((A|0)==10){v=k[x>>2]|0;k[h>>2]=k[z>>2];vc(v,152640,154272,h);t=0;r=d;return t|0}else if((A|0)==12){h=k[w>>2]|0;if(h){w=k[x>>2]|0;k[g>>2]=k[y>>2];k[g+4>>2]=h;vc(w,152640,154401,g);t=0;r=d;return t|0}}else if((A|0)==103){r=d;return t|0}g=k[u>>2]|0;if(k[a+12>>2]&128)Td(g,s);u=(s|0)%(c|0)|0;if(!u)D=s;else{w=k[x>>2]|0;k[f>>2]=c;k[f+4>>2]=s;ie(w,152640,152655,f);D=s-u|0}if((D|0)<=0){t=1;r=d;return t|0}u=p+148|0;s=c<<2;f=(c|0)>3;w=(c|0)>4;h=p+152|0;y=c<<1;v=p+156|0;p=b;b=0;z=g;b:while(1){switch(k[q>>2]|0){case 5:{g=j[n>>1]|0;l=g&65535;B=k[u>>2]|0;c:do if((c|0)>=(l|0))switch(l|0){case 3:{C=(m[z>>1]|0)&2047;E=(m[z+2>>1]|0)&2047;F=k[B+(E<<2)>>2]|0;G=(m[z+4>>1]|0)&2047;H=k[B+(G<<2)>>2]|0;k[p>>2]=k[B+(C<<2)>>2];k[p+4>>2]=F;k[p+8>>2]=H;if(f){I=c;J=z;K=p;L=G;M=E;N=C}else break c;do{I=I+-3|0;C=J;J=J+6|0;E=K;K=K+12|0;N=(m[J>>1]|0)+N|0;M=(m[C+8>>1]|0)+M|0;G=k[B+((M&2047)<<2)>>2]|0;L=(m[C+10>>1]|0)+L|0;C=k[B+((L&2047)<<2)>>2]|0;k[K>>2]=k[B+((N&2047)<<2)>>2];k[E+16>>2]=G;k[E+20>>2]=C}while((I|0)>3);break}case 4:{C=(m[z>>1]|0)&2047;E=(m[z+2>>1]|0)&2047;G=k[B+(E<<2)>>2]|0;H=(m[z+4>>1]|0)&2047;F=k[B+(H<<2)>>2]|0;O=(m[z+6>>1]|0)&2047;P=k[B+(O<<2)>>2]|0;k[p>>2]=k[B+(C<<2)>>2];k[p+4>>2]=G;k[p+8>>2]=F;k[p+12>>2]=P;if(w){Q=c;R=z;S=p;T=O;U=H;V=E;W=C}else break c;do{Q=Q+-4|0;C=R;R=R+8|0;E=S;S=S+16|0;W=(m[R>>1]|0)+W|0;V=(m[C+10>>1]|0)+V|0;H=k[B+((V&2047)<<2)>>2]|0;U=(m[C+12>>1]|0)+U|0;O=k[B+((U&2047)<<2)>>2]|0;T=(m[C+14>>1]|0)+T|0;C=k[B+((T&2047)<<2)>>2]|0;k[S>>2]=k[B+((W&2047)<<2)>>2];k[E+20>>2]=H;k[E+24>>2]=O;k[E+28>>2]=C}while((Q|0)>4);break}default:{C=~l;E=l+2|0;O=z;H=p;P=l;while(1){k[H>>2]=k[B+(((m[O>>1]|0)&2047)<<2)>>2];if((P|0)>1){O=O+2|0;H=H+4|0;P=P+-1|0}else break}P=E+(g<<16>>16==0?C:-2)|0;H=c-l|0;if((H|0)>0){X=H;Y=p;Z=z}else break c;do{Y=Y+(P<<2)|0;Z=Z+(P<<1)|0;H=Z;O=Y;F=l;while(1){G=H+(l<<1)|0;j[G>>1]=(m[G>>1]|0)+(m[H>>1]|0);k[O>>2]=k[B+(((m[H>>1]|0)&2047)<<2)>>2];if((F|0)>1){H=H+2|0;O=O+4|0;F=F+-1|0}else break}X=X-l|0}while((X|0)>0)}}while(0);_=p+s|0;break}case 4:{l=j[n>>1]|0;B=l&65535;g=k[h>>2]|0;d:do if((c|0)>=(B|0))switch(B|0){case 3:{P=(m[z>>1]|0)&2047;j[p>>1]=j[g+(P<<1)>>1]|0;C=(m[z+2>>1]|0)&2047;j[p+2>>1]=j[g+(C<<1)>>1]|0;E=(m[z+4>>1]|0)&2047;j[p+4>>1]=j[g+(E<<1)>>1]|0;if(f){$=c;aa=z;ba=p;ca=E;da=C;ea=P}else break d;do{$=$+-3|0;P=aa;aa=aa+6|0;C=ba;ba=ba+6|0;ea=(m[aa>>1]|0)+ea|0;j[ba>>1]=j[g+((ea&2047)<<1)>>1]|0;da=(m[P+8>>1]|0)+da|0;j[C+8>>1]=j[g+((da&2047)<<1)>>1]|0;ca=(m[P+10>>1]|0)+ca|0;j[C+10>>1]=j[g+((ca&2047)<<1)>>1]|0}while(($|0)>3);break}case 4:{C=(m[z>>1]|0)&2047;j[p>>1]=j[g+(C<<1)>>1]|0;P=(m[z+2>>1]|0)&2047;j[p+2>>1]=j[g+(P<<1)>>1]|0;E=(m[z+4>>1]|0)&2047;j[p+4>>1]=j[g+(E<<1)>>1]|0;F=(m[z+6>>1]|0)&2047;j[p+6>>1]=j[g+(F<<1)>>1]|0;if(w){fa=c;ga=z;ia=p;ja=F;ka=E;la=P;ma=C}else break d;do{fa=fa+-4|0;C=ga;ga=ga+8|0;P=ia;ia=ia+8|0;ma=(m[ga>>1]|0)+ma|0;j[ia>>1]=j[g+((ma&2047)<<1)>>1]|0;la=(m[C+10>>1]|0)+la|0;j[P+10>>1]=j[g+((la&2047)<<1)>>1]|0;ka=(m[C+12>>1]|0)+ka|0;j[P+12>>1]=j[g+((ka&2047)<<1)>>1]|0;ja=(m[C+14>>1]|0)+ja|0;j[P+14>>1]=j[g+((ja&2047)<<1)>>1]|0}while((fa|0)>4);break}default:{P=~B;C=B+2|0;E=z;F=p;O=B;while(1){j[F>>1]=j[g+(((m[E>>1]|0)&2047)<<1)>>1]|0;if((O|0)>1){E=E+2|0;F=F+2|0;O=O+-1|0}else break}O=C+(l<<16>>16==0?P:-2)|0;F=c-B|0;if((F|0)>0){na=F;oa=p;pa=z}else break d;do{oa=oa+(O<<1)|0;pa=pa+(O<<1)|0;F=pa;E=oa;H=B;while(1){G=F+(B<<1)|0;j[G>>1]=(m[G>>1]|0)+(m[F>>1]|0);j[E>>1]=j[g+(((m[F>>1]|0)&2047)<<1)>>1]|0;if((H|0)>1){F=F+2|0;E=E+2|0;H=H+-1|0}else break}na=na-B|0}while((na|0)>0)}}while(0);_=p+y|0;break}case 3:{B=j[n>>1]|0;g=B&65535;l=k[u>>2]|0;e:do if((c|0)>=(g|0))switch(g|0){case 3:{O=(m[z>>1]|0)&2047;qa=+o[l+(O<<2)>>2]*2048.0;P=(m[z+2>>1]|0)&2047;ra=+o[l+(P<<2)>>2]*2048.0;C=(m[z+4>>1]|0)&2047;sa=+o[l+(C<<2)>>2]*2048.0;j[p>>1]=qa<3071.0?~~qa&65535:3071;j[p+2>>1]=ra<3071.0?~~ra&65535:3071;j[p+4>>1]=sa<3071.0?~~sa&65535:3071;if(f){ta=c;ua=z;va=p;wa=C;xa=P;ya=O}else break e;do{ta=ta+-3|0;O=ua;ua=ua+6|0;P=va;va=va+6|0;ya=(m[ua>>1]|0)+ya|0;sa=+o[l+((ya&2047)<<2)>>2]*2048.0;xa=(m[O+8>>1]|0)+xa|0;ra=+o[l+((xa&2047)<<2)>>2]*2048.0;wa=(m[O+10>>1]|0)+wa|0;qa=+o[l+((wa&2047)<<2)>>2]*2048.0;j[va>>1]=sa<3071.0?~~sa&65535:3071;j[P+8>>1]=ra<3071.0?~~ra&65535:3071;j[P+10>>1]=qa<3071.0?~~qa&65535:3071}while((ta|0)>3);break}case 4:{P=(m[z>>1]|0)&2047;qa=+o[l+(P<<2)>>2]*2048.0;O=(m[z+2>>1]|0)&2047;ra=+o[l+(O<<2)>>2]*2048.0;C=(m[z+4>>1]|0)&2047;sa=+o[l+(C<<2)>>2]*2048.0;H=(m[z+6>>1]|0)&2047;za=+o[l+(H<<2)>>2]*2048.0;j[p>>1]=qa<3071.0?~~qa&65535:3071;j[p+2>>1]=ra<3071.0?~~ra&65535:3071;j[p+4>>1]=sa<3071.0?~~sa&65535:3071;j[p+6>>1]=za<3071.0?~~za&65535:3071;if(w){Aa=c;Ba=z;Ca=p;Da=H;Ea=C;Fa=O;Ga=P}else break e;do{Aa=Aa+-4|0;P=Ba;Ba=Ba+8|0;O=Ca;Ca=Ca+8|0;Ga=(m[Ba>>1]|0)+Ga|0;za=+o[l+((Ga&2047)<<2)>>2]*2048.0;Fa=(m[P+10>>1]|0)+Fa|0;sa=+o[l+((Fa&2047)<<2)>>2]*2048.0;Ea=(m[P+12>>1]|0)+Ea|0;ra=+o[l+((Ea&2047)<<2)>>2]*2048.0;Da=(m[P+14>>1]|0)+Da|0;qa=+o[l+((Da&2047)<<2)>>2]*2048.0;j[Ca>>1]=za<3071.0?~~za&65535:3071;j[O+10>>1]=sa<3071.0?~~sa&65535:3071;j[O+12>>1]=ra<3071.0?~~ra&65535:3071;j[O+14>>1]=qa<3071.0?~~qa&65535:3071}while((Aa|0)>4);break}default:{O=~g;P=g+2|0;C=z;H=p;E=g;while(1){qa=+o[l+(((m[C>>1]|0)&2047)<<2)>>2]*2048.0;j[H>>1]=qa<3071.0?~~qa&65535:3071;if((E|0)>1){C=C+2|0;H=H+2|0;E=E+-1|0}else break}E=P+(B<<16>>16==0?O:-2)|0;H=c-g|0;if((H|0)>0){Ha=H;Ia=p;Ka=z}else break e;do{Ia=Ia+(E<<1)|0;Ka=Ka+(E<<1)|0;H=Ka;C=Ia;F=g;while(1){G=H+(g<<1)|0;La=(m[G>>1]|0)+(m[H>>1]|0)|0;j[G>>1]=La;qa=+o[l+((La&2047)<<2)>>2]*2048.0;j[C>>1]=qa<3071.0?~~qa&65535:3071;if((F|0)>1){H=H+2|0;C=C+2|0;F=F+-1|0}else break}Ha=Ha-g|0}while((Ha|0)>0)}}while(0);_=p+y|0;break}case 2:{g=j[n>>1]|0;l=g&65535;f:do if((c|0)>=(l|0))switch(l|0){case 3:{B=j[z>>1]|0;j[p>>1]=B;E=j[z+2>>1]|0;j[p+2>>1]=E;O=j[z+4>>1]|0;j[p+4>>1]=O;if(!f)break f;P=p;F=z;C=c;H=O&65535;O=E&65535;E=B&65535;do{C=C+-3|0;B=F;F=F+6|0;La=P;P=P+6|0;E=(m[F>>1]|0)+E|0;j[P>>1]=E&2047;O=(m[B+8>>1]|0)+O|0;j[La+8>>1]=O&2047;H=(m[B+10>>1]|0)+H|0;j[La+10>>1]=H&2047}while((C|0)>3);break}case 4:{C=j[z>>1]|0;j[p>>1]=C;H=j[z+2>>1]|0;j[p+2>>1]=H;O=j[z+4>>1]|0;j[p+4>>1]=O;E=j[z+6>>1]|0;j[p+6>>1]=E;if(!w)break f;P=p;F=z;La=c;B=E&65535;E=O&65535;O=H&65535;H=C&65535;do{La=La+-4|0;C=F;F=F+8|0;G=P;P=P+8|0;H=(m[F>>1]|0)+H|0;j[P>>1]=H&2047;O=(m[C+10>>1]|0)+O|0;j[G+10>>1]=O&2047;E=(m[C+12>>1]|0)+E|0;j[G+12>>1]=E&2047;B=(m[C+14>>1]|0)+B|0;j[G+14>>1]=B&2047}while((La|0)>4);break}default:{La=~l;B=l+2|0;E=z;O=p;H=l;while(1){j[O>>1]=(m[E>>1]|0)&2047;if((H|0)>1){E=E+2|0;O=O+2|0;H=H+-1|0}else break}H=B+(g<<16>>16==0?La:-2)|0;O=c-l|0;if((O|0)>0){Ma=O;Na=p;Oa=z}else break f;do{Na=Na+(H<<1)|0;Oa=Oa+(H<<1)|0;O=Oa;E=Na;P=l;while(1){F=O+(l<<1)|0;j[F>>1]=(m[F>>1]|0)+(m[O>>1]|0);j[E>>1]=(m[O>>1]|0)&2047;if((P|0)>1){O=O+2|0;E=E+2|0;P=P+-1|0}else break}Ma=Ma-l|0}while((Ma|0)>0)}}while(0);_=p+y|0;break}case 0:{l=j[n>>1]|0;g=l&65535;H=k[v>>2]|0;g:do if((c|0)>=(g|0))switch(g|0){case 3:{La=(m[z>>1]|0)&2047;i[p>>0]=i[H+La>>0]|0;B=(m[z+2>>1]|0)&2047;i[p+1>>0]=i[H+B>>0]|0;P=(m[z+4>>1]|0)&2047;i[p+2>>0]=i[H+P>>0]|0;if(f){Pa=c;Qa=z;Ra=p;Sa=P;Ta=B;Ua=La}else break g;do{Pa=Pa+-3|0;La=Qa;Qa=Qa+6|0;B=Ra;Ra=Ra+3|0;Ua=(m[Qa>>1]|0)+Ua|0;i[Ra>>0]=i[H+(Ua&2047)>>0]|0;Ta=(m[La+8>>1]|0)+Ta|0;i[B+4>>0]=i[H+(Ta&2047)>>0]|0;Sa=(m[La+10>>1]|0)+Sa|0;i[B+5>>0]=i[H+(Sa&2047)>>0]|0}while((Pa|0)>3);break}case 4:{B=(m[z>>1]|0)&2047;i[p>>0]=i[H+B>>0]|0;La=(m[z+2>>1]|0)&2047;i[p+1>>0]=i[H+La>>0]|0;P=(m[z+4>>1]|0)&2047;i[p+2>>0]=i[H+P>>0]|0;E=(m[z+6>>1]|0)&2047;i[p+3>>0]=i[H+E>>0]|0;if(w){Va=c;Wa=z;Xa=p;Ya=E;Za=P;_a=La;$a=B}else break g;do{Va=Va+-4|0;B=Wa;Wa=Wa+8|0;La=Xa;Xa=Xa+4|0;$a=(m[Wa>>1]|0)+$a|0;i[Xa>>0]=i[H+($a&2047)>>0]|0;_a=(m[B+10>>1]|0)+_a|0;i[La+5>>0]=i[H+(_a&2047)>>0]|0;Za=(m[B+12>>1]|0)+Za|0;i[La+6>>0]=i[H+(Za&2047)>>0]|0;Ya=(m[B+14>>1]|0)+Ya|0;i[La+7>>0]=i[H+(Ya&2047)>>0]|0}while((Va|0)>4);break}default:{La=~g;B=g+2|0;P=z;E=p;O=g;while(1){i[E>>0]=i[H+((m[P>>1]|0)&2047)>>0]|0;if((O|0)>1){P=P+2|0;E=E+1|0;O=O+-1|0}else break}O=B+(l<<16>>16==0?La:-2)|0;E=c-g|0;if((E|0)>0){ab=E;bb=p;cb=z}else break g;do{bb=bb+O|0;cb=cb+(O<<1)|0;E=cb;P=bb;F=g;while(1){G=E+(g<<1)|0;j[G>>1]=(m[G>>1]|0)+(m[E>>1]|0);i[P>>0]=i[H+((m[E>>1]|0)&2047)>>0]|0;if((F|0)>1){E=E+2|0;P=P+1|0;F=F+-1|0}else break}ab=ab-g|0}while((ab|0)>0)}}while(0);_=p+c|0;break}case 1:{g=j[n>>1]|0;H=g&65535;l=k[v>>2]|0;h:do if((c|0)>=(H|0))switch(H|0){case 3:{i[p>>0]=0;O=(m[z+4>>1]|0)&2047;La=(m[z+2>>1]|0)&2047;B=i[l+La>>0]|0;F=(m[z>>1]|0)&2047;P=i[l+F>>0]|0;i[p+1>>0]=i[l+O>>0]|0;i[p+2>>0]=B;i[p+3>>0]=P;if(f){db=c;eb=z;fb=p;gb=O;hb=La;ib=F}else break h;do{db=db+-3|0;F=eb;eb=eb+6|0;La=fb;fb=fb+4|0;i[fb>>0]=0;gb=(m[F+10>>1]|0)+gb|0;hb=(m[F+8>>1]|0)+hb|0;F=i[l+(hb&2047)>>0]|0;ib=(m[eb>>1]|0)+ib|0;O=i[l+(ib&2047)>>0]|0;i[La+5>>0]=i[l+(gb&2047)>>0]|0;i[La+6>>0]=F;i[La+7>>0]=O}while((db|0)>3);break}case 4:{O=(m[z+6>>1]|0)&2047;La=(m[z+4>>1]|0)&2047;F=i[l+La>>0]|0;P=(m[z+2>>1]|0)&2047;B=i[l+P>>0]|0;E=(m[z>>1]|0)&2047;G=i[l+E>>0]|0;i[p>>0]=i[l+O>>0]|0;i[p+1>>0]=F;i[p+2>>0]=B;i[p+3>>0]=G;if(w){jb=c;kb=z;lb=p;mb=O;nb=La;ob=P;pb=E}else break h;do{jb=jb+-4|0;E=kb;kb=kb+8|0;P=lb;lb=lb+4|0;mb=(m[E+14>>1]|0)+mb|0;nb=(m[E+12>>1]|0)+nb|0;La=i[l+(nb&2047)>>0]|0;ob=(m[E+10>>1]|0)+ob|0;E=i[l+(ob&2047)>>0]|0;pb=(m[kb>>1]|0)+pb|0;O=i[l+(pb&2047)>>0]|0;i[lb>>0]=i[l+(mb&2047)>>0]|0;i[P+5>>0]=La;i[P+6>>0]=E;i[P+7>>0]=O}while((jb|0)>4);break}default:{O=~H;P=H+2|0;E=z;La=p;G=H;while(1){i[La>>0]=i[l+((m[E>>1]|0)&2047)>>0]|0;if((G|0)>1){E=E+2|0;La=La+1|0;G=G+-1|0}else break}G=P+(g<<16>>16==0?O:-2)|0;La=c-H|0;if((La|0)>0){qb=La;rb=p;sb=z}else break h;do{rb=rb+G|0;sb=sb+(G<<1)|0;La=sb;E=rb;B=H;while(1){F=La+(H<<1)|0;j[F>>1]=(m[F>>1]|0)+(m[La>>1]|0);i[E>>0]=i[l+((m[La>>1]|0)&2047)>>0]|0;if((B|0)>1){La=La+2|0;E=E+1|0;B=B+-1|0}else break}qb=qb-H|0}while((qb|0)>0)}}while(0);_=p+c|0;break}default:break b}b=b+c|0;if((b|0)>=(D|0)){t=1;A=103;break}else{p=_;z=z+(c<<1)|0}}if((A|0)==103){r=d;return t|0}A=k[x>>2]|0;k[e>>2]=m[a+84>>1];vc(A,152640,152722,e);t=0;r=d;return t|0}function Ai(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0;b=r;r=r+16|0;c=b+8|0;d=b;e=k[a+576>>2]|0;if(!e)Ja(154187,152287,880,152562);if((j[a+126>>1]|0)==1)f=j[a+98>>1]|0;else f=1;j[e+124>>1]=f;g=ha(k[a+56>>2]|0,f&65535)|0;f=ha(g,k[a+100>>2]|0)|0;if(!f){h=0;r=b;return h|0}g=me(f<<1)|0;k[e+120>>2]=g;if(!g){h=0;r=b;return h|0}g=e+132|0;do if((k[g>>2]|0)==-1){f=j[a+86>>1]|0;i=m[a+84>>1]|0;switch(i|0){case 32:{if(f<<16>>16==3){l=5;n=14}break}case 16:{switch(f<<16>>16){case 1:case 4:{l=4;n=14;break}default:{}}break}case 12:{switch(f<<16>>16){case 2:case 4:{l=3;n=14;break}default:{}}break}case 11:{switch(f<<16>>16){case 1:case 4:{l=2;n=14;break}default:{}}break}case 8:{switch(f<<16>>16){case 1:case 4:{l=0;n=14;break}default:{}}break}default:{}}if((n|0)==14){k[g>>2]=l;break}k[g>>2]=-1;f=k[a+628>>2]|0;k[d>>2]=i;vc(f,152562,152582,d);h=0;r=b;return h|0}while(0);if(!(tj(e+64|0,k[e+136>>2]|0,154315,56)|0)){d=e+128|0;k[d>>2]=k[d>>2]|1;h=1;r=b;return h|0}else{d=k[a+628>>2]|0;k[c>>2]=k[e+88>>2];vc(d,152562,154321,c);h=0;r=b;return h|0}return 0}function Bi(a,b){a=a|0;b=b|0;b=k[a+576>>2]|0;if(!b)Ja(154187,152287,919,152544);else{k[b+76>>2]=k[a+588>>2];k[b+80>>2]=k[a+592>>2];return (wj(b+64|0)|0)==0|0}return 0}function Ci(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;b=r;r=r+16|0;c=b;d=k[a+576>>2]|0;e=d+64|0;k[d+68>>2]=0;f=d+80|0;g=a+592|0;h=a+608|0;i=a+588|0;j=d+76|0;while(1){l=yj(e,4)|0;if(l>>>0>=2)break;m=k[f>>2]|0;n=k[g>>2]|0;if((n|0)!=(m|0)){k[h>>2]=n-m;je(a)|0;k[j>>2]=k[i>>2];k[f>>2]=k[g>>2]}if((l|0)==1){o=1;p=7;break}}if((p|0)==7){r=b;return o|0}p=k[a+628>>2]|0;k[c>>2]=k[d+88>>2];vc(p,152525,154272,c);o=0;r=b;return o|0}function Di(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,n=0,p=0,q=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.0,J=0.0,K=0.0,L=0,M=0,N=0.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.0,Z=0.0,_=0,$=0.0,aa=0.0,ba=0.0,ca=0.0,da=0.0,ea=0.0,ga=0,ia=0,ja=0.0,ka=0.0,la=0.0,ma=0.0,na=0.0,oa=0.0,pa=0,qa=0,ra=0.0,sa=0.0,ta=0.0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0;d=r;r=r+32|0;e=d+24|0;f=d+16|0;g=d+8|0;h=d;i=k[a+576>>2]|0;n=k[i+132>>2]|0;switch(n|0){case 5:{p=c>>>2;break}case 2:case 3:case 4:{p=c>>>1;break}case 1:case 0:{p=c;break}default:{c=k[a+628>>2]|0;k[h>>2]=m[a+84>>1];vc(c,152431,152446,h);q=0;r=d;return q|0}}h=i+124|0;c=ha(m[h>>1]|0,k[a+56>>2]|0)|0;s=i+120|0;a:do if((p|0)>0){t=k[s>>2]|0;u=i+160|0;v=c<<2;w=c+-1|0;x=(c|0)>3;y=(c|0)>4;z=i+164|0;A=c<<1;B=i+168|0;C=t;D=b;E=0;F=t;b:while(1){switch(n|0){case 5:{t=j[h>>1]|0;G=t&65535;H=k[u>>2]|0;I=+o[27466];c:do if((c|0)>=(G|0))switch(G|0){case 3:{J=+o[D>>2];do if(!(J<0.0)){if(J<2.0){K=+(m[H+(~~(I*J)<<1)>>1]|0|0);break}if(J>24.200000762939453)K=2047.0;else K=+o[27464]*+fa(+(J*+o[27465]))+.5}else K=0.0;while(0);L=~~K&65535;j[F>>1]=L;M=L&65535;J=+o[D+4>>2];do if(!(J<0.0)){if(J<2.0){N=+(m[H+(~~(I*J)<<1)>>1]|0|0);break}if(J>24.200000762939453)N=2047.0;else N=+o[27464]*+fa(+(J*+o[27465]))+.5}else N=0.0;while(0);L=~~N&65535;j[F+2>>1]=L;O=L&65535;J=+o[D+8>>2];do if(!(J<0.0)){if(J<2.0){P=+(m[H+(~~(I*J)<<1)>>1]|0|0);break}if(J>24.200000762939453)P=2047.0;else P=+o[27464]*+fa(+(J*+o[27465]))+.5}else P=0.0;while(0);L=~~P&65535;j[F+4>>1]=L;if(!x)break c;J=+o[27464];Q=+o[27465];R=c;S=D;T=F;U=L&65535;L=O;V=M;do{R=R+-3|0;W=T;T=T+6|0;X=S;S=S+12|0;Y=+o[S>>2];do if(!(Y<0.0)){if(Y<2.0){Z=+(m[H+(~~(I*Y)<<1)>>1]|0|0);break}if(Y>24.200000762939453)Z=2047.0;else Z=J*+fa(+(Q*Y))+.5}else Z=0.0;while(0);_=V;V=~~Z;j[T>>1]=V-_&2047;Y=+o[X+16>>2];do if(!(Y<0.0)){if(Y<2.0){$=+(m[H+(~~(I*Y)<<1)>>1]|0|0);break}if(Y>24.200000762939453)$=2047.0;else $=J*+fa(+(Q*Y))+.5}else $=0.0;while(0);_=L;L=~~$;j[W+8>>1]=L-_&2047;Y=+o[X+20>>2];do if(!(Y<0.0)){if(Y<2.0){aa=+(m[H+(~~(I*Y)<<1)>>1]|0|0);break}if(Y>24.200000762939453)aa=2047.0;else aa=J*+fa(+(Q*Y))+.5}else aa=0.0;while(0);X=U;U=~~aa;j[W+10>>1]=U-X&2047}while((R|0)>3);break}case 4:{Q=+o[D>>2];do if(!(Q<0.0)){if(Q<2.0){ba=+(m[H+(~~(I*Q)<<1)>>1]|0|0);break}if(Q>24.200000762939453)ba=2047.0;else ba=+o[27464]*+fa(+(Q*+o[27465]))+.5}else ba=0.0;while(0);R=~~ba&65535;j[F>>1]=R;U=R&65535;Q=+o[D+4>>2];do if(!(Q<0.0)){if(Q<2.0){ca=+(m[H+(~~(I*Q)<<1)>>1]|0|0);break}if(Q>24.200000762939453)ca=2047.0;else ca=+o[27464]*+fa(+(Q*+o[27465]))+.5}else ca=0.0;while(0);R=~~ca&65535;j[F+2>>1]=R;L=R&65535;Q=+o[D+8>>2];do if(!(Q<0.0)){if(Q<2.0){da=+(m[H+(~~(I*Q)<<1)>>1]|0|0);break}if(Q>24.200000762939453)da=2047.0;else da=+o[27464]*+fa(+(Q*+o[27465]))+.5}else da=0.0;while(0);R=~~da&65535;j[F+4>>1]=R;V=R&65535;Q=+o[D+12>>2];do if(!(Q<0.0)){if(Q<2.0){ea=+(m[H+(~~(I*Q)<<1)>>1]|0|0);break}if(Q>24.200000762939453)ea=2047.0;else ea=+o[27464]*+fa(+(Q*+o[27465]))+.5}else ea=0.0;while(0);R=~~ea&65535;j[F+6>>1]=R;if(!y)break c;Q=+o[27464];J=+o[27465];T=c;S=D;M=F;O=R&65535;R=V;X=L;_=U;do{T=T+-4|0;ga=M;M=M+8|0;ia=S;S=S+16|0;Y=+o[S>>2];do if(!(Y<0.0)){if(Y<2.0){ja=+(m[H+(~~(I*Y)<<1)>>1]|0|0);break}if(Y>24.200000762939453)ja=2047.0;else ja=Q*+fa(+(J*Y))+.5}else ja=0.0;while(0);W=_;_=~~ja;j[M>>1]=_-W&2047;Y=+o[ia+20>>2];do if(!(Y<0.0)){if(Y<2.0){ka=+(m[H+(~~(I*Y)<<1)>>1]|0|0);break}if(Y>24.200000762939453)ka=2047.0;else ka=Q*+fa(+(J*Y))+.5}else ka=0.0;while(0);W=X;X=~~ka;j[ga+10>>1]=X-W&2047;Y=+o[ia+24>>2];do if(!(Y<0.0)){if(Y<2.0){la=+(m[H+(~~(I*Y)<<1)>>1]|0|0);break}if(Y>24.200000762939453)la=2047.0;else la=Q*+fa(+(J*Y))+.5}else la=0.0;while(0);W=R;R=~~la;j[ga+12>>1]=R-W&2047;Y=+o[ia+28>>2];do if(!(Y<0.0)){if(Y<2.0){ma=+(m[H+(~~(I*Y)<<1)>>1]|0|0);break}if(Y>24.200000762939453)ma=2047.0;else ma=Q*+fa(+(J*Y))+.5}else ma=0.0;while(0);ia=O;O=~~ma;j[ga+14>>1]=O-ia&2047}while((T|0)>4);break}default:{T=D+(w<<2)|0;O=F+(w<<1)|0;R=c-G|0;J=+o[27464];if((R|0)>0){Q=J;Y=+o[27465];X=-2-G+(t<<16>>16==0?G+1|0:2)|0;_=T;M=R;R=O;while(1){S=_;U=R;L=G;while(1){V=L;L=L+-1|0;na=+o[S>>2];do if(!(na<0.0)){if(na<2.0){oa=+(m[H+(~~(I*na)<<1)>>1]|0|0);break}if(na>24.200000762939453)oa=2047.0;else oa=Q*+fa(+(Y*na))+.5}else oa=0.0;while(0);ia=~~oa&65535;j[U>>1]=ia;W=U+(G<<1)|0;j[W>>1]=(m[W>>1]|0)-(ia&65535)&2047;if((V|0)<=1)break;else{S=S+-4|0;U=U+-2|0}}U=_+(X<<2)|0;S=R+(X<<1)|0;M=M-G|0;if((M|0)<=0){pa=U;qa=S;ra=Q;sa=Y;break}else{_=U;R=S}}}else{pa=T;qa=O;ra=J;sa=+o[27465]}R=pa;_=qa;M=G;while(1){X=M;M=M+-1|0;Y=+o[R>>2];do if(!(Y<0.0)){if(Y<2.0){ta=+(m[H+(~~(I*Y)<<1)>>1]|0|0);break}if(Y>24.200000762939453)ta=2047.0;else ta=ra*+fa(+(sa*Y))+.5}else ta=0.0;while(0);j[_>>1]=~~ta;if((X|0)<=1)break;else{R=R+-4|0;_=_+-2|0}}}}while(0);ua=D+v|0;break}case 4:{H=j[h>>1]|0;G=H&65535;t=k[z>>2]|0;d:do if((c|0)>=(G|0))switch(G|0){case 3:{_=j[t+((m[D>>1]|0)>>>2<<1)>>1]|0;j[F>>1]=_;R=j[t+((m[D+2>>1]|0)>>>2<<1)>>1]|0;j[F+2>>1]=R;M=j[t+((m[D+4>>1]|0)>>>2<<1)>>1]|0;j[F+4>>1]=M;if(!x)break d;O=c;T=D;S=F;U=M&65535;M=R&65535;R=_&65535;do{O=O+-3|0;_=S;S=S+6|0;L=T;T=T+6|0;ga=R;R=m[t+((m[T>>1]|0)>>>2<<1)>>1]|0;j[S>>1]=R-ga&2047;ga=M;M=m[t+((m[L+8>>1]|0)>>>2<<1)>>1]|0;j[_+8>>1]=M-ga&2047;ga=U;U=m[t+((m[L+10>>1]|0)>>>2<<1)>>1]|0;j[_+10>>1]=U-ga&2047}while((O|0)>3);break}case 4:{O=j[t+((m[D>>1]|0)>>>2<<1)>>1]|0;j[F>>1]=O;U=j[t+((m[D+2>>1]|0)>>>2<<1)>>1]|0;j[F+2>>1]=U;M=j[t+((m[D+4>>1]|0)>>>2<<1)>>1]|0;j[F+4>>1]=M;R=j[t+((m[D+6>>1]|0)>>>2<<1)>>1]|0;j[F+6>>1]=R;if(!y)break d;S=c;T=D;ga=F;_=R&65535;R=M&65535;M=U&65535;U=O&65535;do{S=S+-4|0;O=ga;ga=ga+8|0;L=T;T=T+8|0;ia=U;U=m[t+((m[T>>1]|0)>>>2<<1)>>1]|0;j[ga>>1]=U-ia&2047;ia=M;M=m[t+((m[L+10>>1]|0)>>>2<<1)>>1]|0;j[O+10>>1]=M-ia&2047;ia=R;R=m[t+((m[L+12>>1]|0)>>>2<<1)>>1]|0;j[O+12>>1]=R-ia&2047;ia=_;_=m[t+((m[L+14>>1]|0)>>>2<<1)>>1]|0;j[O+14>>1]=_-ia&2047}while((S|0)>4);break}default:{S=D+(w<<1)|0;_=F+(w<<1)|0;R=c-G|0;if((R|0)>0){M=-2-G+(H<<16>>16==0?G+1|0:2)|0;U=S;ga=R;R=_;while(1){T=U;ia=R;O=G;while(1){L=j[t+((m[T>>1]|0)>>>2<<1)>>1]|0;j[ia>>1]=L;W=ia+(G<<1)|0;j[W>>1]=(m[W>>1]|0)-(L&65535)&2047;if((O|0)>1){T=T+-2|0;ia=ia+-2|0;O=O+-1|0}else break}O=U+(M<<1)|0;ia=R+(M<<1)|0;ga=ga-G|0;if((ga|0)<=0){va=O;wa=ia;xa=G;break}else{U=O;R=ia}}}else{va=S;wa=_;xa=G}while(1){j[wa>>1]=j[t+((m[va>>1]|0)>>>2<<1)>>1]|0;if((xa|0)>1){va=va+-2|0;wa=wa+-2|0;xa=xa+-1|0}else break}}}while(0);ua=D+A|0;break}case 0:{t=j[h>>1]|0;G=t&65535;H=k[B>>2]|0;e:do if((c|0)>=(G|0))switch(G|0){case 3:{_=j[H+((l[D>>0]|0)<<1)>>1]|0;j[F>>1]=_;S=j[H+((l[D+1>>0]|0)<<1)>>1]|0;j[F+2>>1]=S;R=j[H+((l[D+2>>0]|0)<<1)>>1]|0;j[F+4>>1]=R;if(!x)break e;U=c;ga=D;M=F;ia=R&65535;R=S&65535;S=_&65535;do{U=U+-3|0;_=ga;ga=ga+3|0;O=S;S=m[H+((l[ga>>0]|0)<<1)>>1]|0;T=M;M=M+6|0;j[M>>1]=S-O&2047;O=R;R=m[H+((l[_+4>>0]|0)<<1)>>1]|0;j[T+8>>1]=R-O&2047;O=ia;ia=m[H+((l[_+5>>0]|0)<<1)>>1]|0;j[T+10>>1]=ia-O&2047}while((U|0)>3);break}case 4:{U=j[H+((l[D>>0]|0)<<1)>>1]|0;j[F>>1]=U;ia=j[H+((l[D+1>>0]|0)<<1)>>1]|0;j[F+2>>1]=ia;R=j[H+((l[D+2>>0]|0)<<1)>>1]|0;j[F+4>>1]=R;S=j[H+((l[D+3>>0]|0)<<1)>>1]|0;j[F+6>>1]=S;if(!y)break e;M=c;ga=D;O=F;T=S&65535;S=R&65535;R=ia&65535;ia=U&65535;do{M=M+-4|0;U=ga;ga=ga+4|0;_=ia;ia=m[H+((l[ga>>0]|0)<<1)>>1]|0;X=O;O=O+8|0;j[O>>1]=ia-_&2047;_=R;R=m[H+((l[U+5>>0]|0)<<1)>>1]|0;j[X+10>>1]=R-_&2047;_=S;S=m[H+((l[U+6>>0]|0)<<1)>>1]|0;j[X+12>>1]=S-_&2047;_=T;T=m[H+((l[U+7>>0]|0)<<1)>>1]|0;j[X+14>>1]=T-_&2047}while((M|0)>4);break}default:{M=w+G|0;T=F+(M<<1)|0;S=D+M|0;M=c-G|0;if((M|0)>0){R=-2-G+(t<<16>>16==0?G+1|0:2)|0;ia=S;O=M;M=T;while(1){ga=ia;_=M;X=G;while(1){U=j[H+((l[ga>>0]|0)<<1)>>1]|0;j[_>>1]=U;L=_+(G<<1)|0;j[L>>1]=(m[L>>1]|0)-(U&65535)&2047;if((X|0)>1){ga=ga+-1|0;_=_+-2|0;X=X+-1|0}else break}X=ia+R|0;_=M+(R<<1)|0;O=O-G|0;if((O|0)<=0){ya=X;za=_;Aa=G;break}else{ia=X;M=_}}}else{ya=S;za=T;Aa=G}while(1){j[za>>1]=j[H+((l[ya>>0]|0)<<1)>>1]|0;if((Aa|0)>1){ya=ya+-1|0;za=za+-2|0;Aa=Aa+-1|0}else break}}}while(0);ua=D+c|0;break}default:break b}E=E+c|0;if((E|0)>=(p|0)){Ba=C;break a}else{D=ua;F=F+(c<<1)|0}}F=k[a+628>>2]|0;k[g>>2]=m[a+84>>1];vc(F,152431,152446,g);q=0;r=d;return q|0}else Ba=k[s>>2]|0;while(0);s=i+64|0;k[s>>2]=Ba;Ba=i+68|0;k[Ba>>2]=p<<1;if((p&2147483647|0)!=(p|0)){vc(k[a+628>>2]|0,152431,152485,f);q=0;r=d;return q|0}f=i+80|0;p=a+592|0;g=a+608|0;c=a+588|0;ua=i+76|0;while(1){if(yj(s,0)|0)break;if(!(k[f>>2]|0)){k[g>>2]=k[p>>2];je(a)|0;k[ua>>2]=k[c>>2];k[f>>2]=k[p>>2]}if(!(k[Ba>>2]|0)){q=1;Ca=146;break}}if((Ca|0)==146){r=d;return q|0}Ca=k[a+628>>2]|0;k[e>>2]=k[i+88>>2];vc(Ca,152431,154240,e);q=0;r=d;return q|0}function Ei(a){a=a|0;j[a+84>>1]=8;j[a+86>>1]=1;return}function Fi(a){a=a|0;var b=0,c=0,d=0;b=a+576|0;c=k[b>>2]|0;if(!c)Ja(154168,152287,1247,152415);Ji(a)|0;k[a+672>>2]=k[c+140>>2];k[a+668>>2]=k[c+144>>2];d=k[c+160>>2]|0;if(d)ne(d);d=k[c+164>>2]|0;if(d)ne(d);d=k[c+168>>2]|0;if(d)ne(d);d=k[c+148>>2]|0;if(d)ne(d);d=k[c+152>>2]|0;if(d)ne(d);d=k[c+156>>2]|0;if(d)ne(d);do if(k[c+128>>2]&1){d=c+64|0;if(!(k[a+8>>2]|0)){Hj(d)|0;break}else{vj(d)|0;break}}while(0);d=k[c+120>>2]|0;if(!d){ne(c);k[b>>2]=0;Ve(a);return}ne(d);ne(c);k[b>>2]=0;Ve(a);return}function Gi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=k[a+576>>2]|0;switch(b|0){case 65558:{e=k[d+136>>2]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[g>>2]=e;h=1;return h|0}case 65549:{e=k[d+132>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);f=k[g>>2]|0;k[c>>2]=g+4;k[f>>2]=e;h=1;return h|0}default:{h=nb[k[d+140>>2]&63](a,b,c)|0;return h|0}}return 0}function Hi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;d=r;r=r+96|0;e=d+80|0;f=d+72|0;g=d+64|0;h=d+56|0;i=d+48|0;j=d+40|0;l=d+32|0;m=d+24|0;n=d+16|0;o=d+8|0;p=d;q=k[a+576>>2]|0;switch(b|0){case 65558:{s=(k[c>>2]|0)+(4-1)&~(4-1);t=k[s>>2]|0;k[c>>2]=s+4;k[q+136>>2]=t;if(!(k[a+8>>2]|0)){u=1;r=d;return u|0}if(!(k[q+128>>2]&1)){u=1;r=d;return u|0}if(!(xj(q+64|0,t,0)|0)){u=1;r=d;return u|0}t=k[a+628>>2]|0;k[p>>2]=k[q+88>>2];vc(t,152397,154272,p);u=0;r=d;return u|0}case 65549:{p=(k[c>>2]|0)+(4-1)&~(4-1);t=k[p>>2]|0;k[c>>2]=p+4;k[q+132>>2]=t;switch(t|0){case 1:case 0:{k[o>>2]=8;Ob(a,258,o)|0;k[n>>2]=1;Ob(a,339,n)|0;break}case 2:{k[m>>2]=16;Ob(a,258,m)|0;k[l>>2]=1;Ob(a,339,l)|0;break}case 3:{k[j>>2]=16;Ob(a,258,j)|0;k[i>>2]=2;Ob(a,339,i)|0;break}case 4:{k[h>>2]=16;Ob(a,258,h)|0;k[g>>2]=1;Ob(a,339,g)|0;break}case 5:{k[f>>2]=32;Ob(a,258,f)|0;k[e>>2]=3;Ob(a,339,e)|0;break}default:{}}if(!(k[a+12>>2]&1024))v=-1;else v=ge(a)|0;k[a+496>>2]=v;v=Pd(a)|0;k[a+580>>2]=v;u=1;r=d;return u|0}default:{u=nb[k[q+144>>2]&63](a,b,c)|0;r=d;return u|0}}return 0}function Ii(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=r;r=r+16|0;c=k[a+576>>2]|0;if(!c)Ja(154168,152869,735,152883);if(!(_b(a,109868,1)|0)){vc(k[a+628>>2]|0,152883,152901,b);d=0;r=b;return d|0}else{e=a+668|0;f=a+672|0;k[c+44>>2]=k[f>>2];k[f>>2]=25;k[c+48>>2]=k[e>>2];k[e>>2]=26;e=a+676|0;k[c+52>>2]=k[e>>2];k[e>>2]=31;e=a+508|0;k[c+56>>2]=k[e>>2];k[e>>2]=39;e=a+516|0;k[c+60>>2]=k[e>>2];k[e>>2]=40;k[c>>2]=1;k[c+24>>2]=0;k[c+40>>2]=0;d=1;r=b;return d|0}return 0}function Ji(a){a=a|0;var b=0;b=k[a+576>>2]|0;if(!b)Ja(154168,152869,776,152946);else{k[a+672>>2]=k[b+44>>2];k[a+668>>2]=k[b+48>>2];k[a+676>>2]=k[b+52>>2];k[a+508>>2]=k[b+56>>2];k[a+516>>2]=k[b+60>>2];return 1}return 0}function Ki(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=k[a+576>>2]|0;if(!d)Ja(154187,152869,698,153724);e=k[d+44>>2]|0;if(!e)Ja(153743,152869,699,153724);if((b|0)==317){f=k[d>>2]&65535;d=(k[c>>2]|0)+(4-1)&~(4-1);g=k[d>>2]|0;k[c>>2]=d+4;j[g>>1]=f;h=1;return h|0}else{h=nb[e&63](a,b,c)|0;return h|0}return 0}function Li(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=k[a+576>>2]|0;if(!d)Ja(154187,152869,678,153682);e=k[d+48>>2]|0;if(!e)Ja(153701,152869,679,153682);if((b|0)==317){f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[d>>2]=g&65535;g=a+48|0;k[g>>2]=k[g>>2]|4;g=a+12|0;k[g>>2]=k[g>>2]|8;h=1;return h|0}else{h=nb[e&63](a,b,c)|0;return h|0}return 0}function Mi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=r;r=r+16|0;e=d;f=k[a+576>>2]|0;if(k[a+48>>2]&4){zq(153600,13,1,b)|0;switch(k[f>>2]|0){case 1:{zq(153614,5,1,b)|0;break}case 2:{zq(153620,24,1,b)|0;break}case 3:{zq(153645,25,1,b)|0;break}default:{}}g=k[f>>2]|0;k[e>>2]=g;k[e+4>>2]=g;wq(b,153671,e)|0}e=k[f+52>>2]|0;if(!e){r=d;return}vb[e&127](a,b,c);r=d;return}function Ni(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+576>>2]|0;if(!(ub[k[b+56>>2]&63](a)|0)){c=0;return c|0}if(!(Pi(a)|0)){c=0;return c|0}switch(k[b>>2]|0){case 2:{switch(m[a+84>>1]|0|0){case 8:{k[b+40>>2]=32;break}case 16:{k[b+40>>2]=33;break}case 32:{k[b+40>>2]=34;break}default:{}}d=a+532|0;e=k[d>>2]|0;if((e|0)!=46){k[b+28>>2]=e;k[d>>2]=46;d=a+540|0;k[b+32>>2]=k[d>>2];k[d>>2]=47;d=a+548|0;k[b+36>>2]=k[d>>2];k[d>>2]=47}if(!(k[a+12>>2]&128)){c=1;return c|0}d=b+40|0;e=k[d>>2]|0;if((e|0)==33){k[d>>2]=35;k[a+652>>2]=3;c=1;return c|0}if((e|0)!=34){c=1;return c|0}k[d>>2]=36;k[a+652>>2]=3;c=1;return c|0}case 3:{k[b+40>>2]=37;d=a+532|0;e=k[d>>2]|0;if((e|0)!=46){k[b+28>>2]=e;k[d>>2]=46;d=a+540|0;k[b+32>>2]=k[d>>2];k[d>>2]=47;d=a+548|0;k[b+36>>2]=k[d>>2];k[d>>2]=47}if(!(k[a+12>>2]&128)){c=1;return c|0}k[a+652>>2]=3;c=1;return c|0}default:{c=1;return c|0}}return 0}function Oi(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+576>>2]|0;if(!(ub[k[b+60>>2]&63](a)|0)){c=0;return c|0}if(!(Pi(a)|0)){c=0;return c|0}switch(k[b>>2]|0){case 2:{switch(m[a+84>>1]|0|0){case 8:{k[b+24>>2]=38;break}case 16:{k[b+24>>2]=39;break}case 32:{k[b+24>>2]=40;break}default:{}}d=a+536|0;e=k[d>>2]|0;if((e|0)!=48){k[b+12>>2]=e;k[d>>2]=48;d=a+544|0;k[b+16>>2]=k[d>>2];k[d>>2]=49;d=a+552|0;k[b+20>>2]=k[d>>2];k[d>>2]=49}if(!(k[a+12>>2]&128)){c=1;return c|0}d=b+24|0;e=k[d>>2]|0;if((e|0)==39){k[d>>2]=41;k[a+652>>2]=3;c=1;return c|0}if((e|0)!=40){c=1;return c|0}k[d>>2]=42;k[a+652>>2]=3;c=1;return c|0}case 3:{k[b+24>>2]=43;d=a+536|0;e=k[d>>2]|0;if((e|0)==48){c=1;return c|0}k[b+12>>2]=e;k[d>>2]=48;d=a+544|0;k[b+16>>2]=k[d>>2];k[d>>2]=49;d=a+552|0;k[b+20>>2]=k[d>>2];k[d>>2]=49;c=1;return c|0}default:{c=1;return c|0}}return 0}function Pi(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0;b=r;r=r+32|0;c=b+16|0;d=b+8|0;e=b;f=k[a+576>>2]|0;g=k[f>>2]|0;a:do switch(g|0){case 2:{h=j[a+84>>1]|0;switch(h<<16>>16){case 32:case 16:case 8:{break a;break}default:{}}i=k[a+628>>2]|0;k[e>>2]=h&65535;vc(i,153261,153276,e);l=0;r=b;return l|0}case 3:{i=j[a+86>>1]|0;if(i<<16>>16!=3){h=k[a+628>>2]|0;k[d>>2]=i&65535;vc(h,153261,153346,d);l=0;r=b;return l|0}break}case 1:{l=1;r=b;return l|0}default:{h=k[a+628>>2]|0;k[c>>2]=g;vc(h,153261,153407,c);l=0;r=b;return l|0}}while(0);if((j[a+126>>1]|0)==1)n=m[a+98>>1]|0;else n=1;k[f+4>>2]=n;if(!(k[a+12>>2]&1024))o=Pd(a)|0;else o=de(a)|0;k[f+8>>2]=o;l=(o|0)!=0&1;r=b;return l|0}function Qi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=k[(k[a+576>>2]|0)+4>>2]|0;if((c|0)%(d|0)|0)Ja(153237,152869,469,153252);if((d|0)>=(c|0))return;a=c-d|0;switch(d|0){case 3:{c=a;e=l[b+2>>0]|0;f=b;g=l[b+1>>0]|0;h=l[b>>0]|0;while(1){j=f;f=f+3|0;m=h;h=l[f>>0]|0;i[f>>0]=h-m;m=j+4|0;n=g;g=l[m>>0]|0;i[m>>0]=g-n;n=j+5|0;j=e;e=l[n>>0]|0;i[n>>0]=e-j;if((c|0)<=3)break;else c=c+-3|0}return}case 4:{c=a;e=l[b+3>>0]|0;g=l[b+2>>0]|0;h=b;f=l[b+1>>0]|0;j=l[b>>0]|0;while(1){n=h;h=h+4|0;m=j;j=l[h>>0]|0;i[h>>0]=j-m;m=n+5|0;o=f;f=l[m>>0]|0;i[m>>0]=f-o;o=n+6|0;m=g;g=l[o>>0]|0;i[o>>0]=g-m;m=n+7|0;n=e;e=l[m>>0]|0;i[m>>0]=e-n;if((c|0)<=4)break;else c=c+-4|0}return}default:{c=d+-4|0;e=(d|0)>4;g=4-d|0;f=a;j=b+(a+-1)|0;while(1){switch(d|0){case 4:{p=j;q=14;break}case 3:{r=j;q=15;break}case 2:{s=j;q=16;break}case 1:{t=j;q=17;break}case 0:{u=j;break}default:if(e){a=j;b=c;while(1){h=a+d|0;i[h>>0]=(l[h>>0]|0)-(l[a>>0]|0);if((b|0)>1){a=a+-1|0;b=b+-1|0}else break}p=j+g|0;q=14}else{p=j;q=14}}if((q|0)==14){q=0;b=p+d|0;i[b>>0]=(l[b>>0]|0)-(l[p>>0]|0);r=p+-1|0;q=15}if((q|0)==15){q=0;b=r+d|0;i[b>>0]=(l[b>>0]|0)-(l[r>>0]|0);s=r+-1|0;q=16}if((q|0)==16){q=0;b=s+d|0;i[b>>0]=(l[b>>0]|0)-(l[s>>0]|0);t=s+-1|0;q=17}if((q|0)==17){q=0;b=t+d|0;i[b>>0]=(l[b>>0]|0)-(l[t>>0]|0);u=t+-1|0}f=f-d|0;if((f|0)<=0)break;else j=u}return}}}function Ri(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0,r=0;d=k[(k[a+576>>2]|0)+4>>2]|0;a=(c|0)/2|0;if((c|0)%(d<<1|0)|0)Ja(153208,152869,517,153227);if((a|0)<=(d|0))return;c=a-d|0;a=d+-4|0;e=(d|0)>4;f=4-d|0;g=c;h=b+(c+-1<<1)|0;while(1){switch(d|0){case 4:{i=h;l=9;break}case 3:{n=h;l=10;break}case 2:{o=h;l=11;break}case 1:{p=h;l=12;break}case 0:{q=h;break}default:if(e){c=a;b=h;while(1){r=b+(d<<1)|0;j[r>>1]=(m[r>>1]|0)-(m[b>>1]|0);if((c|0)>1){c=c+-1|0;b=b+-2|0}else break}i=h+(f<<1)|0;l=9}else{i=h;l=9}}if((l|0)==9){l=0;b=i+(d<<1)|0;j[b>>1]=(m[b>>1]|0)-(m[i>>1]|0);n=i+-2|0;l=10}if((l|0)==10){l=0;b=n+(d<<1)|0;j[b>>1]=(m[b>>1]|0)-(m[n>>1]|0);o=n+-2|0;l=11}if((l|0)==11){l=0;b=o+(d<<1)|0;j[b>>1]=(m[b>>1]|0)-(m[o>>1]|0);p=o+-2|0;l=12}if((l|0)==12){l=0;b=p+(d<<1)|0;j[b>>1]=(m[b>>1]|0)-(m[p>>1]|0);q=p+-2|0}g=g-d|0;if((g|0)<=0)break;else h=q}return}function Si(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;d=k[(k[a+576>>2]|0)+4>>2]|0;a=(c|0)/4|0;if((c|0)%(d<<2|0)|0)Ja(153179,152869,548,153198);if((a|0)<=(d|0))return;c=a-d|0;a=d+-4|0;e=(d|0)>4;f=4-d|0;g=c;h=b+(c+-1<<2)|0;while(1){switch(d|0){case 4:{i=h;j=9;break}case 3:{l=h;j=10;break}case 2:{m=h;j=11;break}case 1:{n=h;j=12;break}case 0:{o=h;break}default:if(e){c=a;b=h;while(1){p=b+(d<<2)|0;k[p>>2]=(k[p>>2]|0)-(k[b>>2]|0);if((c|0)>1){c=c+-1|0;b=b+-4|0}else break}i=h+(f<<2)|0;j=9}else{i=h;j=9}}if((j|0)==9){j=0;b=i+(d<<2)|0;k[b>>2]=(k[b>>2]|0)-(k[i>>2]|0);l=i+-4|0;j=10}if((j|0)==10){j=0;b=l+(d<<2)|0;k[b>>2]=(k[b>>2]|0)-(k[l>>2]|0);m=l+-4|0;j=11}if((j|0)==11){j=0;b=m+(d<<2)|0;k[b>>2]=(k[b>>2]|0)-(k[m>>2]|0);n=m+-4|0;j=12}if((j|0)==12){j=0;b=n+(d<<2)|0;k[b>>2]=(k[b>>2]|0)-(k[n>>2]|0);o=n+-4|0}g=g-d|0;if((g|0)<=0)break;else h=o}return}function Ti(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=k[a+576>>2]|0;if(!e)Ja(154187,152869,614,153138);f=k[e+24>>2]|0;if(!f)Ja(153015,152869,615,153138);g=e+12|0;if(!(k[g>>2]|0))Ja(153157,152869,616,153138);else{vb[f&127](a,b,c);return xb[k[g>>2]&63](a,b,c,d)|0}return 0}function Ui(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,l=0,m=0;e=r;r=r+16|0;f=e;g=k[a+576>>2]|0;if(!g)Ja(154187,152869,633,152995);h=g+24|0;if(!(k[h>>2]|0))Ja(153015,152869,634,152995);i=g+20|0;if(!(k[i>>2]|0))Ja(153039,152869,635,152995);j=me(c)|0;if(!j){l=k[a+628>>2]|0;k[f>>2]=c;vc(l,152995,153062,f);m=0;r=e;return m|0}wr(j|0,b|0,c|0)|0;b=k[g+8>>2]|0;if((b|0)<=0)Ja(153109,152869,653,152995);if((c|0)%(b|0)|0)Ja(153121,152869,654,152995);if((c|0)>0){g=j;f=c;while(1){vb[k[h>>2]&127](a,g,b);f=f-b|0;if((f|0)<=0)break;else g=g+b|0}}b=xb[k[i>>2]&63](a,j,c,d)|0;ne(j);m=b;r=e;return m|0}function Vi(a,b,c){a=a|0;b=b|0;c=c|0;Ri(a,b,c);Td(b,(c|0)/2|0);return}function Wi(a,b,c){a=a|0;b=b|0;c=c|0;Si(a,b,c);Vd(b,(c|0)/4|0);return}function Xi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;d=k[(k[a+576>>2]|0)+4>>2]|0;e=(m[a+84>>1]|0)>>>3;a=e&65535;f=(c>>>0)/(a>>>0)|0;g=me(c)|0;if((c>>>0)%((ha(a,d)|0)>>>0)|0)Ja(152967,152869,584,152988);if(!g)return;qe(g,b,c);if((f|0)>0){h=e<<16>>16==0;e=a+-1|0;j=0;do{if(!h){n=ha(j,a)|0;o=0;do{p=b+((ha(e-o|0,f)|0)+j)|0;i[p>>0]=i[g+(o+n)>>0]|0;o=o+1|0}while((o|0)!=(a|0))}j=j+1|0}while((j|0)<(f|0))}ne(g);if((d|0)>=(c|0))return;g=d+-4|0;f=(d|0)>4;j=4-d|0;a=c;e=b+(c+-1-d)|0;while(1){switch(d|0){case 4:{q=e;r=16;break}case 3:{s=e;r=17;break}case 2:{t=e;r=18;break}case 1:{u=e;r=19;break}case 0:{v=e;break}default:if(f){c=e;b=g;while(1){h=c+d|0;i[h>>0]=(l[h>>0]|0)-(l[c>>0]|0);if((b|0)>1){c=c+-1|0;b=b+-1|0}else break}q=e+j|0;r=16}else{q=e;r=16}}if((r|0)==16){r=0;b=q+d|0;i[b>>0]=(l[b>>0]|0)-(l[q>>0]|0);s=q+-1|0;r=17}if((r|0)==17){r=0;b=s+d|0;i[b>>0]=(l[b>>0]|0)-(l[s>>0]|0);t=s+-1|0;r=18}if((r|0)==18){r=0;b=t+d|0;i[b>>0]=(l[b>>0]|0)-(l[t>>0]|0);u=t+-1|0;r=19}if((r|0)==19){r=0;b=u+d|0;i[b>>0]=(l[b>>0]|0)-(l[u>>0]|0);v=u+-1|0}a=a-d|0;if((a|0)<=(d|0))break;else e=v}return}function Yi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=k[(k[a+576>>2]|0)+4>>2]|0;if((c|0)%(d|0)|0)Ja(153237,152869,273,153592);if((d|0)>=(c|0))return;switch(d|0){case 3:{if((c|0)<=3)return;a=c;e=l[b+2>>0]|0;f=l[b+1>>0]|0;g=b;h=l[b>>0]|0;do{j=g;g=g+3|0;a=a+-3|0;h=(l[g>>0]|0)+h|0;i[g>>0]=h;m=j+4|0;f=(l[m>>0]|0)+f|0;i[m>>0]=f;m=j+5|0;e=(l[m>>0]|0)+e|0;i[m>>0]=e}while((a|0)>3);return}case 4:{if((c|0)<=4)return;a=c;e=l[b+3>>0]|0;f=l[b+2>>0]|0;h=l[b+1>>0]|0;g=b;m=l[b>>0]|0;do{j=g;g=g+4|0;a=a+-4|0;m=(l[g>>0]|0)+m|0;i[g>>0]=m;n=j+5|0;h=(l[n>>0]|0)+h|0;i[n>>0]=h;n=j+6|0;f=(l[n>>0]|0)+f|0;i[n>>0]=f;n=j+7|0;e=(l[n>>0]|0)+e|0;i[n>>0]=e}while((a|0)>4);return}default:{a=d+-4|0;e=(d|0)>4;f=c-d|0;c=b;while(1){switch(d|0){case 0:{o=c;break}case 3:{p=c;q=17;break}case 2:{r=c;q=18;break}case 1:{s=c;q=19;break}default:{if(e){b=c;h=a;while(1){m=b+d|0;i[m>>0]=(l[b>>0]|0)+(l[m>>0]|0);if((h|0)>1){b=b+1|0;h=h+-1|0}else break}t=c+a|0}else t=c;h=t+d|0;i[h>>0]=(l[t>>0]|0)+(l[h>>0]|0);p=t+1|0;q=17}}if((q|0)==17){q=0;h=p+d|0;i[h>>0]=(l[p>>0]|0)+(l[h>>0]|0);r=p+1|0;q=18}if((q|0)==18){q=0;h=r+d|0;i[h>>0]=(l[r>>0]|0)+(l[h>>0]|0);s=r+1|0;q=19}if((q|0)==19){q=0;h=s+d|0;i[h>>0]=(l[s>>0]|0)+(l[h>>0]|0);o=s+1|0}f=f-d|0;if((f|0)<=0)break;else c=o}return}}}function Zi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0;d=k[(k[a+576>>2]|0)+4>>2]|0;a=(c|0)/2|0;if((c|0)%(d<<1|0)|0)Ja(153208,152869,334,153583);if((a|0)<=(d|0))return;c=d+-4|0;e=(d|0)>4;f=a-d|0;a=b;while(1){switch(d|0){case 4:{g=a;h=9;break}case 3:{i=a;h=10;break}case 2:{l=a;h=11;break}case 1:{n=a;h=12;break}case 0:{o=a;break}default:if(e){b=c;p=a;while(1){q=p+(d<<1)|0;j[q>>1]=(m[p>>1]|0)+(m[q>>1]|0);if((b|0)>1){b=b+-1|0;p=p+2|0}else break}g=a+(c<<1)|0;h=9}else{g=a;h=9}}if((h|0)==9){h=0;p=g+(d<<1)|0;j[p>>1]=(m[g>>1]|0)+(m[p>>1]|0);i=g+2|0;h=10}if((h|0)==10){h=0;p=i+(d<<1)|0;j[p>>1]=(m[i>>1]|0)+(m[p>>1]|0);l=i+2|0;h=11}if((h|0)==11){h=0;p=l+(d<<1)|0;j[p>>1]=(m[l>>1]|0)+(m[p>>1]|0);n=l+2|0;h=12}if((h|0)==12){h=0;p=n+(d<<1)|0;j[p>>1]=(m[n>>1]|0)+(m[p>>1]|0);o=n+2|0}f=f-d|0;if((f|0)<=0)break;else a=o}return}function _i(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;d=k[(k[a+576>>2]|0)+4>>2]|0;a=(c|0)/4|0;if((c|0)%(d<<2|0)|0)Ja(153179,152869,362,153574);if((a|0)<=(d|0))return;c=a-d|0;a=d+-4|0;e=(d|0)>4;if((d|0)==4){f=c;g=b;while(1){h=g+16|0;k[h>>2]=(k[h>>2]|0)+(k[g>>2]|0);h=g+20|0;k[h>>2]=(k[h>>2]|0)+(k[g+4>>2]|0);h=g+24|0;k[h>>2]=(k[h>>2]|0)+(k[g+8>>2]|0);h=g+28|0;k[h>>2]=(k[h>>2]|0)+(k[g+12>>2]|0);if((f|0)>4){f=f+-4|0;g=g+16|0}else break}return}else{i=c;j=b}while(1){switch(d|0){case 0:{l=j;break}case 3:{m=j;n=11;break}case 2:{o=j;n=12;break}case 1:{p=j;n=13;break}default:{if(e){b=a;c=j;while(1){g=c+(d<<2)|0;k[g>>2]=(k[g>>2]|0)+(k[c>>2]|0);if((b|0)>1){b=b+-1|0;c=c+4|0}else break}q=j+(a<<2)|0}else q=j;c=q+(d<<2)|0;k[c>>2]=(k[c>>2]|0)+(k[q>>2]|0);m=q+4|0;n=11}}if((n|0)==11){n=0;c=m+(d<<2)|0;k[c>>2]=(k[c>>2]|0)+(k[m>>2]|0);o=m+4|0;n=12}if((n|0)==12){n=0;c=o+(d<<2)|0;k[c>>2]=(k[c>>2]|0)+(k[o>>2]|0);p=o+4|0;n=13}if((n|0)==13){n=0;c=p+(d<<2)|0;k[c>>2]=(k[c>>2]|0)+(k[p>>2]|0);l=p+4|0}i=i-d|0;if((i|0)<=0)break;else j=l}return}function $i(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;e=k[a+576>>2]|0;if(!e)Ja(154187,152869,421,153533);f=k[e+28>>2]|0;if(!f)Ja(153552,152869,422,153533);g=e+40|0;if(!(k[g>>2]|0))Ja(153509,152869,423,153533);if(!(xb[f&63](a,b,c,d)|0)){h=0;return h|0}vb[k[g>>2]&127](a,b,c);h=1;return h|0}function aj(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;e=k[a+576>>2]|0;if(!e)Ja(154187,152869,444,153448);f=k[e+36>>2]|0;if(!f)Ja(153468,152869,445,153448);if(!(xb[f&63](a,b,c,d)|0)){g=0;return g|0}d=k[e+8>>2]|0;if((d|0)<=0)Ja(153109,152869,449,153448);if((c|0)%(d|0)|0)Ja(153491,152869,450,153448);f=e+40|0;e=k[f>>2]|0;if(!e)Ja(153509,152869,451,153448);if((c|0)<=0){g=1;return g|0}vb[e&127](a,b,d);e=c-d|0;if((e|0)>0){h=b;i=e}else{g=1;return g|0}do{h=h+d|0;vb[k[f>>2]&127](a,h,d);i=i-d|0}while((i|0)>0);g=1;return g|0}function bj(a,b,c){a=a|0;b=b|0;c=c|0;Td(b,(c|0)/2|0);Zi(a,b,c);return}function cj(a,b,c){a=a|0;b=b|0;c=c|0;Vd(b,(c|0)/4|0);_i(a,b,c);return}function dj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;d=k[(k[a+576>>2]|0)+4>>2]|0;e=(m[a+84>>1]|0)>>>3;a=e&65535;f=(c>>>0)/(a>>>0)|0;g=me(c)|0;if((c>>>0)%((ha(a,d)|0)>>>0)|0)Ja(152967,152869,386,153442);if(!g)return;a:do if((d|0)<(c|0)){h=d+-4|0;j=(d|0)>4;n=c;o=b;while(1){switch(d|0){case 4:{p=o;q=10;break}case 3:{r=o;q=11;break}case 2:{s=o;q=12;break}case 1:{t=o;q=13;break}case 0:{u=o;break}default:if(j){v=o;w=h;while(1){x=v+d|0;i[x>>0]=(l[v>>0]|0)+(l[x>>0]|0);if((w|0)>1){v=v+1|0;w=w+-1|0}else break}p=o+h|0;q=10}else{p=o;q=10}}if((q|0)==10){q=0;w=p+d|0;i[w>>0]=(l[p>>0]|0)+(l[w>>0]|0);r=p+1|0;q=11}if((q|0)==11){q=0;w=r+d|0;i[w>>0]=(l[r>>0]|0)+(l[w>>0]|0);s=r+1|0;q=12}if((q|0)==12){q=0;w=s+d|0;i[w>>0]=(l[s>>0]|0)+(l[w>>0]|0);t=s+1|0;q=13}if((q|0)==13){q=0;w=t+d|0;i[w>>0]=(l[t>>0]|0)+(l[w>>0]|0);u=t+1|0}n=n-d|0;if((n|0)<=(d|0))break a;else o=u}}while(0);qe(g,b,c);if((f|0)>0){c=e<<16>>16==0;e=a+-1|0;u=0;do{if(!c){d=ha(u,a)|0;t=0;do{q=g+((ha(e-t|0,f)|0)+u)|0;i[b+(t+d)>>0]=i[q>>0]|0;t=t+1|0}while((t|0)!=(a|0))}u=u+1|0}while((u|0)<(f|0))}ne(g);return}function ej(a,b){a=a|0;b=b|0;k[a+508>>2]=41;k[a+532>>2]=50;k[a+540>>2]=50;return 1}function fj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=r;r=r+16|0;c=b;d=j[a+84>>1]|0;if(d<<16>>16==4){e=1;r=b;return e|0}f=k[a+628>>2]|0;k[c>>2]=d&65535;vc(f,153902,153921,c);e=0;r=b;return e|0}function gj(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,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+32|0;e=d+8|0;f=a+580|0;if((c|0)%(k[f>>2]|0)|0){vc(k[a+628>>2]|0,153776,153793,d);g=0;r=d;return g|0}if((c|0)<=0){g=1;r=d;return g|0}h=a+56|0;j=a+604|0;m=a+608|0;n=c;c=k[m>>2]|0;o=k[j>>2]|0;p=b;while(1){b=k[h>>2]|0;q=(b|0)>0;a:do if(q&(c|0)>0){s=p;t=o;u=c;v=0;w=0;while(1){x=t+1|0;y=l[t>>0]|0;z=u+-1|0;b:do switch(y&192|0){case 0:{if(!(w&1)){A=s;B=v<<4|v;C=y;D=w}else{E=l[s>>0]|0|v;i[s>>0]=E;A=s+1|0;B=E&255;C=y+-1|0;D=w+1|0}E=C+D|0;if((C|0)>0&(E|0)<(b|0)){F=(C+2+((C|0)<2?~C:-3)|0)>>>1;G=F+1|0;qr(A|0,B&255|0,G|0)|0;H=A+G|0;I=C+-2-(F<<1)|0}else{H=A;I=C}if((I|0)==-1){F=H+-1|0;i[F>>0]=(l[F>>0]|0)&240;J=F}else J=H;K=J;L=B&15;M=E;break}case 64:{E=y>>>4&3;do if((E|0)!=2){F=(k[109904+(E<<2)>>2]|0)+v&15;G=w+1|0;if(!(w&1)){i[s>>0]=F<<4;N=s;O=F;P=G;break}else{i[s>>0]=l[s>>0]|0|F;N=s+1|0;O=F;P=G;break}}else{N=s;O=v;P=w}while(0);E=y>>>2&3;do if((E|0)!=2){G=(k[109904+(E<<2)>>2]|0)+O&15;if((P|0)<(b|0)){F=P+1|0;if(!(P&1)){i[N>>0]=G<<4;Q=N;R=G;S=F;break}else{i[N>>0]=l[N>>0]|0|G;Q=N+1|0;R=G;S=F;break}}else{Q=N;R=G;S=P}}else{Q=N;R=O;S=P}while(0);E=y&3;if((E|0)!=2){G=(k[109904+(E<<2)>>2]|0)+R&15;if((S|0)<(b|0)){E=S+1|0;if(!(S&1)){i[Q>>0]=G<<4;K=Q;L=G;M=E;break b}else{i[Q>>0]=l[Q>>0]|0|G;K=Q+1|0;L=G;M=E;break b}}else{K=Q;L=G;M=S}}else{K=Q;L=R;M=S}break}case 128:{G=y>>>3&7;do if((G|0)!=4){E=(k[109920+(G<<2)>>2]|0)+v&15;F=w+1|0;if(!(w&1)){i[s>>0]=E<<4;T=s;U=E;V=F;break}else{i[s>>0]=l[s>>0]|0|E;T=s+1|0;U=E;V=F;break}}else{T=s;U=v;V=w}while(0);G=y&7;if((G|0)!=4){F=(k[109920+(G<<2)>>2]|0)+U&15;if((V|0)<(b|0)){G=V+1|0;if(!(V&1)){i[T>>0]=F<<4;K=T;L=F;M=G;break b}else{i[T>>0]=l[T>>0]|0|F;K=T+1|0;L=F;M=G;break b}}else{K=T;L=F;M=V}}else{K=T;L=U;M=V}break}case 192:{F=y&15;G=w+1|0;if(!(w&1)){i[s>>0]=y<<4;K=s;L=F;M=G;break b}else{i[s>>0]=l[s>>0]|0|F;K=s+1|0;L=F;M=G;break b}break}default:{K=s;L=v;M=w}}while(0);y=(M|0)<(b|0);if((u|0)>1&y){s=K;t=x;u=z;v=L;w=M}else{W=y;X=x;Y=z;Z=M;break a}}}else{W=q;X=o;Y=c;Z=0}while(0);k[j>>2]=X;k[m>>2]=Y;if((Z|0)!=(b|0)){_=b;$=W;aa=Z;break}q=k[f>>2]|0;n=n-q|0;if((n|0)<=0){g=1;ba=45;break}else{c=Y;o=X;p=p+q|0}}if((ba|0)==45){r=d;return g|0}ba=k[a+628>>2]|0;p=k[a+444>>2]|0;k[e>>2]=$?153829:153840;k[e+4>>2]=p;p=e+8|0;k[p>>2]=aa;k[p+4>>2]=((aa|0)<0)<<31>>31;aa=e+16|0;k[aa>>2]=_;k[aa+4>>2]=((_|0)<0)<<31>>31;vc(ba,153849,153863,e);g=0;r=d;return g|0}function hj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=r;r=r+16|0;d=c+8|0;e=c;a:do if((b|0)<32946){switch(b|0){case 8:{break a;break}default:{}}Ja(154001,154074,402,154084)}else{switch(b|0){case 32946:{break a;break}default:{}}Ja(154001,154074,402,154084)}while(0);if(!(_b(a,109952,1)|0)){vc(k[a+628>>2]|0,154084,154096,e);f=0;r=c;return f|0}e=me(136)|0;k[a+576>>2]=e;if(!e){vc(k[a+628>>2]|0,154084,154139,d);f=0;r=c;return f|0}else{d=e+96|0;b=a+672|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;k[e+128>>2]=k[b>>2];k[b>>2]=27;b=a+668|0;k[e+132>>2]=k[b>>2];k[b>>2]=28;k[e+120>>2]=-1;k[e+124>>2]=0;k[a+504>>2]=42;k[a+508>>2]=43;k[a+512>>2]=40;k[a+532>>2]=51;k[a+540>>2]=51;k[a+548>>2]=51;k[a+516>>2]=44;k[a+524>>2]=41;k[a+528>>2]=45;k[a+536>>2]=52;k[a+544>>2]=52;k[a+552>>2]=52;k[a+564>>2]=29;Ii(a)|0;f=1;r=c;return f|0}return 0}function ij(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=k[a+576>>2]|0;if((b|0)==65557){e=k[d+120>>2]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[g>>2]=e;h=1;return h|0}else{h=nb[k[d+128>>2]&63](a,b,c)|0;return h|0}return 0}function jj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=r;r=r+16|0;e=d;f=k[a+576>>2]|0;if((b|0)!=65557){g=nb[k[f+132>>2]&63](a,b,c)|0;r=d;return g|0}b=(k[c>>2]|0)+(4-1)&~(4-1);h=k[b>>2]|0;k[c>>2]=b+4;k[f+120>>2]=h;if(!(k[f+124>>2]&2)){g=1;r=d;return g|0}if(!(xj(f+64|0,h,0)|0)){g=1;r=d;return g|0}h=k[a+628>>2]|0;a=k[f+88>>2]|0;k[e>>2]=(a|0)==0?155687:a;vc(h,154479,154272,e);g=0;r=d;return g|0}function kj(a){a=a|0;return 1}function lj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=r;r=r+16|0;c=b;d=k[a+576>>2]|0;if(!d)Ja(154187,154074,102,154464);e=d+124|0;f=d+64|0;if(k[e>>2]&2){vj(f)|0;k[e>>2]=0}if(!(Fj(f,154315,56)|0)){k[e>>2]=k[e>>2]|1;g=1;r=b;return g|0}else{e=k[a+628>>2]|0;a=k[d+88>>2]|0;k[c>>2]=(a|0)==0?155687:a;vc(e,154464,154321,c);g=0;r=b;return g|0}return 0}function mj(a,b){a=a|0;b=b|0;var c=0;b=k[a+576>>2]|0;if(!b)Ja(154187,154074,129,154451);if(!(k[b+124>>2]&1))ub[k[a+508>>2]&63](a)|0;c=b+64|0;k[c>>2]=k[a+588>>2];k[b+68>>2]=k[a+608>>2];return (Ej(c)|0)==0|0}function nj(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,l=0,m=0,n=0,o=0,p=0,q=0;d=r;r=r+32|0;e=d+16|0;f=d+8|0;g=d;h=k[a+576>>2]|0;if(!h)Ja(154187,154074,155,154324);if((k[h+124>>2]|0)!=1)Ja(154334,154074,156,154324);i=a+604|0;j=h+64|0;k[j>>2]=k[i>>2];l=a+608|0;m=h+68|0;k[m>>2]=k[l>>2];k[h+76>>2]=b;b=h+80|0;k[b>>2]=c;c=a+628|0;n=a+444|0;a=h+88|0;a:do switch(Gj(j,1)|0){case 1:{o=10;break a;break}case -3:{h=k[c>>2]|0;p=k[a>>2]|0;k[g>>2]=k[n>>2];k[g+4>>2]=(p|0)==0?155687:p;vc(h,154324,154366,g);if(Ij(j)|0){q=0;o=13;break a}break}case 0:break;default:{o=8;break a}}while((k[b>>2]|0)!=0);if((o|0)==8){g=k[c>>2]|0;h=k[a>>2]|0;k[f>>2]=(h|0)==0?155687:h;vc(g,154324,154272,f);q=0;r=d;return q|0}else if((o|0)==10){f=k[b>>2]|0;if(f){b=k[c>>2]|0;k[e>>2]=k[n>>2];k[e+4>>2]=f;vc(b,154324,154401,e);q=0;r=d;return q|0}}else if((o|0)==13){r=d;return q|0}k[i>>2]=k[j>>2];k[l>>2]=k[m>>2];q=1;r=d;return q|0}function oj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=r;r=r+16|0;c=b;d=k[a+576>>2]|0;if(!d)Ja(154187,154074,209,154300);e=d+124|0;f=d+64|0;if(k[e>>2]&1){Hj(f)|0;k[e>>2]=0}if(!(tj(f,k[d+120>>2]|0,154315,56)|0)){k[e>>2]=k[e>>2]|2;g=1;r=b;return g|0}else{e=k[a+628>>2]|0;a=k[d+88>>2]|0;k[c>>2]=(a|0)==0?155687:a;vc(e,154300,154321,c);g=0;r=b;return g|0}return 0}function pj(a,b){a=a|0;b=b|0;b=k[a+576>>2]|0;if(!b)Ja(154187,154074,234,154287);if((k[b+124>>2]|0)!=2)ub[k[a+516>>2]&63](a)|0;k[b+76>>2]=k[a+588>>2];k[b+80>>2]=k[a+592>>2];return (wj(b+64|0)|0)==0|0}function qj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;b=r;r=r+16|0;c=b;d=k[a+576>>2]|0;e=d+64|0;k[d+68>>2]=0;f=d+80|0;g=a+592|0;h=a+608|0;i=a+588|0;j=d+76|0;while(1){l=yj(e,4)|0;if(l>>>0>=2)break;m=k[f>>2]|0;n=k[g>>2]|0;if((n|0)!=(m|0)){k[h>>2]=n-m;je(a)|0;k[j>>2]=k[i>>2];k[f>>2]=k[g>>2]}if((l|0)==1){o=1;p=7;break}}if((p|0)==7){r=b;return o|0}p=k[a+628>>2]|0;a=k[d+88>>2]|0;k[c>>2]=(a|0)==0?155687:a;vc(p,154258,154272,c);o=0;r=b;return o|0}function rj(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,l=0,m=0,n=0;d=r;r=r+16|0;e=d;f=k[a+576>>2]|0;if(!f)Ja(154187,154074,261,154198);if((k[f+124>>2]|0)!=2)Ja(154208,154074,262,154198);g=f+64|0;k[g>>2]=b;b=f+68|0;k[b>>2]=c;c=f+80|0;h=a+592|0;i=a+608|0;j=a+588|0;l=f+76|0;while(1){if(yj(g,0)|0)break;if(!(k[c>>2]|0)){k[i>>2]=k[h>>2];je(a)|0;k[l>>2]=k[j>>2];k[c>>2]=k[h>>2]}if(!(k[b>>2]|0)){m=1;n=11;break}}if((n|0)==11){r=d;return m|0}n=k[a+628>>2]|0;a=k[f+88>>2]|0;k[e>>2]=(a|0)==0?155687:a;vc(n,154198,154240,e);m=0;r=d;return m|0}function sj(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+576|0;c=k[b>>2]|0;if(!c)Ja(154168,154074,332,154176);Ji(a)|0;k[a+672>>2]=k[c+128>>2];k[a+668>>2]=k[c+132>>2];d=c+124|0;e=k[d>>2]|0;if(!(e&2)){if(e&1){Hj(c+64|0)|0;k[d>>2]=0}}else{vj(c+64|0)|0;k[d>>2]=0}ne(c);k[b>>2]=0;Ve(a);return}function tj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uj(a,b,8,15,8,0,c,d)|0}function uj(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;var j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;if(!g){j=-6;return j|0}if((h|0)!=56|(i[g>>0]|0)!=49){j=-6;return j|0}if(!a){j=-2;return j|0}g=a+24|0;k[g>>2]=0;h=a+32|0;l=k[h>>2]|0;if(!l){k[h>>2]=29;k[a+40>>2]=0;m=29}else m=l;l=a+36|0;if(!(k[l>>2]|0))k[l>>2]=6;n=(b|0)==-1?6:b;if((d|0)<0){o=0-d|0;p=0}else{b=(d|0)>15;o=b?d+-16|0:d;p=b?2:1}if(f>>>0>4|(n>>>0>9|((c|0)!=8|(e+-1|0)>>>0>8|(o&-8|0)!=8))){j=-2;return j|0}c=(o|0)==8?9:o;o=a+40|0;b=nb[m&63](k[o>>2]|0,1,5828)|0;if(!b){j=-4;return j|0}m=a+28|0;k[m>>2]=b;k[b>>2]=a;k[b+24>>2]=p;k[b+28>>2]=0;k[b+48>>2]=c;p=1<<c;c=b+44|0;k[c>>2]=p;k[b+52>>2]=p+-1;d=e+7|0;k[b+80>>2]=d;q=1<<d;d=b+76|0;k[d>>2]=q;k[b+84>>2]=q+-1;k[b+88>>2]=((e+9|0)>>>0)/3|0;q=nb[k[h>>2]&63](k[o>>2]|0,p,2)|0;p=b+56|0;k[p>>2]=q;q=nb[k[h>>2]&63](k[o>>2]|0,k[c>>2]|0,2)|0;c=b+64|0;k[c>>2]=q;q=nb[k[h>>2]&63](k[o>>2]|0,k[d>>2]|0,2)|0;d=b+68|0;k[d>>2]=q;k[b+5824>>2]=0;q=1<<e+6;e=b+5788|0;k[e>>2]=q;r=nb[k[h>>2]&63](k[o>>2]|0,q,4)|0;k[b+8>>2]=r;q=k[e>>2]|0;k[b+12>>2]=q<<2;if(((k[p>>2]|0)!=0?(k[c>>2]|0)!=0:0)?!((k[d>>2]|0)==0|(r|0)==0):0){k[b+5796>>2]=r+(q>>>1<<1);k[b+5784>>2]=r+(q*3|0);k[b+132>>2]=n;k[b+136>>2]=f;i[b+36>>0]=8;j=wj(a)|0;return j|0}k[b+4>>2]=666;k[g>>2]=k[27685];g=k[m>>2]|0;if(!g){j=-4;return j|0}switch(k[g+4>>2]|0){case 42:case 69:case 73:case 91:case 103:case 113:case 666:break;default:{j=-4;return j|0}}b=k[g+8>>2]|0;if(!b)s=g;else{rb[k[l>>2]&31](k[o>>2]|0,b);s=k[m>>2]|0}b=k[s+68>>2]|0;if(!b)t=s;else{rb[k[l>>2]&31](k[o>>2]|0,b);t=k[m>>2]|0}b=k[t+64>>2]|0;if(!b)u=t;else{rb[k[l>>2]&31](k[o>>2]|0,b);u=k[m>>2]|0}b=k[u+56>>2]|0;if(!b)v=u;else{rb[k[l>>2]&31](k[o>>2]|0,b);v=k[m>>2]|0}rb[k[l>>2]&31](k[o>>2]|0,v);k[m>>2]=0;j=-4;return j|0}function vj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;if(!a){b=-2;return b|0}c=a+28|0;d=k[c>>2]|0;if(!d){b=-2;return b|0}e=k[d+4>>2]|0;switch(e|0){case 42:case 69:case 73:case 91:case 103:case 113:case 666:break;default:{b=-2;return b|0}}f=k[d+8>>2]|0;if(!f)g=d;else{rb[k[a+36>>2]&31](k[a+40>>2]|0,f);g=k[c>>2]|0}f=k[g+68>>2]|0;if(!f)h=g;else{rb[k[a+36>>2]&31](k[a+40>>2]|0,f);h=k[c>>2]|0}f=k[h+64>>2]|0;if(!f)i=h;else{rb[k[a+36>>2]&31](k[a+40>>2]|0,f);i=k[c>>2]|0}f=k[i+56>>2]|0;if(!f){j=a+40|0;l=a+36|0;m=i}else{i=a+36|0;h=a+40|0;rb[k[i>>2]&31](k[h>>2]|0,f);j=h;l=i;m=k[c>>2]|0}rb[k[l>>2]&31](k[j>>2]|0,m);k[c>>2]=0;b=(e|0)==113?-3:0;return b|0}function wj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;if(!a){b=-2;return b|0}c=a+28|0;d=k[c>>2]|0;if(!d){b=-2;return b|0}if(!(k[a+32>>2]|0)){b=-2;return b|0}if(!(k[a+36>>2]|0)){b=-2;return b|0}k[a+20>>2]=0;k[a+8>>2]=0;k[a+24>>2]=0;k[a+44>>2]=2;k[d+20>>2]=0;k[d+16>>2]=k[d+8>>2];e=d+24|0;f=k[e>>2]|0;if((f|0)<0){g=0-f|0;k[e>>2]=g;h=g}else h=f;k[d+4>>2]=(h|0)!=0?42:113;if((h|0)==2)i=Xj(0,0,0)|0;else i=Wj(0,0,0)|0;k[a+48>>2]=i;k[d+40>>2]=0;Lj(d);d=k[c>>2]|0;k[d+60>>2]=k[d+44>>2]<<1;c=k[d+76>>2]|0;i=k[d+68>>2]|0;j[i+(c+-1<<1)>>1]=0;qr(i|0,0,(c<<1)+-2|0)|0;c=k[d+132>>2]|0;k[d+128>>2]=m[109988+(c*12|0)+2>>1];k[d+140>>2]=m[109988+(c*12|0)>>1];k[d+144>>2]=m[109988+(c*12|0)+4>>1];k[d+124>>2]=m[109988+(c*12|0)+6>>1];k[d+108>>2]=0;k[d+92>>2]=0;k[d+116>>2]=0;k[d+5812>>2]=0;k[d+120>>2]=2;k[d+96>>2]=2;k[d+104>>2]=0;k[d+72>>2]=0;b=0;return b|0}function xj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;if(!a){d=-2;return d|0}e=k[a+28>>2]|0;if(!e){d=-2;return d|0}f=(b|0)==-1?6:b;if(c>>>0>4|f>>>0>9){d=-2;return d|0}b=e+132|0;g=e+136|0;if((k[g>>2]|0)==(c|0)?(k[109988+((k[b>>2]|0)*12|0)+8>>2]|0)==(k[109988+(f*12|0)+8>>2]|0):0)h=0;else if(k[a+8>>2]|0){i=yj(a,5)|0;if((i|0)==-5)h=(k[e+20>>2]|0)==0?0:-5;else h=i}else h=0;if((k[b>>2]|0)!=(f|0)){k[b>>2]=f;k[e+128>>2]=m[109988+(f*12|0)+2>>1];k[e+140>>2]=m[109988+(f*12|0)>>1];k[e+144>>2]=m[109988+(f*12|0)+4>>1];k[e+124>>2]=m[109988+(f*12|0)+6>>1]}k[g>>2]=c;d=h;return d|0}function yj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,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;if(!a){c=-2;return c|0}d=a+28|0;e=k[d>>2]|0;if(b>>>0>5|(e|0)==0){c=-2;return c|0}f=a+12|0;do if(k[f>>2]|0){if((k[a>>2]|0)==0?(k[a+4>>2]|0)!=0:0)break;g=e+4|0;h=k[g>>2]|0;m=(b|0)!=4;if(!(m&(h|0)==666)){n=a+16|0;if(!(k[n>>2]|0)){k[a+24>>2]=k[27686];c=-5;return c|0}k[e>>2]=a;o=e+40|0;p=k[o>>2]|0;k[o>>2]=b;do if((h|0)==42){if((k[e+24>>2]|0)!=2){q=(k[e+48>>2]<<12)+-30720|0;if((k[e+136>>2]|0)<=1?(r=k[e+132>>2]|0,(r|0)>=2):0)if((r|0)<6)s=64;else s=(r|0)==6?128:192;else s=0;r=s|q;q=e+108|0;t=(k[q>>2]|0)==0?r:r|32;k[g>>2]=113;r=e+20|0;u=k[r>>2]|0;k[r>>2]=u+1;v=e+8|0;i[(k[v>>2]|0)+u>>0]=t>>>8;u=k[r>>2]|0;k[r>>2]=u+1;i[(k[v>>2]|0)+u>>0]=(t|((t>>>0)%31|0))^31;t=a+48|0;if(k[q>>2]|0){q=k[t>>2]|0;u=k[r>>2]|0;k[r>>2]=u+1;i[(k[v>>2]|0)+u>>0]=q>>>24;u=k[r>>2]|0;k[r>>2]=u+1;i[(k[v>>2]|0)+u>>0]=q>>>16;q=k[t>>2]|0;u=k[r>>2]|0;k[r>>2]=u+1;i[(k[v>>2]|0)+u>>0]=q>>>8;u=k[r>>2]|0;k[r>>2]=u+1;i[(k[v>>2]|0)+u>>0]=q}q=Wj(0,0,0)|0;k[t>>2]=q;w=k[g>>2]|0;x=30;break}q=Xj(0,0,0)|0;t=a+48|0;k[t>>2]=q;q=e+20|0;u=k[q>>2]|0;k[q>>2]=u+1;v=e+8|0;i[(k[v>>2]|0)+u>>0]=31;u=k[q>>2]|0;k[q>>2]=u+1;i[(k[v>>2]|0)+u>>0]=-117;u=k[q>>2]|0;k[q>>2]=u+1;i[(k[v>>2]|0)+u>>0]=8;u=e+28|0;r=k[u>>2]|0;if(!r){y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=0;y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=0;y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=0;y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=0;y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=0;y=k[e+132>>2]|0;if((y|0)==9)z=2;else z=((y|0)<2?1:(k[e+136>>2]|0)>1)?4:0;y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=z;y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=3;k[g>>2]=113;break}y=(((k[r+44>>2]|0)!=0?2:0)|(k[r>>2]|0)!=0|((k[r+16>>2]|0)==0?0:4)|((k[r+28>>2]|0)==0?0:8)|((k[r+36>>2]|0)==0?0:16))&255;r=k[q>>2]|0;k[q>>2]=r+1;i[(k[v>>2]|0)+r>>0]=y;y=k[(k[u>>2]|0)+4>>2]&255;r=k[q>>2]|0;k[q>>2]=r+1;i[(k[v>>2]|0)+r>>0]=y;y=(k[(k[u>>2]|0)+4>>2]|0)>>>8&255;r=k[q>>2]|0;k[q>>2]=r+1;i[(k[v>>2]|0)+r>>0]=y;y=(k[(k[u>>2]|0)+4>>2]|0)>>>16&255;r=k[q>>2]|0;k[q>>2]=r+1;i[(k[v>>2]|0)+r>>0]=y;y=(k[(k[u>>2]|0)+4>>2]|0)>>>24&255;r=k[q>>2]|0;k[q>>2]=r+1;i[(k[v>>2]|0)+r>>0]=y;y=k[e+132>>2]|0;if((y|0)==9)A=2;else A=((y|0)<2?1:(k[e+136>>2]|0)>1)?4:0;y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=A;y=k[(k[u>>2]|0)+12>>2]&255;r=k[q>>2]|0;k[q>>2]=r+1;i[(k[v>>2]|0)+r>>0]=y;y=k[u>>2]|0;if(!(k[y+16>>2]|0))B=y;else{r=k[y+20>>2]&255;y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=r;r=(k[(k[u>>2]|0)+20>>2]|0)>>>8&255;y=k[q>>2]|0;k[q>>2]=y+1;i[(k[v>>2]|0)+y>>0]=r;B=k[u>>2]|0}if(k[B+44>>2]|0){r=Xj(k[t>>2]|0,k[v>>2]|0,k[q>>2]|0)|0;k[t>>2]=r}k[e+32>>2]=0;k[g>>2]=69;C=u;x=32}else{w=h;x=30}while(0);if((x|0)==30)if((w|0)==69){C=e+28|0;x=32}else{D=w;x=53}do if((x|0)==32){h=k[C>>2]|0;if(!(k[h+16>>2]|0)){k[g>>2]=73;E=C;F=h;x=55;break}u=e+20|0;r=k[u>>2]|0;t=e+32|0;q=k[t>>2]|0;a:do if(q>>>0<(k[h+20>>2]&65535)>>>0){v=e+12|0;y=a+48|0;G=e+8|0;H=a+20|0;I=q;J=r;K=h;L=r;while(1){if((J|0)==(k[v>>2]|0)){if(J>>>0>L>>>0&(k[K+44>>2]|0)!=0){M=Xj(k[y>>2]|0,(k[G>>2]|0)+L|0,J-L|0)|0;k[y>>2]=M}M=k[d>>2]|0;Nj(M);N=M+20|0;O=k[N>>2]|0;P=k[n>>2]|0;Q=O>>>0>P>>>0?P:O;if((Q|0)!=0?(O=M+16|0,wr(k[f>>2]|0,k[O>>2]|0,Q|0)|0,k[f>>2]=(k[f>>2]|0)+Q,k[O>>2]=(k[O>>2]|0)+Q,k[H>>2]=(k[H>>2]|0)+Q,k[n>>2]=(k[n>>2]|0)-Q,P=k[N>>2]|0,k[N>>2]=P-Q,(P|0)==(Q|0)):0)k[O>>2]=k[M+8>>2];M=k[u>>2]|0;if((M|0)==(k[v>>2]|0)){R=M;break}S=k[C>>2]|0;T=k[t>>2]|0;U=M;V=M}else{S=K;T=I;U=J;V=L}M=i[(k[S+16>>2]|0)+T>>0]|0;k[u>>2]=U+1;i[(k[G>>2]|0)+U>>0]=M;M=(k[t>>2]|0)+1|0;k[t>>2]=M;O=k[C>>2]|0;if(M>>>0>=(k[O+20>>2]&65535)>>>0){W=O;X=V;break a}I=M;J=k[u>>2]|0;K=O;L=V}W=k[C>>2]|0;X=R}else{W=h;X=r}while(0);if((k[W+44>>2]|0)!=0?(r=k[u>>2]|0,r>>>0>X>>>0):0){h=a+48|0;q=Xj(k[h>>2]|0,(k[e+8>>2]|0)+X|0,r-X|0)|0;k[h>>2]=q;Y=k[C>>2]|0}else Y=W;if((k[t>>2]|0)==(k[Y+20>>2]|0)){k[t>>2]=0;k[g>>2]=73;E=C;F=Y;x=55;break}else{D=k[g>>2]|0;x=53;break}}while(0);if((x|0)==53)if((D|0)==73){q=e+28|0;E=q;F=k[q>>2]|0;x=55}else{Z=D;x=73}do if((x|0)==55){if(!(k[F+28>>2]|0)){k[g>>2]=91;_=E;x=75;break}q=e+20|0;h=k[q>>2]|0;r=e+12|0;L=a+48|0;K=e+8|0;J=a+20|0;I=e+32|0;G=h;v=h;while(1){if((G|0)==(k[r>>2]|0)){if(G>>>0>v>>>0?(k[(k[E>>2]|0)+44>>2]|0)!=0:0){h=Xj(k[L>>2]|0,(k[K>>2]|0)+v|0,G-v|0)|0;k[L>>2]=h}h=k[d>>2]|0;Nj(h);H=h+20|0;y=k[H>>2]|0;O=k[n>>2]|0;M=y>>>0>O>>>0?O:y;if((M|0)!=0?(y=h+16|0,wr(k[f>>2]|0,k[y>>2]|0,M|0)|0,k[f>>2]=(k[f>>2]|0)+M,k[y>>2]=(k[y>>2]|0)+M,k[J>>2]=(k[J>>2]|0)+M,k[n>>2]=(k[n>>2]|0)-M,O=k[H>>2]|0,k[H>>2]=O-M,(O|0)==(M|0)):0)k[y>>2]=k[h+8>>2];h=k[q>>2]|0;if((h|0)==(k[r>>2]|0)){$=h;aa=1;break}else{ba=h;ca=h}}else{ba=G;ca=v}h=k[I>>2]|0;k[I>>2]=h+1;y=i[(k[(k[E>>2]|0)+28>>2]|0)+h>>0]|0;k[q>>2]=ba+1;i[(k[K>>2]|0)+ba>>0]=y;if(!(y<<24>>24)){$=ca;aa=y&255;break}G=k[q>>2]|0;v=ca}if((k[(k[E>>2]|0)+44>>2]|0)!=0?(v=k[q>>2]|0,v>>>0>$>>>0):0){G=Xj(k[L>>2]|0,(k[K>>2]|0)+$|0,v-$|0)|0;k[L>>2]=G}if(!aa){k[I>>2]=0;k[g>>2]=91;_=E;x=75;break}else{Z=k[g>>2]|0;x=73;break}}while(0);if((x|0)==73)if((Z|0)==91){_=e+28|0;x=75}else{da=Z;x=93}do if((x|0)==75){if(!(k[(k[_>>2]|0)+36>>2]|0)){k[g>>2]=103;ea=_;x=95;break}G=e+20|0;v=k[G>>2]|0;r=e+12|0;J=a+48|0;t=e+8|0;u=a+20|0;y=e+32|0;h=v;M=v;while(1){if((h|0)==(k[r>>2]|0)){if(h>>>0>M>>>0?(k[(k[_>>2]|0)+44>>2]|0)!=0:0){v=Xj(k[J>>2]|0,(k[t>>2]|0)+M|0,h-M|0)|0;k[J>>2]=v}v=k[d>>2]|0;Nj(v);O=v+20|0;H=k[O>>2]|0;Q=k[n>>2]|0;P=H>>>0>Q>>>0?Q:H;if((P|0)!=0?(H=v+16|0,wr(k[f>>2]|0,k[H>>2]|0,P|0)|0,k[f>>2]=(k[f>>2]|0)+P,k[H>>2]=(k[H>>2]|0)+P,k[u>>2]=(k[u>>2]|0)+P,k[n>>2]=(k[n>>2]|0)-P,Q=k[O>>2]|0,k[O>>2]=Q-P,(Q|0)==(P|0)):0)k[H>>2]=k[v+8>>2];v=k[G>>2]|0;if((v|0)==(k[r>>2]|0)){fa=v;ga=1;break}else{ha=v;ia=v}}else{ha=h;ia=M}v=k[y>>2]|0;k[y>>2]=v+1;H=i[(k[(k[_>>2]|0)+36>>2]|0)+v>>0]|0;k[G>>2]=ha+1;i[(k[t>>2]|0)+ha>>0]=H;if(!(H<<24>>24)){fa=ia;ga=H&255;break}h=k[G>>2]|0;M=ia}if((k[(k[_>>2]|0)+44>>2]|0)!=0?(M=k[G>>2]|0,M>>>0>fa>>>0):0){h=Xj(k[J>>2]|0,(k[t>>2]|0)+fa|0,M-fa|0)|0;k[J>>2]=h}if(!ga){k[g>>2]=103;ea=_;x=95;break}else{da=k[g>>2]|0;x=93;break}}while(0);if((x|0)==93?(da|0)==103:0){ea=e+28|0;x=95}do if((x|0)==95){if(!(k[(k[ea>>2]|0)+44>>2]|0)){k[g>>2]=113;break}h=e+20|0;M=e+12|0;if((((k[h>>2]|0)+2|0)>>>0>(k[M>>2]|0)>>>0?(y=k[d>>2]|0,Nj(y),r=y+20|0,u=k[r>>2]|0,I=k[n>>2]|0,L=u>>>0>I>>>0?I:u,(L|0)!=0):0)?(u=y+16|0,wr(k[f>>2]|0,k[u>>2]|0,L|0)|0,k[f>>2]=(k[f>>2]|0)+L,k[u>>2]=(k[u>>2]|0)+L,I=a+20|0,k[I>>2]=(k[I>>2]|0)+L,k[n>>2]=(k[n>>2]|0)-L,I=k[r>>2]|0,k[r>>2]=I-L,(I|0)==(L|0)):0)k[u>>2]=k[y+8>>2];y=k[h>>2]|0;if((y+2|0)>>>0<=(k[M>>2]|0)>>>0){M=a+48|0;u=k[M>>2]&255;k[h>>2]=y+1;L=e+8|0;i[(k[L>>2]|0)+y>>0]=u;u=(k[M>>2]|0)>>>8&255;y=k[h>>2]|0;k[h>>2]=y+1;i[(k[L>>2]|0)+y>>0]=u;u=Xj(0,0,0)|0;k[M>>2]=u;k[g>>2]=113}}while(0);u=e+20|0;if(!(k[u>>2]|0)){if((k[a+4>>2]|0)==0?m&((b<<1)-((b|0)>4?9:0)|0)<=((p<<1)-((p|0)>4?9:0)|0):0){k[a+24>>2]=k[27686];c=-5;return c|0}}else{M=k[d>>2]|0;Nj(M);y=M+20|0;L=k[y>>2]|0;h=k[n>>2]|0;I=L>>>0>h>>>0?h:L;if(I){L=M+16|0;wr(k[f>>2]|0,k[L>>2]|0,I|0)|0;k[f>>2]=(k[f>>2]|0)+I;k[L>>2]=(k[L>>2]|0)+I;r=a+20|0;k[r>>2]=(k[r>>2]|0)+I;r=(k[n>>2]|0)-I|0;k[n>>2]=r;K=k[y>>2]|0;k[y>>2]=K-I;if((K|0)==(I|0)){k[L>>2]=k[M+8>>2];ja=r}else ja=r}else ja=h;if(!ja){k[o>>2]=-1;c=0;return c|0}}h=(k[g>>2]|0)==666;r=(k[a+4>>2]|0)==0;if(h)if(r)x=116;else{k[a+24>>2]=k[27686];c=-5;return c|0}else if(r)x=116;else x=117;if((x|0)==116?!((k[e+116>>2]|0)==0&((b|0)==0|h)):0)x=117;do if((x|0)==117){b:do switch(k[e+136>>2]|0){case 2:{h=e+116|0;r=e+96|0;M=e+108|0;L=e+56|0;I=e+5792|0;K=e+5796|0;y=e+5784|0;q=e+5788|0;H=e+92|0;while(1){if((k[h>>2]|0)==0?(zj(e),(k[h>>2]|0)==0):0)break;k[r>>2]=0;v=i[(k[L>>2]|0)+(k[M>>2]|0)>>0]|0;P=k[I>>2]|0;j[(k[K>>2]|0)+(P<<1)>>1]=0;k[I>>2]=P+1;i[(k[y>>2]|0)+P>>0]=v;P=e+148+((v&255)<<2)|0;j[P>>1]=(j[P>>1]|0)+1<<16>>16;P=(k[I>>2]|0)==((k[q>>2]|0)+-1|0);k[h>>2]=(k[h>>2]|0)+-1;v=(k[M>>2]|0)+1|0;k[M>>2]=v;if(!P)continue;P=k[H>>2]|0;if((P|0)>-1)ka=(k[L>>2]|0)+P|0;else ka=0;Pj(e,ka,v-P|0,0);k[H>>2]=k[M>>2];P=k[e>>2]|0;v=k[P+28>>2]|0;Nj(v);Q=v+20|0;O=k[Q>>2]|0;N=P+16|0;la=k[N>>2]|0;ma=O>>>0>la>>>0?la:O;if((ma|0)!=0?(O=P+12|0,la=v+16|0,wr(k[O>>2]|0,k[la>>2]|0,ma|0)|0,k[O>>2]=(k[O>>2]|0)+ma,k[la>>2]=(k[la>>2]|0)+ma,O=P+20|0,k[O>>2]=(k[O>>2]|0)+ma,k[N>>2]=(k[N>>2]|0)-ma,N=k[Q>>2]|0,k[Q>>2]=N-ma,(N|0)==(ma|0)):0)k[la>>2]=k[v+8>>2];if(!(k[(k[e>>2]|0)+16>>2]|0)){x=191;break b}}if(b){k[e+5812>>2]=0;if((b|0)==4){h=k[H>>2]|0;if((h|0)>-1)na=(k[L>>2]|0)+h|0;else na=0;Pj(e,na,(k[M>>2]|0)-h|0,1);k[H>>2]=k[M>>2];h=k[e>>2]|0;q=k[h+28>>2]|0;Nj(q);y=q+20|0;K=k[y>>2]|0;r=h+16|0;v=k[r>>2]|0;la=K>>>0>v>>>0?v:K;if((la|0)!=0?(K=h+12|0,v=q+16|0,wr(k[K>>2]|0,k[v>>2]|0,la|0)|0,k[K>>2]=(k[K>>2]|0)+la,k[v>>2]=(k[v>>2]|0)+la,K=h+20|0,k[K>>2]=(k[K>>2]|0)+la,k[r>>2]=(k[r>>2]|0)-la,r=k[y>>2]|0,k[y>>2]=r-la,(r|0)==(la|0)):0)k[v>>2]=k[q+8>>2];oa=(k[(k[e>>2]|0)+16>>2]|0)==0?2:3;x=188;break b}if(k[I>>2]|0){q=k[H>>2]|0;if((q|0)>-1)pa=(k[L>>2]|0)+q|0;else pa=0;Pj(e,pa,(k[M>>2]|0)-q|0,0);k[H>>2]=k[M>>2];q=k[e>>2]|0;v=k[q+28>>2]|0;Nj(v);la=v+20|0;r=k[la>>2]|0;y=q+16|0;K=k[y>>2]|0;h=r>>>0>K>>>0?K:r;if((h|0)!=0?(r=q+12|0,K=v+16|0,wr(k[r>>2]|0,k[K>>2]|0,h|0)|0,k[r>>2]=(k[r>>2]|0)+h,k[K>>2]=(k[K>>2]|0)+h,r=q+20|0,k[r>>2]=(k[r>>2]|0)+h,k[y>>2]=(k[y>>2]|0)-h,y=k[la>>2]|0,k[la>>2]=y-h,(y|0)==(h|0)):0)k[K>>2]=k[v+8>>2];if(!(k[(k[e>>2]|0)+16>>2]|0))x=191}}else x=191;break}case 3:{v=e+116|0;K=(b|0)==0;h=e+96|0;y=e+108|0;la=e+5792|0;r=e+5796|0;q=e+5784|0;ma=e+2440+(l[154873]<<2)|0;N=e+5788|0;Q=e+56|0;O=e+92|0;while(1){P=k[v>>2]|0;if(P>>>0<259){zj(e);qa=k[v>>2]|0;if(K&qa>>>0<259){x=191;break b}if(!qa)break;k[h>>2]=0;if(qa>>>0>2){ra=qa;x=150}else{sa=k[y>>2]|0;x=165}}else{k[h>>2]=0;ra=P;x=150}if((x|0)==150){x=0;P=k[y>>2]|0;if(P){qa=k[Q>>2]|0;ta=i[qa+(P+-1)>>0]|0;if((ta<<24>>24==(i[qa+P>>0]|0)?ta<<24>>24==(i[qa+(P+1)>>0]|0):0)?(ua=qa+(P+2)|0,ta<<24>>24==(i[ua>>0]|0)):0){va=qa+(P+258)|0;qa=ua;while(1){ua=qa+1|0;if(ta<<24>>24!=(i[ua>>0]|0)){wa=ua;break}ua=qa+2|0;if(ta<<24>>24!=(i[ua>>0]|0)){wa=ua;break}ua=qa+3|0;if(ta<<24>>24!=(i[ua>>0]|0)){wa=ua;break}ua=qa+4|0;if(ta<<24>>24!=(i[ua>>0]|0)){wa=ua;break}ua=qa+5|0;if(ta<<24>>24!=(i[ua>>0]|0)){wa=ua;break}ua=qa+6|0;if(ta<<24>>24!=(i[ua>>0]|0)){wa=ua;break}ua=qa+7|0;if(ta<<24>>24!=(i[ua>>0]|0)){wa=ua;break}ua=qa+8|0;if(ua>>>0<va>>>0?ta<<24>>24==(i[ua>>0]|0):0)qa=ua;else{wa=ua;break}}qa=wa-va+258|0;ta=qa>>>0>ra>>>0?ra:qa;k[h>>2]=ta;if(ta>>>0>2){qa=ta+253|0;ta=k[la>>2]|0;j[(k[r>>2]|0)+(ta<<1)>>1]=1;k[la>>2]=ta+1;i[(k[q>>2]|0)+ta>>0]=qa;ta=e+148+((l[155385+(qa&255)>>0]|256)+1<<2)|0;j[ta>>1]=(j[ta>>1]|0)+1<<16>>16;j[ma>>1]=(j[ma>>1]|0)+1<<16>>16;ta=(k[la>>2]|0)==((k[N>>2]|0)+-1|0)&1;qa=k[h>>2]|0;k[v>>2]=(k[v>>2]|0)-qa;ua=(k[y>>2]|0)+qa|0;k[y>>2]=ua;k[h>>2]=0;xa=ua;ya=ta}else{sa=P;x=165}}else{sa=P;x=165}}else{sa=0;x=165}}if((x|0)==165){x=0;ta=i[(k[Q>>2]|0)+sa>>0]|0;ua=k[la>>2]|0;j[(k[r>>2]|0)+(ua<<1)>>1]=0;k[la>>2]=ua+1;i[(k[q>>2]|0)+ua>>0]=ta;ua=e+148+((ta&255)<<2)|0;j[ua>>1]=(j[ua>>1]|0)+1<<16>>16;ua=(k[la>>2]|0)==((k[N>>2]|0)+-1|0)&1;k[v>>2]=(k[v>>2]|0)+-1;ta=(k[y>>2]|0)+1|0;k[y>>2]=ta;xa=ta;ya=ua}if(!ya)continue;ua=k[O>>2]|0;if((ua|0)>-1)za=(k[Q>>2]|0)+ua|0;else za=0;Pj(e,za,xa-ua|0,0);k[O>>2]=k[y>>2];ua=k[e>>2]|0;ta=k[ua+28>>2]|0;Nj(ta);qa=ta+20|0;Aa=k[qa>>2]|0;Ba=ua+16|0;Ca=k[Ba>>2]|0;Da=Aa>>>0>Ca>>>0?Ca:Aa;if((Da|0)!=0?(Aa=ua+12|0,Ca=ta+16|0,wr(k[Aa>>2]|0,k[Ca>>2]|0,Da|0)|0,k[Aa>>2]=(k[Aa>>2]|0)+Da,k[Ca>>2]=(k[Ca>>2]|0)+Da,Aa=ua+20|0,k[Aa>>2]=(k[Aa>>2]|0)+Da,k[Ba>>2]=(k[Ba>>2]|0)-Da,Ba=k[qa>>2]|0,k[qa>>2]=Ba-Da,(Ba|0)==(Da|0)):0)k[Ca>>2]=k[ta+8>>2];if(!(k[(k[e>>2]|0)+16>>2]|0)){x=191;break b}}k[e+5812>>2]=0;if((b|0)==4){v=k[O>>2]|0;if((v|0)>-1)Ea=(k[Q>>2]|0)+v|0;else Ea=0;Pj(e,Ea,(k[y>>2]|0)-v|0,1);k[O>>2]=k[y>>2];v=k[e>>2]|0;N=k[v+28>>2]|0;Nj(N);q=N+20|0;r=k[q>>2]|0;h=v+16|0;ma=k[h>>2]|0;K=r>>>0>ma>>>0?ma:r;if((K|0)!=0?(r=v+12|0,ma=N+16|0,wr(k[r>>2]|0,k[ma>>2]|0,K|0)|0,k[r>>2]=(k[r>>2]|0)+K,k[ma>>2]=(k[ma>>2]|0)+K,r=v+20|0,k[r>>2]=(k[r>>2]|0)+K,k[h>>2]=(k[h>>2]|0)-K,h=k[q>>2]|0,k[q>>2]=h-K,(h|0)==(K|0)):0)k[ma>>2]=k[N+8>>2];oa=(k[(k[e>>2]|0)+16>>2]|0)==0?2:3;x=188;break b}if(k[la>>2]|0){N=k[O>>2]|0;if((N|0)>-1)Fa=(k[Q>>2]|0)+N|0;else Fa=0;Pj(e,Fa,(k[y>>2]|0)-N|0,0);k[O>>2]=k[y>>2];N=k[e>>2]|0;ma=k[N+28>>2]|0;Nj(ma);K=ma+20|0;h=k[K>>2]|0;q=N+16|0;r=k[q>>2]|0;v=h>>>0>r>>>0?r:h;if((v|0)!=0?(h=N+12|0,r=ma+16|0,wr(k[h>>2]|0,k[r>>2]|0,v|0)|0,k[h>>2]=(k[h>>2]|0)+v,k[r>>2]=(k[r>>2]|0)+v,h=N+20|0,k[h>>2]=(k[h>>2]|0)+v,k[q>>2]=(k[q>>2]|0)-v,q=k[K>>2]|0,k[K>>2]=q-v,(q|0)==(v|0)):0)k[r>>2]=k[ma+8>>2];if(!(k[(k[e>>2]|0)+16>>2]|0))x=191}break}default:{oa=yb[k[109988+((k[e+132>>2]|0)*12|0)+8>>2]&127](e,b)|0;x=188}}while(0);if((x|0)==188){if((oa&-2|0)==2)k[g>>2]=666;if(oa&-3){if((oa|0)!=1)break}else x=191}if((x|0)==191){if(k[n>>2]|0){c=0;return c|0}k[o>>2]=-1;c=0;return c|0}switch(b|0){case 1:{Oj(e);break}case 5:break;default:{Mj(e,0,0,0);if((b|0)==3?(J=k[e+76>>2]|0,t=k[e+68>>2]|0,j[t+(J+-1<<1)>>1]=0,qr(t|0,0,(J<<1)+-2|0)|0,(k[e+116>>2]|0)==0):0){k[e+108>>2]=0;k[e+92>>2]=0;k[e+5812>>2]=0}}}J=k[d>>2]|0;Nj(J);t=J+20|0;G=k[t>>2]|0;ma=k[n>>2]|0;r=G>>>0>ma>>>0?ma:G;if(r){G=J+16|0;wr(k[f>>2]|0,k[G>>2]|0,r|0)|0;k[f>>2]=(k[f>>2]|0)+r;k[G>>2]=(k[G>>2]|0)+r;v=a+20|0;k[v>>2]=(k[v>>2]|0)+r;v=(k[n>>2]|0)-r|0;k[n>>2]=v;q=k[t>>2]|0;k[t>>2]=q-r;if((q|0)==(r|0)){k[G>>2]=k[J+8>>2];Ga=v}else Ga=v}else Ga=ma;if(!Ga){k[o>>2]=-1;c=0;return c|0}}while(0);if(m){c=0;return c|0}o=e+24|0;g=k[o>>2]|0;if((g|0)<1){c=1;return c|0}p=a+48|0;ma=k[p>>2]|0;if((g|0)==2){g=k[u>>2]|0;k[u>>2]=g+1;v=e+8|0;i[(k[v>>2]|0)+g>>0]=ma;g=(k[p>>2]|0)>>>8&255;J=k[u>>2]|0;k[u>>2]=J+1;i[(k[v>>2]|0)+J>>0]=g;g=(k[p>>2]|0)>>>16&255;J=k[u>>2]|0;k[u>>2]=J+1;i[(k[v>>2]|0)+J>>0]=g;g=(k[p>>2]|0)>>>24&255;J=k[u>>2]|0;k[u>>2]=J+1;i[(k[v>>2]|0)+J>>0]=g;g=a+8|0;J=k[g>>2]&255;G=k[u>>2]|0;k[u>>2]=G+1;i[(k[v>>2]|0)+G>>0]=J;J=(k[g>>2]|0)>>>8&255;G=k[u>>2]|0;k[u>>2]=G+1;i[(k[v>>2]|0)+G>>0]=J;J=(k[g>>2]|0)>>>16&255;G=k[u>>2]|0;k[u>>2]=G+1;i[(k[v>>2]|0)+G>>0]=J;J=(k[g>>2]|0)>>>24&255;g=k[u>>2]|0;k[u>>2]=g+1;i[(k[v>>2]|0)+g>>0]=J}else{J=k[u>>2]|0;k[u>>2]=J+1;g=e+8|0;i[(k[g>>2]|0)+J>>0]=ma>>>24;J=k[u>>2]|0;k[u>>2]=J+1;i[(k[g>>2]|0)+J>>0]=ma>>>16;ma=k[p>>2]|0;p=k[u>>2]|0;k[u>>2]=p+1;i[(k[g>>2]|0)+p>>0]=ma>>>8;p=k[u>>2]|0;k[u>>2]=p+1;i[(k[g>>2]|0)+p>>0]=ma}ma=k[d>>2]|0;Nj(ma);p=ma+20|0;g=k[p>>2]|0;J=k[n>>2]|0;v=g>>>0>J>>>0?J:g;if((v|0)!=0?(g=ma+16|0,wr(k[f>>2]|0,k[g>>2]|0,v|0)|0,k[f>>2]=(k[f>>2]|0)+v,k[g>>2]=(k[g>>2]|0)+v,J=a+20|0,k[J>>2]=(k[J>>2]|0)+v,k[n>>2]=(k[n>>2]|0)-v,J=k[p>>2]|0,k[p>>2]=J-v,(J|0)==(v|0)):0)k[g>>2]=k[ma+8>>2];ma=k[o>>2]|0;if((ma|0)>0)k[o>>2]=0-ma;c=(k[u>>2]|0)==0&1;return c|0}}while(0);k[a+24>>2]=k[27683];c=-2;return c|0}function zj(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,n=0,o=0,p=0,q=0,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;b=a+44|0;c=k[b>>2]|0;d=a+60|0;e=a+116|0;f=a+108|0;g=c+-262|0;h=a+56|0;i=a+5812|0;n=a+72|0;o=a+88|0;p=a+84|0;q=a+68|0;r=a+52|0;s=a+64|0;t=a+112|0;u=a+92|0;v=a+76|0;w=k[e>>2]|0;x=c;while(1){y=k[f>>2]|0;z=(k[d>>2]|0)-w-y|0;if(y>>>0<(g+x|0)>>>0){A=y;B=z}else{y=k[h>>2]|0;wr(y|0,y+c|0,c|0)|0;k[t>>2]=(k[t>>2]|0)-c;y=(k[f>>2]|0)-c|0;k[f>>2]=y;k[u>>2]=(k[u>>2]|0)-c;C=k[v>>2]|0;D=C;E=(k[q>>2]|0)+(C<<1)|0;do{E=E+-2|0;C=m[E>>1]|0;j[E>>1]=C>>>0<c>>>0?0:C-c&65535;D=D+-1|0}while((D|0)!=0);D=c;E=(k[s>>2]|0)+(c<<1)|0;do{E=E+-2|0;C=m[E>>1]|0;j[E>>1]=C>>>0<c>>>0?0:C-c&65535;D=D+-1|0}while((D|0)!=0);A=y;B=z+c|0}D=k[a>>2]|0;E=D+4|0;C=k[E>>2]|0;if(!C)break;F=k[e>>2]|0;G=(k[h>>2]|0)+(F+A)|0;H=C>>>0>B>>>0?B:C;if(!H){I=0;J=F}else{k[E>>2]=C-H;wr(G|0,k[D>>2]|0,H|0)|0;switch(k[(k[D+28>>2]|0)+24>>2]|0){case 1:{C=D+48|0;E=Wj(k[C>>2]|0,G,H)|0;k[C>>2]=E;break}case 2:{E=D+48|0;C=Xj(k[E>>2]|0,G,H)|0;k[E>>2]=C;break}default:{}}k[D>>2]=(k[D>>2]|0)+H;C=D+8|0;k[C>>2]=(k[C>>2]|0)+H;I=H;J=k[e>>2]|0}H=J+I|0;k[e>>2]=H;C=k[i>>2]|0;a:do if((H+C|0)>>>0>2){D=(k[f>>2]|0)-C|0;E=k[h>>2]|0;G=l[E+D>>0]|0;k[n>>2]=G;F=k[o>>2]|0;K=k[p>>2]|0;L=((l[E+(D+1)>>0]|0)^G<<F)&K;k[n>>2]=L;G=C;M=L;L=D;while(1){if(!G)break a;M=((l[E+(L+2)>>0]|0)^M<<F)&K;k[n>>2]=M;D=(k[q>>2]|0)+(M<<1)|0;j[(k[s>>2]|0)+((k[r>>2]&L)<<1)>>1]=j[D>>1]|0;j[D>>1]=L;G=G+-1|0;k[i>>2]=G;if((H+G|0)>>>0<3)break;else L=L+1|0}}while(0);if(H>>>0>=262)break;if(!(k[(k[a>>2]|0)+4>>2]|0))break;w=H;x=k[b>>2]|0}b=a+5824|0;a=k[b>>2]|0;x=k[d>>2]|0;if(x>>>0<=a>>>0)return;d=(k[e>>2]|0)+(k[f>>2]|0)|0;if(a>>>0<d>>>0){f=x-d|0;e=f>>>0>258?258:f;qr((k[h>>2]|0)+d|0,0,e|0)|0;k[b>>2]=e+d;return}e=d+258|0;if(e>>>0<=a>>>0)return;d=e-a|0;e=x-a|0;x=d>>>0>e>>>0?e:d;qr((k[h>>2]|0)+a|0,0,x|0)|0;k[b>>2]=(k[b>>2]|0)+x;return}function Aj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,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=(k[a+12>>2]|0)+-5|0;d=c>>>0<65535?c:65535;c=a+116|0;e=a+108|0;f=a+92|0;g=a+44|0;h=a+56|0;while(1){i=k[c>>2]|0;if(i>>>0<2){zj(a);j=k[c>>2]|0;if(!(j|b)){l=0;m=35;break}if(!j){m=20;break}else n=j}else n=i;i=(k[e>>2]|0)+n|0;k[e>>2]=i;k[c>>2]=0;j=k[f>>2]|0;o=j+d|0;if((i|0)!=0&i>>>0<o>>>0){p=i;q=j}else{k[c>>2]=i-o;k[e>>2]=o;if((j|0)>-1)r=(k[h>>2]|0)+j|0;else r=0;Pj(a,r,d,0);k[f>>2]=k[e>>2];j=k[a>>2]|0;o=k[j+28>>2]|0;Nj(o);i=o+20|0;s=k[i>>2]|0;t=j+16|0;u=k[t>>2]|0;v=s>>>0>u>>>0?u:s;if((v|0)!=0?(s=j+12|0,u=o+16|0,wr(k[s>>2]|0,k[u>>2]|0,v|0)|0,k[s>>2]=(k[s>>2]|0)+v,k[u>>2]=(k[u>>2]|0)+v,s=j+20|0,k[s>>2]=(k[s>>2]|0)+v,k[t>>2]=(k[t>>2]|0)-v,t=k[i>>2]|0,k[i>>2]=t-v,(t|0)==(v|0)):0)k[u>>2]=k[o+8>>2];if(!(k[(k[a>>2]|0)+16>>2]|0)){l=0;m=35;break}p=k[e>>2]|0;q=k[f>>2]|0}o=p-q|0;if(o>>>0<((k[g>>2]|0)+-262|0)>>>0)continue;if((q|0)>-1)w=(k[h>>2]|0)+q|0;else w=0;Pj(a,w,o,0);k[f>>2]=k[e>>2];o=k[a>>2]|0;u=k[o+28>>2]|0;Nj(u);v=u+20|0;t=k[v>>2]|0;i=o+16|0;s=k[i>>2]|0;j=t>>>0>s>>>0?s:t;if((j|0)!=0?(t=o+12|0,s=u+16|0,wr(k[t>>2]|0,k[s>>2]|0,j|0)|0,k[t>>2]=(k[t>>2]|0)+j,k[s>>2]=(k[s>>2]|0)+j,t=o+20|0,k[t>>2]=(k[t>>2]|0)+j,k[i>>2]=(k[i>>2]|0)-j,i=k[v>>2]|0,k[v>>2]=i-j,(i|0)==(j|0)):0)k[s>>2]=k[u+8>>2];if(!(k[(k[a>>2]|0)+16>>2]|0)){l=0;m=35;break}}if((m|0)==20){k[a+5812>>2]=0;if((b|0)==4){b=k[f>>2]|0;if((b|0)>-1)x=(k[h>>2]|0)+b|0;else x=0;Pj(a,x,(k[e>>2]|0)-b|0,1);k[f>>2]=k[e>>2];b=k[a>>2]|0;x=k[b+28>>2]|0;Nj(x);w=x+20|0;q=k[w>>2]|0;g=b+16|0;p=k[g>>2]|0;d=q>>>0>p>>>0?p:q;if((d|0)!=0?(q=b+12|0,p=x+16|0,wr(k[q>>2]|0,k[p>>2]|0,d|0)|0,k[q>>2]=(k[q>>2]|0)+d,k[p>>2]=(k[p>>2]|0)+d,q=b+20|0,k[q>>2]=(k[q>>2]|0)+d,k[g>>2]=(k[g>>2]|0)-d,g=k[w>>2]|0,k[w>>2]=g-d,(g|0)==(d|0)):0)k[p>>2]=k[x+8>>2];l=(k[(k[a>>2]|0)+16>>2]|0)==0?2:3;return l|0}x=k[e>>2]|0;p=k[f>>2]|0;if((x|0)>(p|0)){if((p|0)>-1)y=(k[h>>2]|0)+p|0;else y=0;Pj(a,y,x-p|0,0);k[f>>2]=k[e>>2];e=k[a>>2]|0;f=k[e+28>>2]|0;Nj(f);p=f+20|0;x=k[p>>2]|0;y=e+16|0;h=k[y>>2]|0;d=x>>>0>h>>>0?h:x;if((d|0)!=0?(x=e+12|0,h=f+16|0,wr(k[x>>2]|0,k[h>>2]|0,d|0)|0,k[x>>2]=(k[x>>2]|0)+d,k[h>>2]=(k[h>>2]|0)+d,x=e+20|0,k[x>>2]=(k[x>>2]|0)+d,k[y>>2]=(k[y>>2]|0)-d,y=k[p>>2]|0,k[p>>2]=y-d,(y|0)==(d|0)):0)k[h>>2]=k[f+8>>2];if(!(k[(k[a>>2]|0)+16>>2]|0)){l=0;return l|0}}l=1;return l|0}else if((m|0)==35)return l|0;return 0}function Bj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,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;c=a+116|0;d=(b|0)==0;e=a+72|0;f=a+88|0;g=a+108|0;h=a+56|0;m=a+84|0;n=a+68|0;o=a+52|0;p=a+64|0;q=a+44|0;r=a+96|0;s=a+112|0;t=a+5792|0;u=a+5796|0;v=a+5784|0;w=a+5788|0;x=a+128|0;y=a+92|0;while(1){if((k[c>>2]|0)>>>0<262){zj(a);z=k[c>>2]|0;if(d&z>>>0<262){A=0;B=39;break}if(!z){B=24;break}if(z>>>0<=2)B=9;else B=6}else B=6;if((B|0)==6){B=0;z=k[g>>2]|0;C=((l[(k[h>>2]|0)+(z+2)>>0]|0)^k[e>>2]<<k[f>>2])&k[m>>2];k[e>>2]=C;D=(k[n>>2]|0)+(C<<1)|0;C=j[D>>1]|0;j[(k[p>>2]|0)+((k[o>>2]&z)<<1)>>1]=C;E=C&65535;j[D>>1]=z;if(C<<16>>16!=0?(z-E|0)>>>0<=((k[q>>2]|0)+-262|0)>>>0:0){z=Dj(a,E)|0;k[r>>2]=z;F=z}else B=9}if((B|0)==9){B=0;F=k[r>>2]|0}do if(F>>>0>2){z=F+253|0;E=(k[g>>2]|0)-(k[s>>2]|0)|0;C=k[t>>2]|0;j[(k[u>>2]|0)+(C<<1)>>1]=E;k[t>>2]=C+1;i[(k[v>>2]|0)+C>>0]=z;C=a+148+((l[155385+(z&255)>>0]|0|256)+1<<2)|0;j[C>>1]=(j[C>>1]|0)+1<<16>>16;C=E+65535&65535;E=a+2440+((l[154873+(C>>>0<256?C:(C>>>7)+256|0)>>0]|0)<<2)|0;j[E>>1]=(j[E>>1]|0)+1<<16>>16;E=(k[t>>2]|0)==((k[w>>2]|0)+-1|0)&1;C=k[r>>2]|0;z=(k[c>>2]|0)-C|0;k[c>>2]=z;if(!(z>>>0>2?C>>>0<=(k[x>>2]|0)>>>0:0)){z=(k[g>>2]|0)+C|0;k[g>>2]=z;k[r>>2]=0;D=k[h>>2]|0;G=l[D+z>>0]|0;k[e>>2]=G;k[e>>2]=((l[D+(z+1)>>0]|0)^G<<k[f>>2])&k[m>>2];H=z;I=E;break}z=C+-1|0;k[r>>2]=z;C=k[f>>2]|0;G=k[h>>2]|0;D=k[m>>2]|0;J=k[n>>2]|0;K=k[o>>2]|0;L=k[p>>2]|0;M=z;z=k[g>>2]|0;N=k[e>>2]|0;while(1){O=z+1|0;k[g>>2]=O;N=((l[G+(z+3)>>0]|0)^N<<C)&D;k[e>>2]=N;P=J+(N<<1)|0;j[L+((K&O)<<1)>>1]=j[P>>1]|0;j[P>>1]=O;M=M+-1|0;k[r>>2]=M;if(!M){Q=z;break}else z=O}z=Q+2|0;k[g>>2]=z;H=z;I=E}else{z=i[(k[h>>2]|0)+(k[g>>2]|0)>>0]|0;M=k[t>>2]|0;j[(k[u>>2]|0)+(M<<1)>>1]=0;k[t>>2]=M+1;i[(k[v>>2]|0)+M>>0]=z;M=a+148+((z&255)<<2)|0;j[M>>1]=(j[M>>1]|0)+1<<16>>16;M=(k[t>>2]|0)==((k[w>>2]|0)+-1|0)&1;k[c>>2]=(k[c>>2]|0)+-1;z=(k[g>>2]|0)+1|0;k[g>>2]=z;H=z;I=M}while(0);if(!I)continue;M=k[y>>2]|0;if((M|0)>-1)R=(k[h>>2]|0)+M|0;else R=0;Pj(a,R,H-M|0,0);k[y>>2]=k[g>>2];M=k[a>>2]|0;z=k[M+28>>2]|0;Nj(z);K=z+20|0;L=k[K>>2]|0;N=M+16|0;J=k[N>>2]|0;D=L>>>0>J>>>0?J:L;if((D|0)!=0?(L=M+12|0,J=z+16|0,wr(k[L>>2]|0,k[J>>2]|0,D|0)|0,k[L>>2]=(k[L>>2]|0)+D,k[J>>2]=(k[J>>2]|0)+D,L=M+20|0,k[L>>2]=(k[L>>2]|0)+D,k[N>>2]=(k[N>>2]|0)-D,N=k[K>>2]|0,k[K>>2]=N-D,(N|0)==(D|0)):0)k[J>>2]=k[z+8>>2];if(!(k[(k[a>>2]|0)+16>>2]|0)){A=0;B=39;break}}if((B|0)==24){H=k[g>>2]|0;k[a+5812>>2]=H>>>0<2?H:2;if((b|0)==4){b=k[y>>2]|0;if((b|0)>-1)S=(k[h>>2]|0)+b|0;else S=0;Pj(a,S,H-b|0,1);k[y>>2]=k[g>>2];b=k[a>>2]|0;S=k[b+28>>2]|0;Nj(S);R=S+20|0;I=k[R>>2]|0;c=b+16|0;w=k[c>>2]|0;v=I>>>0>w>>>0?w:I;if((v|0)!=0?(I=b+12|0,w=S+16|0,wr(k[I>>2]|0,k[w>>2]|0,v|0)|0,k[I>>2]=(k[I>>2]|0)+v,k[w>>2]=(k[w>>2]|0)+v,I=b+20|0,k[I>>2]=(k[I>>2]|0)+v,k[c>>2]=(k[c>>2]|0)-v,c=k[R>>2]|0,k[R>>2]=c-v,(c|0)==(v|0)):0)k[w>>2]=k[S+8>>2];A=(k[(k[a>>2]|0)+16>>2]|0)==0?2:3;return A|0}if(k[t>>2]|0){t=k[y>>2]|0;if((t|0)>-1)T=(k[h>>2]|0)+t|0;else T=0;Pj(a,T,H-t|0,0);k[y>>2]=k[g>>2];g=k[a>>2]|0;y=k[g+28>>2]|0;Nj(y);t=y+20|0;H=k[t>>2]|0;T=g+16|0;h=k[T>>2]|0;S=H>>>0>h>>>0?h:H;if((S|0)!=0?(H=g+12|0,h=y+16|0,wr(k[H>>2]|0,k[h>>2]|0,S|0)|0,k[H>>2]=(k[H>>2]|0)+S,k[h>>2]=(k[h>>2]|0)+S,H=g+20|0,k[H>>2]=(k[H>>2]|0)+S,k[T>>2]=(k[T>>2]|0)-S,T=k[t>>2]|0,k[t>>2]=T-S,(T|0)==(S|0)):0)k[h>>2]=k[y+8>>2];if(!(k[(k[a>>2]|0)+16>>2]|0)){A=0;return A|0}}A=1;return A|0}else if((B|0)==39)return A|0;return 0}
function Cm(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f=d+c|0;g=b+4|0;if(!((f>>>0<=(k[g>>2]|0)>>>0?(k[b+12>>2]|0)>>>0>=d>>>0:0)?(k[b>>2]|0)!=0:0)){d=k[a>>2]|0;k[d+20>>2]=23;qb[k[d>>2]&127](a)}d=b+24|0;h=k[d>>2]|0;if(!(h>>>0<=c>>>0?f>>>0<=((k[b+16>>2]|0)+h|0)>>>0:0))i=7;a:do if((i|0)==7){if(!(k[b+40>>2]|0)){h=k[a>>2]|0;k[h+20>>2]=71;qb[k[h>>2]&127](a)}h=b+36|0;if(k[h>>2]|0){j=k[b+8>>2]<<7;l=k[d>>2]|0;m=b+20|0;n=b+16|0;o=k[n>>2]|0;b:do if((o|0)>0?(p=b+28|0,q=b+48|0,r=b+52|0,s=k[m>>2]|0,t=(s|0)<(o|0)?s:o,s=(k[p>>2]|0)-l|0,u=(t|0)<(s|0)?t:s,s=(k[g>>2]|0)-l|0,t=(u|0)<(s|0)?u:s,(t|0)>=1):0){s=t;t=ha(l,j)|0;u=0;while(1){v=ha(s,j)|0;pb[k[r>>2]&63](a,q,k[(k[b>>2]|0)+(u<<2)>>2]|0,t,v);w=k[m>>2]|0;x=k[n>>2]|0;u=w+u|0;if((x|0)<=(u|0))break b;y=x-u|0;x=(w|0)<(y|0)?w:y;y=u+(k[d>>2]|0)|0;w=(k[p>>2]|0)-y|0;z=(x|0)<(w|0)?x:w;w=(k[g>>2]|0)-y|0;s=(z|0)<(w|0)?z:w;if((s|0)<1)break;else t=v+t|0}}while(0);k[h>>2]=0}n=b+16|0;m=k[n>>2]|0;if((k[d>>2]|0)>>>0<c>>>0)A=c;else{j=f-m|0;A=(j|0)<0?0:j}k[d>>2]=A;j=k[b+8>>2]<<7;l=b+20|0;if((m|0)>0?(o=b+28|0,t=b+48|0,s=k[l>>2]|0,p=(s|0)<(m|0)?s:m,m=(k[o>>2]|0)-A|0,s=(p|0)<(m|0)?p:m,m=(k[g>>2]|0)-A|0,p=(s|0)<(m|0)?s:m,(p|0)>=1):0){m=p;p=ha(j,A)|0;s=0;while(1){u=ha(m,j)|0;pb[k[t>>2]&63](a,t,k[(k[b>>2]|0)+(s<<2)>>2]|0,p,u);q=k[l>>2]|0;r=k[n>>2]|0;s=q+s|0;if((r|0)<=(s|0))break a;v=r-s|0;r=(q|0)<(v|0)?q:v;v=s+(k[d>>2]|0)|0;q=(k[o>>2]|0)-v|0;w=(r|0)<(q|0)?r:q;q=(k[g>>2]|0)-v|0;m=(w|0)<(q|0)?w:q;if((m|0)<1)break;else p=u+p|0}}}while(0);g=b+28|0;A=k[g>>2]|0;do if(A>>>0<f>>>0){p=(e|0)==0;if(A>>>0<c>>>0)if(p){B=0;C=c}else{m=k[a>>2]|0;k[m+20>>2]=23;qb[k[m>>2]&127](a);D=c;i=28}else if(p){B=0;C=A}else{D=A;i=28}if((i|0)==28){k[g>>2]=f;B=1;C=D}if(!(k[b+32>>2]|0)){if(B)break;p=k[a>>2]|0;k[p+20>>2]=23;qb[k[p>>2]&127](a);break}p=k[b+8>>2]<<7;m=k[d>>2]|0;o=C-m|0;s=f-m|0;if(o>>>0<s>>>0){m=o;do{qr(k[(k[b>>2]|0)+(m<<2)>>2]|0,0,p|0)|0;m=m+1|0}while((m|0)!=(s|0))}}while(0);if(!e){E=k[b>>2]|0;F=k[d>>2]|0;G=c-F|0;H=E+(G<<2)|0;return H|0}k[b+36>>2]=1;E=k[b>>2]|0;F=k[d>>2]|0;G=c-F|0;H=E+(G<<2)|0;return H|0}function Dm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=k[a+4>>2]|0;if(b>>>0<=1){if((b|0)==1){d=c+68|0;e=k[d>>2]|0;if(e){f=e;do{e=f+40|0;if(k[e>>2]|0){k[e>>2]=0;rb[k[f+56>>2]&31](a,f+48|0)}f=k[f+44>>2]|0}while((f|0)!=0)}k[d>>2]=0;d=c+72|0;f=k[d>>2]|0;if(f){e=f;do{f=e+40|0;if(k[f>>2]|0){k[f>>2]=0;rb[k[e+56>>2]&31](a,e+48|0)}e=k[e+44>>2]|0}while((e|0)!=0)}k[d>>2]=0}}else{d=k[a>>2]|0;k[d+20>>2]=15;k[d+24>>2]=b;qb[k[d>>2]&127](a)}d=c+60+(b<<2)|0;e=k[d>>2]|0;k[d>>2]=0;if(e){d=c+76|0;f=e;do{e=f;f=k[f>>2]|0;g=(k[e+4>>2]|0)+16+(k[e+8>>2]|0)|0;Im(a,e,g);k[d>>2]=(k[d>>2]|0)-g}while((f|0)!=0)}f=c+52+(b<<2)|0;b=k[f>>2]|0;k[f>>2]=0;if(!b)return;f=c+76|0;c=b;do{b=c;c=k[c>>2]|0;d=(k[b+4>>2]|0)+16+(k[b+8>>2]|0)|0;Gm(a,b,d);k[f>>2]=(k[f>>2]|0)-d}while((c|0)!=0);return}function Em(a){a=a|0;var b=0;Dm(a,1);Dm(a,0);b=a+4|0;Gm(a,k[b>>2]|0,84);k[b>>2]=0;Mm(a);return}function Fm(a,b){a=a|0;b=b|0;return jr(b)|0}function Gm(a,b,c){a=a|0;b=b|0;c=c|0;kr(b);return}function Hm(a,b){a=a|0;b=b|0;return jr(b)|0}function Im(a,b,c){a=a|0;b=b|0;c=c|0;kr(b);return}function Jm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return c|0}function Km(a,b,c){a=a|0;b=b|0;c=c|0;c=k[a>>2]|0;k[c+20>>2]=51;qb[k[c>>2]&127](a);return}function Lm(a){a=a|0;return 0}function Mm(a){a=a|0;return}function Nm(a){a=a|0;var b=0;b=nb[k[k[a+4>>2]>>2]&63](a,1,208)|0;k[a+424>>2]=b;k[b>>2]=16;k[b+8>>2]=57;k[b+76>>2]=0;k[b+140>>2]=0;k[b+80>>2]=0;k[b+144>>2]=0;k[b+84>>2]=0;k[b+148>>2]=0;k[b+88>>2]=0;k[b+152>>2]=0;k[b+92>>2]=0;k[b+156>>2]=0;k[b+96>>2]=0;k[b+160>>2]=0;k[b+100>>2]=0;k[b+164>>2]=0;k[b+104>>2]=0;k[b+168>>2]=0;k[b+108>>2]=0;k[b+172>>2]=0;k[b+112>>2]=0;k[b+176>>2]=0;k[b+116>>2]=0;k[b+180>>2]=0;k[b+120>>2]=0;k[b+184>>2]=0;k[b+124>>2]=0;k[b+188>>2]=0;k[b+128>>2]=0;k[b+192>>2]=0;k[b+132>>2]=0;k[b+196>>2]=0;k[b+136>>2]=0;k[b+200>>2]=0;i[b+204>>0]=113;return}function Om(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;c=k[a+424>>2]|0;if(b){b=k[a>>2]|0;k[b+20>>2]=49;qb[k[b>>2]&127](a)}do if(k[a+268>>2]|0){b=(k[a+364>>2]|0)==0;d=c+4|0;if(!(k[a+372>>2]|0))if(b){k[d>>2]=42;break}else{k[d>>2]=43;break}else if(b){k[d>>2]=44;break}else{k[d>>2]=45;break}}else k[c+4>>2]=46;while(0);d=a+292|0;if((k[d>>2]|0)<=0){e=c+12|0;k[e>>2]=0;f=c+16|0;k[f>>2]=65536;g=c+20|0;k[g>>2]=0;h=c+24|0;k[h>>2]=0;j=c+28|0;k[j>>2]=11;l=c+32|0;k[l>>2]=-1;m=a+236|0;n=k[m>>2]|0;o=c+68|0;k[o>>2]=n;p=c+72|0;k[p>>2]=0;return}b=a+364|0;q=a+372|0;r=a+4|0;s=a+368|0;t=0;do{u=k[a+296+(t<<2)>>2]|0;if((k[b>>2]|0)==0?(k[q>>2]|0)==0:0){v=k[u+20>>2]|0;if(v>>>0>15){w=k[a>>2]|0;k[w+20>>2]=50;k[w+24>>2]=v;qb[k[w>>2]&127](a)}w=c+76+(v<<2)|0;v=k[w>>2]|0;if(!v){x=nb[k[k[r>>2]>>2]&63](a,1,64)|0;k[w>>2]=x;y=x}else y=v;v=y;x=v+64|0;do{i[v>>0]=0;v=v+1|0}while((v|0)<(x|0));k[c+36+(t<<2)>>2]=0;k[c+52+(t<<2)>>2]=0}if(k[s>>2]|0){v=k[u+24>>2]|0;if(v>>>0>15){x=k[a>>2]|0;k[x+20>>2]=50;k[x+24>>2]=v;qb[k[x>>2]&127](a)}x=c+140+(v<<2)|0;v=k[x>>2]|0;if(!v){w=nb[k[k[r>>2]>>2]&63](a,1,256)|0;k[x>>2]=w;z=w}else z=v;qr(z|0,0,256)|0}t=t+1|0}while((t|0)<(k[d>>2]|0));e=c+12|0;k[e>>2]=0;f=c+16|0;k[f>>2]=65536;g=c+20|0;k[g>>2]=0;h=c+24|0;k[h>>2]=0;j=c+28|0;k[j>>2]=11;l=c+32|0;k[l>>2]=-1;m=a+236|0;n=k[m>>2]|0;o=c+68|0;k[o>>2]=n;p=c+72|0;k[p>>2]=0;return}function Pm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;b=k[a+424>>2]|0;c=b+12|0;d=k[c>>2]|0;e=(k[b+16>>2]|0)+-1+d&-65536;f=((e|0)<(d|0)?e|32768:e)<<k[b+28>>2];k[c>>2]=f;e=b+32|0;d=k[e>>2]|0;if(f>>>0<=134217727){if(d){if((d|0)>-1){f=b+24|0;g=a+24|0;if(!(k[f>>2]|0))h=d;else{do{j=k[g>>2]|0;l=k[j>>2]|0;k[j>>2]=l+1;i[l>>0]=0;l=j+4|0;m=(k[l>>2]|0)+-1|0;k[l>>2]=m;if((m|0)==0?(ub[k[j+12>>2]&63](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=25;qb[k[j>>2]&127](a)}j=(k[f>>2]|0)+-1|0;k[f>>2]=j}while((j|0)!=0);h=k[e>>2]|0}f=k[g>>2]|0;g=k[f>>2]|0;k[f>>2]=g+1;i[g>>0]=h;h=f+4|0;g=(k[h>>2]|0)+-1|0;k[h>>2]=g;if((g|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}}}else{f=b+24|0;k[f>>2]=(k[f>>2]|0)+1}f=b+20|0;if(k[f>>2]|0){g=b+24|0;h=a+24|0;if(k[g>>2]|0)do{j=k[h>>2]|0;m=k[j>>2]|0;k[j>>2]=m+1;i[m>>0]=0;m=j+4|0;l=(k[m>>2]|0)+-1|0;k[m>>2]=l;if((l|0)==0?(ub[k[j+12>>2]&63](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=25;qb[k[j>>2]&127](a)}j=(k[g>>2]|0)+-1|0;k[g>>2]=j}while((j|0)!=0);do{g=k[h>>2]|0;j=k[g>>2]|0;k[g>>2]=j+1;i[j>>0]=-1;j=g+4|0;l=(k[j>>2]|0)+-1|0;k[j>>2]=l;if((l|0)==0?(ub[k[g+12>>2]&63](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=25;qb[k[g>>2]&127](a)}g=k[h>>2]|0;l=k[g>>2]|0;k[g>>2]=l+1;i[l>>0]=0;l=g+4|0;j=(k[l>>2]|0)+-1|0;k[l>>2]=j;if((j|0)==0?(ub[k[g+12>>2]&63](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=25;qb[k[g>>2]&127](a)}g=(k[f>>2]|0)+-1|0;k[f>>2]=g}while((g|0)!=0)}}else{f=b+24|0;if((d|0)>-1){h=a+24|0;if(!(k[f>>2]|0))n=d;else{do{d=k[h>>2]|0;g=k[d>>2]|0;k[d>>2]=g+1;i[g>>0]=0;g=d+4|0;j=(k[g>>2]|0)+-1|0;k[g>>2]=j;if((j|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}d=(k[f>>2]|0)+-1|0;k[f>>2]=d}while((d|0)!=0);n=k[e>>2]|0}d=k[h>>2]|0;j=k[d>>2]|0;k[d>>2]=j+1;i[j>>0]=n+1;n=d+4|0;j=(k[n>>2]|0)+-1|0;k[n>>2]=j;if((j|0)==0?(ub[k[d+12>>2]&63](a)|0)==0:0){d=k[a>>2]|0;k[d+20>>2]=25;qb[k[d>>2]&127](a)}if(((k[e>>2]|0)==254?(e=k[h>>2]|0,h=k[e>>2]|0,k[e>>2]=h+1,i[h>>0]=0,h=e+4|0,d=(k[h>>2]|0)+-1|0,k[h>>2]=d,(d|0)==0):0)?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}}e=b+20|0;k[f>>2]=(k[f>>2]|0)+(k[e>>2]|0);k[e>>2]=0}e=k[c>>2]|0;if(!(e&134215680))return;f=b+24|0;b=a+24|0;if(!(k[f>>2]|0))o=e;else{do{e=k[b>>2]|0;d=k[e>>2]|0;k[e>>2]=d+1;i[d>>0]=0;d=e+4|0;h=(k[d>>2]|0)+-1|0;k[d>>2]=h;if((h|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=(k[f>>2]|0)+-1|0;k[f>>2]=e}while((e|0)!=0);o=k[c>>2]|0}f=k[b>>2]|0;e=k[f>>2]|0;k[f>>2]=e+1;i[e>>0]=o>>>19;o=f+4|0;e=(k[o>>2]|0)+-1|0;k[o>>2]=e;if((e|0)==0?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}if(((k[c>>2]&133693440|0)==133693440?(f=k[b>>2]|0,e=k[f>>2]|0,k[f>>2]=e+1,i[e>>0]=0,e=f+4|0,o=(k[e>>2]|0)+-1|0,k[e>>2]=o,(o|0)==0):0)?(ub[k[f+12>>2]&63](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=25;qb[k[f>>2]&127](a)}f=k[c>>2]|0;if(!(f&522240))return;o=k[b>>2]|0;e=k[o>>2]|0;k[o>>2]=e+1;i[e>>0]=f>>>11;f=o+4|0;e=(k[f>>2]|0)+-1|0;k[f>>2]=e;if((e|0)==0?(ub[k[o+12>>2]&63](a)|0)==0:0){o=k[a>>2]|0;k[o+20>>2]=25;qb[k[o>>2]&127](a)}if((k[c>>2]&522240|0)!=522240)return;c=k[b>>2]|0;b=k[c>>2]|0;k[c>>2]=b+1;i[b>>0]=0;b=c+4|0;o=(k[b>>2]|0)+-1|0;k[b>>2]=o;if(o)return;if(ub[k[c+12>>2]&63](a)|0)return;c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a);return}function Qm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;c=k[a+424>>2]|0;d=a+236|0;if(k[d>>2]|0){e=c+68|0;f=k[e>>2]|0;if(!f){g=c+72|0;Vm(a,k[g>>2]|0);h=k[d>>2]|0;k[e>>2]=h;k[g>>2]=(k[g>>2]|0)+1&7;i=h}else i=f;k[e>>2]=i+-1}i=a+320|0;if((k[i>>2]|0)<=0)return 1;e=a+376|0;f=0;do{h=k[a+324+(f<<2)>>2]|0;g=k[(k[a+296+(h<<2)>>2]|0)+20>>2]|0;d=j[k[b+(f<<2)>>2]>>1]>>k[e>>2];m=c+76+(g<<2)|0;n=k[m>>2]|0;o=c+52+(h<<2)|0;p=k[o>>2]|0;q=n+p|0;r=c+36+(h<<2)|0;h=k[r>>2]|0;s=d-h|0;if((d|0)!=(h|0)){k[r>>2]=d;Wm(a,q,1);if((s|0)>0){Wm(a,n+(p+1)|0,0);t=p+2|0;u=4;v=s}else{Wm(a,n+(p+1)|0,1);t=p+3|0;u=8;v=0-s|0}s=n+t|0;k[o>>2]=u;n=v+-1|0;if(n){Wm(a,s,1);p=(k[m>>2]|0)+20|0;m=n>>1;if(!m){w=1;x=p}else{d=m;m=1;r=p;while(1){Wm(a,r,1);p=m<<1;h=r+1|0;d=d>>1;if(!d){w=p;x=h;break}else{m=p;r=h}}}}else{w=0;x=s}Wm(a,x,0);if((w|0)>=(1<<l[a+152+g>>0]>>1|0)){if((w|0)>(1<<l[a+168+g>>0]>>1|0))k[o>>2]=(k[o>>2]|0)+8}else k[o>>2]=0;r=x+14|0;m=w>>1;if(m){d=m;do{Wm(a,r,(d&n|0)!=0&1);d=d>>1}while((d|0)!=0)}}else{Wm(a,q,0);k[o>>2]=0}f=f+1|0}while((f|0)<(k[i>>2]|0));return 1}function Rm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,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;c=k[a+424>>2]|0;d=a+236|0;if(k[d>>2]|0){e=c+68|0;f=k[e>>2]|0;if(!f){g=c+72|0;Vm(a,k[g>>2]|0);h=k[d>>2]|0;k[e>>2]=h;k[g>>2]=(k[g>>2]|0)+1&7;i=h}else i=f;k[e>>2]=i+-1}i=k[a+384>>2]|0;e=k[b>>2]|0;b=k[(k[a+296>>2]|0)+24>>2]|0;f=a+368|0;h=k[f>>2]|0;g=a+376|0;d=h;while(1){m=j[e+(k[i+(d<<2)>>2]<<1)>>1]|0;n=m<<16>>16;if(m<<16>>16>-1){if(n>>k[g>>2]){o=d;break}}else if(0-n>>k[g>>2]){o=d;break}d=d+-1|0;if(!d){o=0;break}}d=k[a+364>>2]|0;n=d+-1|0;if((d|0)>(o|0)){p=h;q=n}else{h=c+140+(b<<2)|0;d=c+204|0;m=a+184+b|0;r=n;while(1){n=(k[h>>2]|0)+(r*3|0)|0;Wm(a,n,0);s=r;t=n;while(1){n=s+1|0;u=j[e+(k[i+(n<<2)>>2]<<1)>>1]|0;v=u<<16>>16;if(u<<16>>16>-1){u=v>>k[g>>2];if(u){w=n;x=u;y=s;z=t;A=16;break}}else{u=0-v>>k[g>>2];if(u){B=n;C=u;D=s;E=t;A=18;break}}Wm(a,t+1|0,0);s=n;t=t+3|0}if((A|0)==16){A=0;Wm(a,z+1|0,1);Wm(a,d,0);F=w;G=y;H=z;I=x}else if((A|0)==18){A=0;Wm(a,E+1|0,1);Wm(a,d,1);F=B;G=D;H=E;I=C}t=H+2|0;s=I+-1|0;if(s){Wm(a,t,1);if(s>>>0>=2){Wm(a,t,1);n=(k[h>>2]|0)+((G|0)<(l[m>>0]|0|0)?189:217)|0;u=s>>2;if(!u){J=2;K=n}else{v=u;u=2;L=n;while(1){Wm(a,L,1);n=u<<1;M=L+1|0;v=v>>1;if(!v){J=n;K=M;break}else{u=n;L=M}}}}else{J=1;K=t}}else{J=0;K=t}Wm(a,K,0);L=K+14|0;u=J>>1;if(u){v=u;do{Wm(a,L,(v&s|0)!=0&1);v=v>>1}while((v|0)!=0)}if((F|0)<(o|0))r=F;else{N=F;break}}p=k[f>>2]|0;q=N}if((q|0)>=(p|0))return 1;Wm(a,(k[c+140+(b<<2)>>2]|0)+(q*3|0)|0,1);return 1}function Sm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0;c=k[a+424>>2]|0;d=a+236|0;if(k[d>>2]|0){e=c+68|0;f=k[e>>2]|0;if(!f){g=c+72|0;Vm(a,k[g>>2]|0);h=k[d>>2]|0;k[e>>2]=h;k[g>>2]=(k[g>>2]|0)+1&7;i=h}else i=f;k[e>>2]=i+-1}i=c+204|0;c=k[a+376>>2]|0;e=a+320|0;if((k[e>>2]|0)>0)l=0;else return 1;do{Wm(a,i,(j[k[b+(l<<2)>>2]>>1]|0)>>>c&1);l=l+1|0}while((l|0)<(k[e>>2]|0));return 1}function Tm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,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=k[a+424>>2]|0;d=a+236|0;if(k[d>>2]|0){e=c+68|0;f=k[e>>2]|0;if(!f){g=c+72|0;Vm(a,k[g>>2]|0);h=k[d>>2]|0;k[e>>2]=h;k[g>>2]=(k[g>>2]|0)+1&7;i=h}else i=f;k[e>>2]=i+-1}i=k[a+384>>2]|0;e=k[b>>2]|0;b=k[(k[a+296>>2]|0)+24>>2]|0;f=a+368|0;h=k[f>>2]|0;g=a+376|0;d=h;while(1){l=j[e+(k[i+(d<<2)>>2]<<1)>>1]|0;m=l<<16>>16;if(l<<16>>16>-1){if(m>>k[g>>2]){n=d;o=10;break}}else if(0-m>>k[g>>2]){n=d;o=10;break}d=d+-1|0;if(!d){p=0;q=0;break}}a:do if((o|0)==10){d=a+372|0;if((n|0)>0){m=n;while(1){l=j[e+(k[i+(m<<2)>>2]<<1)>>1]|0;r=l<<16>>16;if(l<<16>>16>-1){if(r>>k[d>>2]){p=n;q=m;break a}}else if(0-r>>k[d>>2]){p=n;q=m;break a}r=m+-1|0;if((m|0)>1)m=r;else{p=n;q=r;break}}}else{p=n;q=n}}while(0);n=k[a+364>>2]|0;m=n+-1|0;if((n|0)>(p|0)){s=h;t=m}else{h=c+140+(b<<2)|0;n=c+204|0;d=m;while(1){m=(k[h>>2]|0)+(d*3|0)|0;if((d|0)<(q|0)){u=d;v=m}else{Wm(a,m,0);u=d;v=m}while(1){m=u+1|0;r=j[e+(k[i+(m<<2)>>2]<<1)>>1]|0;l=r<<16>>16;if(r<<16>>16>-1){r=l>>k[g>>2];if(r){w=m;x=r;y=v;o=21;break}}else{r=0-l>>k[g>>2];if(r){z=m;A=r;B=v;o=25;break}}Wm(a,v+1|0,0);u=m;v=v+3|0}do if((o|0)==21){o=0;if(x>>>0>1){Wm(a,y+2|0,x&1);C=w;break}else{Wm(a,y+1|0,1);Wm(a,n,0);C=w;break}}else if((o|0)==25){o=0;if(A>>>0>1){Wm(a,B+2|0,A&1);C=z;break}else{Wm(a,B+1|0,1);Wm(a,n,1);C=z;break}}while(0);if((C|0)<(p|0))d=C;else{D=C;break}}s=k[f>>2]|0;t=D}if((t|0)>=(s|0))return 1;Wm(a,(k[c+140+(b<<2)>>2]|0)+(t*3|0)|0,1);return 1}function Um(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,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;c=k[a+424>>2]|0;d=a+236|0;if(k[d>>2]|0){e=c+68|0;f=k[e>>2]|0;if(!f){g=c+72|0;Vm(a,k[g>>2]|0);h=k[d>>2]|0;k[e>>2]=h;k[g>>2]=(k[g>>2]|0)+1&7;i=h}else i=f;k[e>>2]=i+-1}i=k[a+384>>2]|0;e=a+320|0;if((k[e>>2]|0)<=0)return 1;f=a+388|0;h=c+204|0;g=0;do{d=k[b+(g<<2)>>2]|0;m=k[a+324+(g<<2)>>2]|0;n=k[a+296+(m<<2)>>2]|0;o=k[n+20>>2]|0;p=c+76+(o<<2)|0;q=k[p>>2]|0;r=c+52+(m<<2)|0;s=k[r>>2]|0;t=q+s|0;u=j[d>>1]|0;v=c+36+(m<<2)|0;m=k[v>>2]|0;w=u-m|0;if((u|0)!=(m|0)){k[v>>2]=u;Wm(a,t,1);if((w|0)>0){Wm(a,q+(s+1)|0,0);x=s+2|0;y=4;z=w}else{Wm(a,q+(s+1)|0,1);x=s+3|0;y=8;z=0-w|0}w=q+x|0;k[r>>2]=y;q=z+-1|0;if(q){Wm(a,w,1);s=(k[p>>2]|0)+20|0;p=q>>1;if(!p){A=1;B=s}else{u=p;p=1;v=s;while(1){Wm(a,v,1);s=p<<1;m=v+1|0;u=u>>1;if(!u){A=s;B=m;break}else{p=s;v=m}}}}else{A=0;B=w}Wm(a,B,0);if((A|0)>=(1<<l[a+152+o>>0]>>1|0)){if((A|0)>(1<<l[a+168+o>>0]>>1|0))k[r>>2]=(k[r>>2]|0)+8}else k[r>>2]=0;v=B+14|0;p=A>>1;if(p){u=p;do{Wm(a,v,(u&q|0)!=0&1);u=u>>1}while((u|0)!=0)}}else{Wm(a,t,0);k[r>>2]=0}u=k[f>>2]|0;if(u){q=k[n+24>>2]|0;v=u;while(1){if(j[d+(k[i+(v<<2)>>2]<<1)>>1]|0){C=v;D=25;break}v=v+-1|0;if(!v){E=u;F=0;break}}if((D|0)==25){D=0;if((C|0)>0){v=c+140+(q<<2)|0;n=a+184+q|0;r=0;while(1){t=k[v>>2]|0;o=r*3|0;w=t+o|0;Wm(a,w,0);p=r+1|0;m=j[d+(k[i+(p<<2)>>2]<<1)>>1]|0;s=m<<16>>16;G=t+(o+1)|0;if(!(m<<16>>16)){o=G;t=p;H=w;while(1){Wm(a,o,0);I=H+3|0;J=t+1|0;K=j[d+(k[i+(J<<2)>>2]<<1)>>1]|0;L=H+4|0;if(!(K<<16>>16)){o=L;t=J;H=I}else{M=t;N=I;O=J;P=K;Q=L;break}}R=O;S=P;T=P<<16>>16;U=Q;V=M;W=N}else{R=p;S=m;T=s;U=G;V=r;W=w}Wm(a,U,1);if(S<<16>>16>0){Wm(a,h,0);X=T}else{Wm(a,h,1);X=0-T|0}t=W+2|0;H=X+-1|0;if(H){Wm(a,t,1);if(H>>>0>=2){Wm(a,t,1);o=(k[v>>2]|0)+((V|0)<(l[n>>0]|0)?189:217)|0;L=H>>2;if(!L){Y=2;Z=o}else{K=L;L=2;J=o;while(1){Wm(a,J,1);o=L<<1;I=J+1|0;K=K>>1;if(!K){Y=o;Z=I;break}else{L=o;J=I}}}}else{Y=1;Z=t}}else{Y=0;Z=t}Wm(a,Z,0);J=Z+14|0;L=Y>>1;if(L){K=L;do{Wm(a,J,(K&H|0)!=0&1);K=K>>1}while((K|0)!=0)}if((R|0)<(C|0))r=R;else{_=R;break}}E=k[f>>2]|0;F=_}else{E=u;F=0}}if((F|0)<(E|0))Wm(a,(k[c+140+(q<<2)>>2]|0)+(F*3|0)|0,1)}g=g+1|0}while((g|0)<(k[e>>2]|0));return 1}function Vm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;c=k[a+424>>2]|0;Pm(a);d=a+24|0;e=k[d>>2]|0;f=k[e>>2]|0;k[e>>2]=f+1;i[f>>0]=-1;f=e+4|0;g=(k[f>>2]|0)+-1|0;k[f>>2]=g;if((g|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=k[d>>2]|0;d=k[e>>2]|0;k[e>>2]=d+1;i[d>>0]=b+208;b=e+4|0;d=(k[b>>2]|0)+-1|0;k[b>>2]=d;if((d|0)==0?(ub[k[e+12>>2]&63](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=25;qb[k[e>>2]&127](a)}e=a+292|0;if((k[e>>2]|0)<=0){h=c+12|0;k[h>>2]=0;j=c+16|0;k[j>>2]=65536;l=c+20|0;k[l>>2]=0;m=c+24|0;k[m>>2]=0;n=c+28|0;k[n>>2]=11;o=c+32|0;k[o>>2]=-1;return}d=a+364|0;b=a+372|0;g=a+368|0;f=0;do{p=k[a+296+(f<<2)>>2]|0;if((k[d>>2]|0)==0?(k[b>>2]|0)==0:0){q=k[c+76+(k[p+20>>2]<<2)>>2]|0;r=q+64|0;do{i[q>>0]=0;q=q+1|0}while((q|0)<(r|0));k[c+36+(f<<2)>>2]=0;k[c+52+(f<<2)>>2]=0}if(k[g>>2]|0)qr(k[c+140+(k[p+24>>2]<<2)>>2]|0,0,256)|0;f=f+1|0}while((f|0)<(k[e>>2]|0));h=c+12|0;k[h>>2]=0;j=c+16|0;k[j>>2]=65536;l=c+20|0;k[l>>2]=0;m=c+24|0;k[m>>2]=0;n=c+28|0;k[n>>2]=11;o=c+32|0;k[o>>2]=-1;return}function Wm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;d=k[a+424>>2]|0;e=l[b>>0]|0;f=k[122136+((e&127)<<2)>>2]|0;g=f>>>8;h=f>>16;j=d+16|0;m=(k[j>>2]|0)-h|0;k[j>>2]=m;if((e>>>7|0)==(c|0)){if((m|0)>32767)return;if((m|0)<(h|0)){c=d+12|0;k[c>>2]=(k[c>>2]|0)+m;k[j>>2]=h}n=e&128^g}else{if((m|0)>=(h|0)){g=d+12|0;k[g>>2]=(k[g>>2]|0)+m;k[j>>2]=h}n=e&128^f}i[b>>0]=n;n=d+12|0;b=d+28|0;f=d+32|0;e=d+24|0;h=a+24|0;m=d+20|0;d=k[j>>2]|0;g=k[n>>2]|0;c=k[b>>2]|0;while(1){o=d<<1;k[j>>2]=o;p=g<<1;k[n>>2]=p;q=c+-1|0;k[b>>2]=q;if(!q){r=p>>19;do if((r|0)>255){s=k[f>>2]|0;if((s|0)>-1){if(!(k[e>>2]|0))t=s;else{do{s=k[h>>2]|0;u=k[s>>2]|0;k[s>>2]=u+1;i[u>>0]=0;u=s+4|0;v=(k[u>>2]|0)+-1|0;k[u>>2]=v;if((v|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}s=(k[e>>2]|0)+-1|0;k[e>>2]=s}while((s|0)!=0);t=k[f>>2]|0}s=k[h>>2]|0;v=k[s>>2]|0;k[s>>2]=v+1;i[v>>0]=t+1;v=s+4|0;u=(k[v>>2]|0)+-1|0;k[v>>2]=u;if((u|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}if(((k[f>>2]|0)==254?(s=k[h>>2]|0,u=k[s>>2]|0,k[s>>2]=u+1,i[u>>0]=0,u=s+4|0,v=(k[u>>2]|0)+-1|0,k[u>>2]=v,(v|0)==0):0)?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}}k[e>>2]=(k[e>>2]|0)+(k[m>>2]|0);k[m>>2]=0;k[f>>2]=r&255}else{if((r|0)==255){k[m>>2]=(k[m>>2]|0)+1;break}s=k[f>>2]|0;if(s){if((s|0)>-1){if(!(k[e>>2]|0))w=s;else{do{s=k[h>>2]|0;v=k[s>>2]|0;k[s>>2]=v+1;i[v>>0]=0;v=s+4|0;u=(k[v>>2]|0)+-1|0;k[v>>2]=u;if((u|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}s=(k[e>>2]|0)+-1|0;k[e>>2]=s}while((s|0)!=0);w=k[f>>2]|0}s=k[h>>2]|0;u=k[s>>2]|0;k[s>>2]=u+1;i[u>>0]=w;u=s+4|0;v=(k[u>>2]|0)+-1|0;k[u>>2]=v;if((v|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}}}else k[e>>2]=(k[e>>2]|0)+1;if(k[m>>2]|0){if(k[e>>2]|0)do{s=k[h>>2]|0;v=k[s>>2]|0;k[s>>2]=v+1;i[v>>0]=0;v=s+4|0;u=(k[v>>2]|0)+-1|0;k[v>>2]=u;if((u|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}s=(k[e>>2]|0)+-1|0;k[e>>2]=s}while((s|0)!=0);do{s=k[h>>2]|0;u=k[s>>2]|0;k[s>>2]=u+1;i[u>>0]=-1;u=s+4|0;v=(k[u>>2]|0)+-1|0;k[u>>2]=v;if((v|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}s=k[h>>2]|0;v=k[s>>2]|0;k[s>>2]=v+1;i[v>>0]=0;v=s+4|0;u=(k[v>>2]|0)+-1|0;k[v>>2]=u;if((u|0)==0?(ub[k[s+12>>2]&63](a)|0)==0:0){s=k[a>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](a)}s=(k[m>>2]|0)+-1|0;k[m>>2]=s}while((s|0)!=0)}k[f>>2]=r&255}while(0);r=k[n>>2]&524287;k[n>>2]=r;s=(k[b>>2]|0)+8|0;k[b>>2]=s;x=k[j>>2]|0;y=s;z=r}else{x=o;y=q;z=p}if((x|0)<32768){d=x;g=z;c=y}else break}return}function Xm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;c=a+4|0;d=nb[k[k[c>>2]>>2]&63](a,1,104)|0;k[a+404>>2]=d;k[d>>2]=17;if(!b){b=nb[k[(k[c>>2]|0)+4>>2]&63](a,1,1280)|0;k[d+24>>2]=b;k[d+28>>2]=b+128;k[d+32>>2]=b+256;k[d+36>>2]=b+384;k[d+40>>2]=b+512;k[d+44>>2]=b+640;k[d+48>>2]=b+768;k[d+52>>2]=b+896;k[d+56>>2]=b+1024;k[d+60>>2]=b+1152;k[d+64>>2]=0;return}b=a+76|0;if((k[b>>2]|0)<=0)return;e=d+64|0;d=0;f=k[a+84>>2]|0;while(1){g=k[(k[c>>2]|0)+20>>2]|0;h=qm(k[f+28>>2]|0,k[f+8>>2]|0)|0;i=f+12|0;j=qm(k[f+32>>2]|0,k[i>>2]|0)|0;l=sb[g&3](a,1,0,h,j,k[i>>2]|0)|0;k[e+(d<<2)>>2]=l;d=d+1|0;if((d|0)>=(k[b>>2]|0))break;else f=f+88|0}return}function Ym(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+404>>2]|0;k[c+8>>2]=0;do if((k[a+292>>2]|0)<=1){d=k[a+296>>2]|0;if((k[a+288>>2]|0)==1){k[c+20>>2]=k[d+76>>2];break}else{k[c+20>>2]=k[d+12>>2];break}}else k[c+20>>2]=1;while(0);k[c+12>>2]=0;k[c+16>>2]=0;switch(b|0){case 0:{if(k[c+64>>2]|0){b=k[a>>2]|0;k[b+20>>2]=3;qb[k[b>>2]&127](a)}k[c+4>>2]=47;return}case 3:{if(!(k[c+64>>2]|0)){b=k[a>>2]|0;k[b+20>>2]=3;qb[k[b>>2]&127](a)}k[c+4>>2]=48;return}case 2:{if(!(k[c+64>>2]|0)){b=k[a>>2]|0;k[b+20>>2]=3;qb[k[b>>2]&127](a)}k[c+4>>2]=49;return}default:{c=k[a>>2]|0;k[c+20>>2]=3;qb[k[c>>2]&127](a);return}}}function Zm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,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;c=a+404|0;d=k[c>>2]|0;e=(k[a+312>>2]|0)+-1|0;f=a+288|0;g=(k[f>>2]|0)+-1|0;h=d+16|0;i=k[h>>2]|0;l=d+20|0;m=k[l>>2]|0;do if((i|0)<(m|0)){n=d+12|0;o=a+292|0;p=a+420|0;q=d+8|0;r=a+424|0;s=d+24|0;t=k[n>>2]|0;u=m;v=i;a:while(1){if(t>>>0>e>>>0)w=u;else{x=t;do{y=k[o>>2]|0;if((y|0)>0)if(x>>>0<e>>>0){z=y;A=0;B=0;while(1){C=k[a+296+(B<<2)>>2]|0;D=C+4|0;E=k[(k[p>>2]|0)+4+(k[D>>2]<<2)>>2]|0;F=C+56|0;G=k[F>>2]|0;H=ha(k[C+68>>2]|0,x)|0;I=C+40|0;J=C+60|0;if((k[J>>2]|0)>0){K=C+76|0;L=G;M=A;N=0;O=ha(k[I>>2]|0,v)|0;while(1){if((k[q>>2]|0)>>>0>=g>>>0?(N+v|0)>=(k[K>>2]|0):0){qr(k[d+24+(M<<2)>>2]|0,0,L<<7|0)|0;P=k[F>>2]|0;if((P|0)>0){Q=k[d+24+(M+-1<<2)>>2]|0;R=0;do{j[k[d+24+(R+M<<2)>>2]>>1]=j[Q>>1]|0;R=R+1|0}while((R|0)<(P|0))}}else S=13;if(((S|0)==13?(S=0,ob[E&15](a,C,k[b+(k[D>>2]<<2)>>2]|0,k[d+24+(M<<2)>>2]|0,O,H,G),P=k[F>>2]|0,(P|0)>(G|0)):0)?(qr(k[d+24+(M+G<<2)>>2]|0,0,P-G<<7|0)|0,P=k[F>>2]|0,(G|0)<(P|0)):0){R=G;do{Q=R+M|0;j[k[d+24+(Q<<2)>>2]>>1]=j[k[d+24+(Q+-1<<2)>>2]>>1]|0;R=R+1|0}while((R|0)<(P|0))}L=k[F>>2]|0;P=L+M|0;N=N+1|0;if((N|0)>=(k[J>>2]|0)){T=P;break}else{M=P;O=(k[I>>2]|0)+O|0}}U=k[o>>2]|0;V=T}else{U=z;V=A}B=B+1|0;if((B|0)>=(U|0))break;else{z=U;A=V}}}else{A=y;z=0;B=0;while(1){O=k[a+296+(B<<2)>>2]|0;I=O+4|0;M=k[(k[p>>2]|0)+4+(k[I>>2]<<2)>>2]|0;J=O+56|0;N=k[O+72>>2]|0;L=ha(k[O+68>>2]|0,x)|0;F=O+40|0;G=O+60|0;if((k[G>>2]|0)>0){H=O+76|0;D=z;C=0;E=ha(k[F>>2]|0,v)|0;while(1){if((k[q>>2]|0)>>>0>=g>>>0?(C+v|0)>=(k[H>>2]|0):0){qr(k[d+24+(D<<2)>>2]|0,0,k[J>>2]<<7|0)|0;K=k[J>>2]|0;if((K|0)>0){P=k[d+24+(D+-1<<2)>>2]|0;R=0;do{j[k[d+24+(R+D<<2)>>2]>>1]=j[P>>1]|0;R=R+1|0}while((R|0)<(K|0));W=K}else W=K}else{ob[M&15](a,O,k[b+(k[I>>2]<<2)>>2]|0,k[d+24+(D<<2)>>2]|0,E,L,N);R=k[J>>2]|0;if((R|0)>(N|0)){qr(k[d+24+(D+N<<2)>>2]|0,0,R-N<<7|0)|0;P=k[J>>2]|0;if((N|0)<(P|0)){Q=N;do{X=Q+D|0;j[k[d+24+(X<<2)>>2]>>1]=j[k[d+24+(X+-1<<2)>>2]>>1]|0;Q=Q+1|0}while((Q|0)<(P|0));W=P}else W=P}else W=R}Q=W+D|0;C=C+1|0;if((C|0)>=(k[G>>2]|0)){Y=Q;break}else{D=Q;E=(k[F>>2]|0)+E|0}}Z=k[o>>2]|0;_=Y}else{Z=A;_=z}B=B+1|0;if((B|0)>=(Z|0))break;else{A=Z;z=_}}}if(!(yb[k[(k[r>>2]|0)+4>>2]&127](a,s)|0)){$=x;aa=v;break a}x=x+1|0}while(x>>>0<=e>>>0);w=k[l>>2]|0}k[n>>2]=0;v=v+1|0;if((v|0)>=(w|0)){S=38;break}else{t=0;u=w}}if((S|0)==38){ba=o;ca=q;da=k[c>>2]|0;break}k[h>>2]=aa;k[n>>2]=$;ea=0;return ea|0}else{ba=a+292|0;ca=d+8|0;da=d}while(0);k[ca>>2]=(k[ca>>2]|0)+1;do if((k[ba>>2]|0)<=1){ca=k[a+296>>2]|0;if((k[da+8>>2]|0)>>>0<((k[f>>2]|0)+-1|0)>>>0){k[da+20>>2]=k[ca+12>>2];break}else{k[da+20>>2]=k[ca+76>>2];break}}else k[da+20>>2]=1;while(0);k[da+12>>2]=0;k[da+16>>2]=0;ea=1;return ea|0}function _m(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,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;c=k[a+404>>2]|0;d=(k[a+288>>2]|0)+-1|0;e=a+76|0;if((k[e>>2]|0)<=0){f=$m(a,b)|0;return f|0}g=a+4|0;h=c+8|0;i=a+420|0;l=0;m=k[a+84>>2]|0;while(1){n=m+12|0;o=k[n>>2]|0;p=ha(o,k[h>>2]|0)|0;q=zb[k[(k[g>>2]|0)+32>>2]&3](a,k[c+64+(l<<2)>>2]|0,p,o,1)|0;o=k[h>>2]|0;if(o>>>0<d>>>0)r=k[n>>2]|0;else{p=k[n>>2]|0;s=((k[m+32>>2]|0)>>>0)%(p>>>0)|0;r=(s|0)==0?p:s}s=k[m+28>>2]|0;p=k[m+8>>2]|0;t=(s>>>0)%(p>>>0)|0;u=(t|0)>0?p-t|0:t;t=k[(k[i>>2]|0)+4+(l<<2)>>2]|0;if((r|0)>0){v=b+(l<<2)|0;w=m+40|0;x=(u|0)>0;y=u<<7;z=s+-1|0;A=0;do{B=k[q+(A<<2)>>2]|0;C=ha(k[w>>2]|0,A)|0;ob[t&15](a,m,k[v>>2]|0,B,C,0,s);if(x){qr(B+(s<<7)|0,0,y|0)|0;C=j[B+(z<<7)>>1]|0;D=0;do{j[B+(D+s<<7)>>1]=C;D=D+1|0}while((D|0)!=(u|0))}A=A+1|0}while((A|0)!=(r|0));E=k[h>>2]|0}else E=o;if((E|0)==(d|0)?(A=u+s|0,z=(A>>>0)/(p>>>0)|0,(r|0)<(k[n>>2]|0)):0){y=A<<7;A=(z|0)==0;x=p+-1|0;v=(p|0)>0;t=r;do{w=k[q+(t<<2)>>2]|0;D=k[q+(t+-1<<2)>>2]|0;qr(w|0,0,y|0)|0;if(!A){C=0;B=D;D=w;while(1){w=j[B+(x<<7)>>1]|0;if(v){F=0;do{j[D+(F<<7)>>1]=w;F=F+1|0}while((F|0)!=(p|0))}C=C+1|0;if(C>>>0>=z>>>0)break;else{B=B+(p<<7)|0;D=D+(p<<7)|0}}}t=t+1|0}while((t|0)<(k[n>>2]|0))}l=l+1|0;if((l|0)>=(k[e>>2]|0))break;else m=m+88|0}f=$m(a,b)|0;return f|0}function $m(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=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;b=r;r=r+16|0;c=b;d=a+404|0;e=k[d>>2]|0;f=a+292|0;g=k[f>>2]|0;if((g|0)>0){h=a+4|0;i=e+8|0;j=0;do{l=k[a+296+(j<<2)>>2]|0;m=k[l+12>>2]|0;n=ha(m,k[i>>2]|0)|0;o=zb[k[(k[h>>2]|0)+32>>2]&3](a,k[e+64+(k[l+4>>2]<<2)>>2]|0,n,m,0)|0;k[c+(j<<2)>>2]=o;j=j+1|0;o=k[f>>2]|0}while((j|0)<(o|0));p=o}else p=g;g=e+16|0;j=k[g>>2]|0;h=e+20|0;i=k[h>>2]|0;do if((j|0)<(i|0)){o=e+12|0;m=a+312|0;n=a+424|0;l=e+24|0;q=i;s=k[o>>2]|0;t=k[m>>2]|0;u=j;a:while(1){if(s>>>0<t>>>0){v=s;while(1){w=k[f>>2]|0;if((w|0)>0){x=0;y=0;while(1){z=k[a+296+(y<<2)>>2]|0;A=k[z+56>>2]|0;B=ha(A,v)|0;C=k[z+60>>2]|0;if((C|0)>0){z=k[c+(y<<2)>>2]|0;D=(A|0)>0;E=(A|0)>1?A:1;F=x;G=0;while(1){if(D){H=F;I=(k[z+(G+u<<2)>>2]|0)+(B<<7)|0;J=0;while(1){k[e+24+(H<<2)>>2]=I;J=J+1|0;if((J|0)>=(A|0))break;else{H=H+1|0;I=I+128|0}}K=F+E|0}else K=F;G=G+1|0;if((G|0)>=(C|0)){L=K;break}else F=K}}else L=x;y=y+1|0;if((y|0)>=(w|0))break;else x=L}}if(!(yb[k[(k[n>>2]|0)+4>>2]&127](a,l)|0)){M=v;N=u;break a}v=v+1|0;x=k[m>>2]|0;if(v>>>0>=x>>>0){O=x;break}}P=O;Q=k[h>>2]|0}else{P=t;Q=q}k[o>>2]=0;u=u+1|0;if((u|0)>=(Q|0)){R=21;break}else{q=Q;s=0;t=P}}if((R|0)==21){S=k[f>>2]|0;break}k[g>>2]=N;k[o>>2]=M;T=0;r=b;return T|0}else S=p;while(0);p=e+8|0;k[p>>2]=(k[p>>2]|0)+1;p=k[d>>2]|0;do if((S|0)<=1){d=k[a+296>>2]|0;if((k[p+8>>2]|0)>>>0<((k[a+288>>2]|0)+-1|0)>>>0){k[p+20>>2]=k[d+12>>2];break}else{k[p+20>>2]=k[d+76>>2];break}}else k[p+20>>2]=1;while(0);k[p+12>>2]=0;k[p+16>>2]=0;T=1;r=b;return T|0}function an(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=nb[k[k[a+4>>2]>>2]&63](a,1,12)|0;k[a+412>>2]=b;k[b>>2]=58;c=a+40|0;switch(k[c>>2]|0){case 1:{if((k[a+36>>2]|0)!=1){d=k[a>>2]|0;k[d+20>>2]=10;qb[k[d>>2]&127](a)}break}case 6:case 2:{if((k[a+36>>2]|0)!=3){d=k[a>>2]|0;k[d+20>>2]=10;qb[k[d>>2]&127](a)}break}case 7:case 3:{if((k[a+36>>2]|0)!=3){d=k[a>>2]|0;k[d+20>>2]=10;qb[k[d>>2]&127](a)}break}case 5:case 4:{if((k[a+36>>2]|0)!=4){d=k[a>>2]|0;k[d+20>>2]=10;qb[k[d>>2]&127](a)}break}default:if((k[a+36>>2]|0)<1){d=k[a>>2]|0;k[d+20>>2]=10;qb[k[d>>2]&127](a)}}d=a+260|0;e=a+80|0;a:do if(k[d>>2]|0){switch(k[e>>2]|0){case 6:case 2:{break a;break}default:{}}f=k[a>>2]|0;k[f+20>>2]=28;qb[k[f>>2]&127](a)}while(0);f=k[e>>2]|0;switch(f|0){case 1:{if((k[a+76>>2]|0)!=1){g=k[a>>2]|0;k[g+20>>2]=11;qb[k[g>>2]&127](a)}switch(k[c>>2]|0){case 7:case 3:case 1:{k[b+4>>2]=2;return}case 2:{k[b>>2]=59;k[b+4>>2]=3;return}default:{g=k[a>>2]|0;k[g+20>>2]=28;qb[k[g>>2]&127](a);return}}break}case 6:case 2:{if((k[a+76>>2]|0)==3)h=f;else{g=k[a>>2]|0;k[g+20>>2]=11;qb[k[g>>2]&127](a);h=k[e>>2]|0}if((k[c>>2]|0)!=(h|0)){h=k[a>>2]|0;k[h+20>>2]=28;qb[k[h>>2]&127](a);return}switch(k[d>>2]|0){case 0:{k[b+4>>2]=4;return}case 1:{k[b+4>>2]=5;return}default:{d=k[a>>2]|0;k[d+20>>2]=28;qb[k[d>>2]&127](a);return}}break}case 3:{if((k[a+76>>2]|0)!=3){d=k[a>>2]|0;k[d+20>>2]=11;qb[k[d>>2]&127](a)}switch(k[c>>2]|0){case 2:{k[b>>2]=59;k[b+4>>2]=6;return}case 3:{k[b+4>>2]=7;return}default:{d=k[a>>2]|0;k[d+20>>2]=28;qb[k[d>>2]&127](a);return}}break}case 7:{if((k[a+76>>2]|0)!=3){d=k[a>>2]|0;k[d+20>>2]=11;qb[k[d>>2]&127](a)}switch(k[c>>2]|0){case 2:{d=k[a+84>>2]|0;k[d+140>>2]=1;k[d+228>>2]=1;k[b>>2]=59;k[b+4>>2]=6;return}case 3:{d=k[a+84>>2]|0;k[d+140>>2]=1;k[d+228>>2]=1;break}case 7:break;default:{d=k[a>>2]|0;k[d+20>>2]=28;qb[k[d>>2]&127](a);return}}k[b+4>>2]=7;return}case 4:{if((k[a+76>>2]|0)!=4){d=k[a>>2]|0;k[d+20>>2]=11;qb[k[d>>2]&127](a)}if((k[c>>2]|0)==4){k[b+4>>2]=7;return}else{d=k[a>>2]|0;k[d+20>>2]=28;qb[k[d>>2]&127](a);return}break}case 5:{if((k[a+76>>2]|0)!=4){d=k[a>>2]|0;k[d+20>>2]=11;qb[k[d>>2]&127](a)}switch(k[c>>2]|0){case 4:{k[b>>2]=59;k[b+4>>2]=8;return}case 5:{k[b+4>>2]=7;return}default:{d=k[a>>2]|0;k[d+20>>2]=28;qb[k[d>>2]&127](a);return}}break}default:{if(!((f|0)==(k[c>>2]|0)?(k[a+76>>2]|0)==(k[a+36>>2]|0):0)){c=k[a>>2]|0;k[c+20>>2]=28;qb[k[c>>2]&127](a)}k[b+4>>2]=7;return}}}function bn(a){a=a|0;return}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,j=0,l=0,m=0;f=k[a+36>>2]|0;g=k[a+28>>2]|0;if((e|0)<1|(g|0)==0)return;else{h=d;j=b;l=e}do{e=l;l=l+-1|0;b=j;j=j+4|0;d=k[(k[c>>2]|0)+(h<<2)>>2]|0;h=h+1|0;a=0;m=k[b>>2]|0;while(1){i[d+a>>0]=i[m>>0]|0;a=a+1|0;if((a|0)==(g|0))break;else m=m+f|0}}while((e|0)>1);return}function dn(a){a=a|0;var b=0,c=0;b=k[a+412>>2]|0;c=nb[k[k[a+4>>2]>>2]&63](a,1,8192)|0;k[b+8>>2]=c;b=0;do{k[c+(b<<2)>>2]=b*19595;k[c+(b+256<<2)>>2]=b*38470;k[c+(b+512<<2)>>2]=(b*7471|0)+32768;a=ha(b,-11058)|0;k[c+(b+768<<2)>>2]=a;a=ha(b,-21710)|0;k[c+(b+1024<<2)>>2]=a;k[c+(b+1280<<2)>>2]=(b<<15)+8421375;a=ha(b,-27439)|0;k[c+(b+1536<<2)>>2]=a;a=ha(b,-5329)|0;k[c+(b+1792<<2)>>2]=a;b=b+1|0}while((b|0)!=256);return}function en(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,j=0,m=0,n=0;f=k[(k[a+412>>2]|0)+8>>2]|0;g=k[a+28>>2]|0;if((e|0)<1|(g|0)==0)return;else{h=d;j=b;m=e}do{e=m;m=m+-1|0;b=j;j=j+4|0;d=k[(k[c>>2]|0)+(h<<2)>>2]|0;h=h+1|0;a=0;n=k[b>>2]|0;while(1){i[d+a>>0]=((k[f+((l[n+1>>0]|0|256)<<2)>>2]|0)+(k[f+((l[n>>0]|0)<<2)>>2]|0)+(k[f+((l[n+2>>0]|0|512)<<2)>>2]|0)|0)>>>16;a=a+1|0;if((a|0)==(g|0))break;else n=n+3|0}}while((e|0)>1);return}function fn(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,j=0,l=0,m=0,n=0,o=0,p=0;f=k[a+28>>2]|0;if((e|0)<=0)return;a=c+4|0;g=c+8|0;if(!f)return;else{h=d;j=b;l=e}do{e=l;l=l+-1|0;b=j;j=j+4|0;d=k[(k[c>>2]|0)+(h<<2)>>2]|0;m=k[(k[a>>2]|0)+(h<<2)>>2]|0;n=k[(k[g>>2]|0)+(h<<2)>>2]|0;h=h+1|0;o=0;p=k[b>>2]|0;while(1){i[d+o>>0]=i[p>>0]|0;i[m+o>>0]=i[p+1>>0]|0;i[n+o>>0]=i[p+2>>0]|0;o=o+1|0;if((o|0)==(f|0))break;else p=p+3|0}}while((e|0)>1);return}function gn(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=k[a+28>>2]|0;if((e|0)<=0)return;a=c+4|0;g=c+8|0;if(!f)return;else{h=d;j=b;m=e}do{e=m;m=m+-1|0;b=j;j=j+4|0;d=k[(k[c>>2]|0)+(h<<2)>>2]|0;n=k[(k[a>>2]|0)+(h<<2)>>2]|0;o=k[(k[g>>2]|0)+(h<<2)>>2]|0;h=h+1|0;p=0;q=k[b>>2]|0;while(1){b=i[q+1>>0]|0;r=b&255;s=l[q+2>>0]|0;i[d+p>>0]=(l[q>>0]|0)+128-r;i[n+p>>0]=b;i[o+p>>0]=128-r+s;p=p+1|0;if((p|0)==(f|0))break;else q=q+3|0}}while((e|0)>1);return}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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=k[(k[a+412>>2]|0)+8>>2]|0;g=k[a+28>>2]|0;if((e|0)<=0)return;a=c+4|0;h=c+8|0;j=(g|0)==0;m=d;d=b;b=e;do{e=b;b=b+-1|0;n=d;d=d+4|0;o=k[(k[c>>2]|0)+(m<<2)>>2]|0;p=k[(k[a>>2]|0)+(m<<2)>>2]|0;q=k[(k[h>>2]|0)+(m<<2)>>2]|0;m=m+1|0;if(!j){r=0;s=k[n>>2]|0;while(1){n=l[s>>0]|0;t=l[s+1>>0]|0;u=l[s+2>>0]|0;i[o+r>>0]=((k[f+((t|256)<<2)>>2]|0)+(k[f+(n<<2)>>2]|0)+(k[f+((u|512)<<2)>>2]|0)|0)>>>16;i[p+r>>0]=((k[f+((t|1024)<<2)>>2]|0)+(k[f+((n|768)<<2)>>2]|0)+(k[f+((u|1280)<<2)>>2]|0)|0)>>>16;i[q+r>>0]=((k[f+((t|1536)<<2)>>2]|0)+(k[f+((n|1280)<<2)>>2]|0)+(k[f+((u|1792)<<2)>>2]|0)|0)>>>16;r=r+1|0;if((r|0)==(g|0))break;else s=s+3|0}}}while((e|0)>1);return}function jn(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,j=0,l=0,m=0,n=0,o=0;f=k[a+76>>2]|0;g=k[a+28>>2]|0;if((e|0)<=0)return;a=(f|0)>0;h=(g|0)==0;j=b;b=d;d=e;while(1){e=d;d=d+-1|0;if(a){l=0;do{if(!h){m=0;n=(k[j>>2]|0)+l|0;o=k[(k[c+(l<<2)>>2]|0)+(b<<2)>>2]|0;while(1){i[o>>0]=i[n>>0]|0;m=m+1|0;if((m|0)==(g|0))break;else{n=n+f|0;o=o+1|0}}}l=l+1|0}while((l|0)!=(f|0))}if((e|0)<=1)break;else{j=j+4|0;b=b+1|0}}return}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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;f=k[(k[a+412>>2]|0)+8>>2]|0;g=k[a+28>>2]|0;if((e|0)<=0)return;a=c+4|0;h=c+8|0;j=c+12|0;m=(g|0)==0;n=d;d=b;b=e;do{e=b;b=b+-1|0;o=d;d=d+4|0;p=k[(k[c>>2]|0)+(n<<2)>>2]|0;q=k[(k[a>>2]|0)+(n<<2)>>2]|0;r=k[(k[h>>2]|0)+(n<<2)>>2]|0;s=k[(k[j>>2]|0)+(n<<2)>>2]|0;n=n+1|0;if(!m){t=0;u=k[o>>2]|0;while(1){o=(l[u>>0]|0)^255;v=(l[u+1>>0]|0)^255;w=(l[u+2>>0]|0)^255;i[s+t>>0]=i[u+3>>0]|0;i[p+t>>0]=((k[f+((v|256)<<2)>>2]|0)+(k[f+(o<<2)>>2]|0)+(k[f+((w|512)<<2)>>2]|0)|0)>>>16;i[q+t>>0]=((k[f+((v|1024)<<2)>>2]|0)+(k[f+((o|768)<<2)>>2]|0)+(k[f+((w|1280)<<2)>>2]|0)|0)>>>16;i[r+t>>0]=((k[f+((v|1536)<<2)>>2]|0)+(k[f+((o|1280)<<2)>>2]|0)+(k[f+((w|1792)<<2)>>2]|0)|0)>>>16;t=t+1|0;if((t|0)==(g|0))break;else u=u+4|0}}}while((e|0)>1);return}function ln(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,124)|0;k[a+420>>2]=c;k[c>>2]=60;c=a+76|0;if((k[c>>2]|0)<=0)return;d=0;e=k[a+84>>2]|0;while(1){f=nb[k[k[b>>2]>>2]&63](a,1,256)|0;k[e+84>>2]=f;d=d+1|0;if((d|0)>=(k[c>>2]|0))break;else e=e+88|0}return}function mn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,q=0,r=0,s=0,t=0.0,u=0.0;b=k[a+420>>2]|0;c=a+76|0;if((k[c>>2]|0)<=0)return;d=a+232|0;e=0;f=k[a+84>>2]|0;g=0;while(1){h=k[f+36>>2]|0;i=f+40|0;a:do switch((h<<8)+(k[i>>2]|0)|0){case 257:{k[b+44+(e<<2)>>2]=45;l=0;break}case 514:{k[b+44+(e<<2)>>2]=46;l=0;break}case 771:{k[b+44+(e<<2)>>2]=47;l=0;break}case 1028:{k[b+44+(e<<2)>>2]=48;l=0;break}case 1285:{k[b+44+(e<<2)>>2]=49;l=0;break}case 1542:{k[b+44+(e<<2)>>2]=50;l=0;break}case 1799:{k[b+44+(e<<2)>>2]=51;l=0;break}case 2313:{k[b+44+(e<<2)>>2]=52;l=0;break}case 2570:{k[b+44+(e<<2)>>2]=53;l=0;break}case 2827:{k[b+44+(e<<2)>>2]=54;l=0;break}case 3084:{k[b+44+(e<<2)>>2]=55;l=0;break}case 3341:{k[b+44+(e<<2)>>2]=56;l=0;break}case 3598:{k[b+44+(e<<2)>>2]=57;l=0;break}case 3855:{k[b+44+(e<<2)>>2]=58;l=0;break}case 4112:{k[b+44+(e<<2)>>2]=59;l=0;break}case 4104:{k[b+44+(e<<2)>>2]=60;l=0;break}case 3591:{k[b+44+(e<<2)>>2]=61;l=0;break}case 3078:{k[b+44+(e<<2)>>2]=62;l=0;break}case 2565:{k[b+44+(e<<2)>>2]=63;l=0;break}case 2052:{k[b+44+(e<<2)>>2]=64;l=0;break}case 1539:{k[b+44+(e<<2)>>2]=65;l=0;break}case 1026:{k[b+44+(e<<2)>>2]=66;l=0;break}case 513:{k[b+44+(e<<2)>>2]=67;l=0;break}case 2064:{k[b+44+(e<<2)>>2]=68;l=0;break}case 1806:{k[b+44+(e<<2)>>2]=69;l=0;break}case 1548:{k[b+44+(e<<2)>>2]=70;l=0;break}case 1290:{k[b+44+(e<<2)>>2]=71;l=0;break}case 1032:{k[b+44+(e<<2)>>2]=72;l=0;break}case 774:{k[b+44+(e<<2)>>2]=73;l=0;break}case 516:{k[b+44+(e<<2)>>2]=74;l=0;break}case 258:{k[b+44+(e<<2)>>2]=75;l=0;break}case 2056:{switch(k[d>>2]|0){case 0:{k[b+44+(e<<2)>>2]=76;l=0;break a;break}case 1:{k[b+44+(e<<2)>>2]=77;l=1;break a;break}case 2:{k[b+84+(e<<2)>>2]=78;l=2;break a;break}default:{n=k[a>>2]|0;k[n+20>>2]=49;qb[k[n>>2]&127](a);l=g;break a}}break}default:{n=k[a>>2]|0;k[n+20>>2]=7;k[n+24>>2]=h;k[n+28>>2]=k[i>>2];qb[k[n>>2]&127](a);l=g}}while(0);i=k[f+16>>2]|0;h=a+88+(i<<2)|0;if(i>>>0<=3?(n=k[h>>2]|0,(n|0)!=0):0)q=n;else{n=k[a>>2]|0;k[n+20>>2]=54;k[n+24>>2]=i;qb[k[n>>2]&127](a);q=k[h>>2]|0}switch(l|0){case 0:{h=k[f+84>>2]|0;n=(k[f+52>>2]|0)!=0?4:3;i=0;do{k[h+(i<<2)>>2]=m[q+(i<<1)>>1]<<n;i=i+1|0}while((i|0)!=64);k[b+4+(e<<2)>>2]=9;break}case 1:{i=k[f+84>>2]|0;n=(k[f+52>>2]|0)!=0?10:11;h=1<<n+-1;r=0;do{s=h+(ha(j[128808+(r<<1)>>1]|0,m[q+(r<<1)>>1]|0)|0)>>n;k[i+(r<<2)>>2]=s;r=r+1|0}while((r|0)!=64);k[b+4+(e<<2)>>2]=9;break}case 2:{r=k[f+84>>2]|0;t=(k[f+52>>2]|0)!=0?16.0:8.0;i=0;n=0;while(1){u=+p[8+(n<<3)>>3];o[r+(i<<2)>>2]=1.0/(+(m[q+(i<<1)>>1]|0)*u*t);h=i|1;o[r+(h<<2)>>2]=1.0/(+(m[q+(h<<1)>>1]|0)*u*1.387039845*t);s=h+1|0;o[r+(s<<2)>>2]=1.0/(+(m[q+(s<<1)>>1]|0)*u*1.306562965*t);s=i|3;o[r+(s<<2)>>2]=1.0/(+(m[q+(s<<1)>>1]|0)*u*1.175875602*t);h=s+1|0;o[r+(h<<2)>>2]=1.0/(+(m[q+(h<<1)>>1]|0)*u*t);h=s+2|0;o[r+(h<<2)>>2]=1.0/(+(m[q+(h<<1)>>1]|0)*u*.785694958*t);h=s+3|0;o[r+(h<<2)>>2]=1.0/(+(m[q+(h<<1)>>1]|0)*u*.5411961*t);h=i|7;o[r+(h<<2)>>2]=1.0/(+(m[q+(h<<1)>>1]|0)*u*.275899379*t);n=n+1|0;if((n|0)==8)break;else i=i+8|0}k[b+4+(e<<2)>>2]=10;break}default:{i=k[a>>2]|0;k[i+20>>2]=49;qb[k[i>>2]&127](a)}}e=e+1|0;if((e|0)>=(k[c>>2]|0))break;else{f=f+88|0;g=l}}return}function nn(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;h=r;r=r+256|0;i=h;l=k[(k[a+420>>2]|0)+44+(k[b+4>>2]<<2)>>2]|0;a=k[b+84>>2]|0;m=c+(e<<2)|0;if(!g){r=h;return}e=b+36|0;b=f;f=0;while(1){vb[l&127](i,m,b);c=0;do{n=k[a+(c<<2)>>2]|0;o=k[i+(c<<2)>>2]|0;p=n>>1;if((o|0)>=0){q=o+p|0;if((q|0)<(n|0))s=0;else s=(q|0)/(n|0)|0}else{q=p-o|0;if((q|0)<(n|0))t=0;else t=(q|0)/(n|0)|0;s=0-t|0}j[d+(f<<7)+(c<<1)>>1]=s;c=c+1|0}while((c|0)!=64);f=f+1|0;if((f|0)==(g|0))break;else b=(k[e>>2]|0)+b|0}r=h;return}function on(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,l=0,m=0;h=r;r=r+256|0;i=h;l=k[(k[a+420>>2]|0)+84+(k[b+4>>2]<<2)>>2]|0;a=k[b+84>>2]|0;m=c+(e<<2)|0;if(!g){r=h;return}e=b+36|0;b=f;f=0;while(1){vb[l&127](i,m,b);c=0;do{j[d+(f<<7)+(c<<1)>>1]=~~(+o[i+(c<<2)>>2]*+o[a+(c<<2)>>2]+16384.5)+49152;c=c+1|0}while((c|0)!=64);f=f+1|0;if((f|0)==(g|0))break;else b=(k[e>>2]|0)+b|0}r=h;return}function pn(a){a=a|0;var b=0;b=nb[k[k[a+4>>2]>>2]&63](a,1,140)|0;k[a+424>>2]=b;k[b>>2]=18;k[b+60>>2]=0;k[b+44>>2]=0;k[b+92>>2]=0;k[b+76>>2]=0;k[b+64>>2]=0;k[b+48>>2]=0;k[b+96>>2]=0;k[b+80>>2]=0;k[b+68>>2]=0;k[b+52>>2]=0;k[b+100>>2]=0;k[b+84>>2]=0;k[b+72>>2]=0;k[b+56>>2]=0;k[b+104>>2]=0;k[b+88>>2]=0;if(!(k[a+268>>2]|0))return;k[b+136>>2]=0;return}function qn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;c=k[a+424>>2]|0;d=(b|0)!=0;k[c+8>>2]=d?61:62;do if(!(k[a+268>>2]|0)){e=c+4|0;if(d){k[e>>2]=54;break}else{k[e>>2]=55;break}}else{k[c+120>>2]=a;k[c+108>>2]=b;e=(k[a+364>>2]|0)==0;f=c+4|0;do if(!(k[a+372>>2]|0))if(e){k[f>>2]=50;break}else{k[f>>2]=51;break}else{if(e){k[f>>2]=52;break}k[f>>2]=53;g=c+136|0;if(!(k[g>>2]|0)){h=nb[k[k[a+4>>2]>>2]&63](a,1,1e3)|0;k[g>>2]=h}}while(0);k[c+124>>2]=k[(k[a+296>>2]|0)+24>>2];k[c+128>>2]=0;k[c+132>>2]=0}while(0);b=a+292|0;if((k[b>>2]|0)<=0){i=c+12|0;k[i>>2]=0;j=c+16|0;k[j>>2]=0;l=a+236|0;m=k[l>>2]|0;n=c+36|0;k[n>>2]=m;o=c+40|0;k[o>>2]=0;return}f=a+364|0;e=a+372|0;h=a+4|0;g=a+368|0;if(d)p=0;else{d=0;do{q=k[a+296+(d<<2)>>2]|0;if((k[f>>2]|0)==0?(k[e>>2]|0)==0:0){r=k[q+20>>2]|0;zn(a,1,r,c+44+(r<<2)|0);k[c+20+(d<<2)>>2]=0}if(k[g>>2]|0){r=k[q+24>>2]|0;zn(a,0,r,c+60+(r<<2)|0)}d=d+1|0}while((d|0)<(k[b>>2]|0));i=c+12|0;k[i>>2]=0;j=c+16|0;k[j>>2]=0;l=a+236|0;m=k[l>>2]|0;n=c+36|0;k[n>>2]=m;o=c+40|0;k[o>>2]=0;return}do{d=k[a+296+(p<<2)>>2]|0;if((k[f>>2]|0)==0?(k[e>>2]|0)==0:0){r=k[d+20>>2]|0;if(r>>>0>3){q=k[a>>2]|0;k[q+20>>2]=52;k[q+24>>2]=r;qb[k[q>>2]&127](a)}q=c+76+(r<<2)|0;r=k[q>>2]|0;if(!r){s=nb[k[k[h>>2]>>2]&63](a,1,1028)|0;k[q>>2]=s;t=s}else t=r;qr(t|0,0,1028)|0;k[c+20+(p<<2)>>2]=0}if(k[g>>2]|0){r=k[d+24>>2]|0;if(r>>>0>3){d=k[a>>2]|0;k[d+20>>2]=52;k[d+24>>2]=r;qb[k[d>>2]&127](a)}d=c+92+(r<<2)|0;r=k[d>>2]|0;if(!r){s=nb[k[k[h>>2]>>2]&63](a,1,1028)|0;k[d>>2]=s;u=s}else u=r;qr(u|0,0,1028)|0}p=p+1|0}while((p|0)<(k[b>>2]|0));i=c+12|0;k[i>>2]=0;j=c+16|0;k[j>>2]=0;l=a+236|0;m=k[l>>2]|0;n=c+36|0;k[n>>2]=m;o=c+40|0;k[o>>2]=0;return}function rn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=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=r;r=r+32|0;c=b+16|0;d=b;e=k[a+424>>2]|0;if((k[a+268>>2]|0)!=0?(f=e+128|0,g=k[f>>2]|0,(g|0)!=0):0){h=0;j=g;while(1){j=j>>1;if(!j){m=h;break}else h=h+1|0}if((m|0)>14){h=k[e+120>>2]|0;j=k[h>>2]|0;k[j+20>>2]=41;qb[k[j>>2]&127](h)}h=k[e+124>>2]|0;j=m<<4;g=e+108|0;do if(!(k[g>>2]|0)){n=k[e+60+(h<<2)>>2]|0;o=k[n+(j<<2)>>2]|0;p=i[n+1024+j>>0]|0;n=p<<24>>24;if(p<<24>>24==0?(p=k[e+120>>2]|0,q=k[p>>2]|0,k[q+20>>2]=41,qb[k[q>>2]&127](p),(k[g>>2]|0)!=0):0)break;p=e+16|0;q=(k[p>>2]|0)+n|0;s=e+12|0;t=((1<<n)+-1&o)<<24-q|k[s>>2];if((q|0)>7){o=e+112|0;n=e+116|0;u=e+120|0;v=q;w=t;while(1){x=w>>>16;y=x&255;z=k[o>>2]|0;k[o>>2]=z+1;i[z>>0]=x;x=(k[n>>2]|0)+-1|0;k[n>>2]=x;if(!x){x=k[u>>2]|0;z=k[x+24>>2]|0;if(!(ub[k[z+12>>2]&63](x)|0)){x=k[u>>2]|0;A=k[x>>2]|0;k[A+20>>2]=25;qb[k[A>>2]&127](x)}k[o>>2]=k[z>>2];k[n>>2]=k[z+4>>2]}if((y|0)==255?(y=k[o>>2]|0,k[o>>2]=y+1,i[y>>0]=0,y=(k[n>>2]|0)+-1|0,k[n>>2]=y,(y|0)==0):0){y=k[u>>2]|0;z=k[y+24>>2]|0;if(!(ub[k[z+12>>2]&63](y)|0)){y=k[u>>2]|0;x=k[y>>2]|0;k[x+20>>2]=25;qb[k[x>>2]&127](y)}k[o>>2]=k[z>>2];k[n>>2]=k[z+4>>2]}z=w<<8;v=v+-8|0;if((v|0)<=7){B=z;break}else w=z}C=q&7;D=B}else{C=q;D=t}k[s>>2]=D;k[p>>2]=C}else{w=(k[e+92+(h<<2)>>2]|0)+(j<<2)|0;k[w>>2]=(k[w>>2]|0)+1}while(0);if((m|0)!=0?(k[g>>2]|0)==0:0){j=e+16|0;h=(k[j>>2]|0)+m|0;C=e+12|0;D=(k[f>>2]&(1<<m)+-1)<<24-h|k[C>>2];if((h|0)>7){m=e+112|0;B=e+116|0;w=e+120|0;v=h;n=D;while(1){o=n>>>16;u=o&255;z=k[m>>2]|0;k[m>>2]=z+1;i[z>>0]=o;o=(k[B>>2]|0)+-1|0;k[B>>2]=o;if(!o){o=k[w>>2]|0;z=k[o+24>>2]|0;if(!(ub[k[z+12>>2]&63](o)|0)){o=k[w>>2]|0;y=k[o>>2]|0;k[y+20>>2]=25;qb[k[y>>2]&127](o)}k[m>>2]=k[z>>2];k[B>>2]=k[z+4>>2]}if((u|0)==255?(u=k[m>>2]|0,k[m>>2]=u+1,i[u>>0]=0,u=(k[B>>2]|0)+-1|0,k[B>>2]=u,(u|0)==0):0){u=k[w>>2]|0;z=k[u+24>>2]|0;if(!(ub[k[z+12>>2]&63](u)|0)){u=k[w>>2]|0;o=k[u>>2]|0;k[o+20>>2]=25;qb[k[o>>2]&127](u)}k[m>>2]=k[z>>2];k[B>>2]=k[z+4>>2]}z=n<<8;v=v+-8|0;if((v|0)<=7){E=z;break}else n=z}F=h&7;G=E}else{F=h;G=D}k[C>>2]=G;k[j>>2]=F}k[f>>2]=0;f=e+132|0;F=k[f>>2]|0;a:do if((F|0)!=0&(k[g>>2]|0)==0){j=e+16|0;G=e+12|0;C=e+112|0;D=e+116|0;h=e+120|0;E=F;n=k[e+136>>2]|0;v=0;while(1){if(!v){B=k[j>>2]|0;m=B+1|0;w=((l[n>>0]|0)&1)<<23-B|k[G>>2];if((m|0)>7){B=m;z=w;while(1){u=z>>>16;o=u&255;y=k[C>>2]|0;k[C>>2]=y+1;i[y>>0]=u;u=(k[D>>2]|0)+-1|0;k[D>>2]=u;if(!u){u=k[h>>2]|0;y=k[u+24>>2]|0;if(!(ub[k[y+12>>2]&63](u)|0)){u=k[h>>2]|0;x=k[u>>2]|0;k[x+20>>2]=25;qb[k[x>>2]&127](u)}k[C>>2]=k[y>>2];k[D>>2]=k[y+4>>2]}if((o|0)==255?(o=k[C>>2]|0,k[C>>2]=o+1,i[o>>0]=0,o=(k[D>>2]|0)+-1|0,k[D>>2]=o,(o|0)==0):0){o=k[h>>2]|0;y=k[o+24>>2]|0;if(!(ub[k[y+12>>2]&63](o)|0)){o=k[h>>2]|0;u=k[o>>2]|0;k[u+20>>2]=25;qb[k[u>>2]&127](o)}k[C>>2]=k[y>>2];k[D>>2]=k[y+4>>2]}y=z<<8;B=B+-8|0;if((B|0)<=7){H=y;break}else z=y}I=m&7;J=H}else{I=m;J=w}k[G>>2]=J;k[j>>2]=I}z=E+-1|0;if(!z)break a;E=z;n=n+1|0;v=k[g>>2]|0}}while(0);k[f>>2]=0};k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;f=a+292|0;if((k[f>>2]|0)<=0){r=b;return}g=a+364|0;I=a+372|0;J=a+368|0;H=0;do{F=k[a+296+(H<<2)>>2]|0;if(((k[g>>2]|0)==0?(k[I>>2]|0)==0:0)?(v=k[F+20>>2]|0,n=c+(v<<2)|0,(k[n>>2]|0)==0):0){E=a+120+(v<<2)|0;j=k[E>>2]|0;if(!j){G=Dk(a)|0;k[E>>2]=G;K=G}else K=j;Cn(a,K,k[e+76+(v<<2)>>2]|0);k[n>>2]=1}if((k[J>>2]|0)!=0?(n=k[F+24>>2]|0,F=d+(n<<2)|0,(k[F>>2]|0)==0):0){v=a+136+(n<<2)|0;j=k[v>>2]|0;if(!j){G=Dk(a)|0;k[v>>2]=G;L=G}else L=j;Cn(a,L,k[e+92+(n<<2)>>2]|0);k[F>>2]=1}H=H+1|0}while((H|0)<(k[f>>2]|0));r=b;return}function sn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=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;b=r;r=r+16|0;c=b;d=k[a+424>>2]|0;e=a+24|0;f=k[e>>2]|0;g=k[f>>2]|0;if(!(k[a+268>>2]|0)){h=k[f+4>>2]|0;j=d+12|0;m=k[j>>2]|0;n=d+16|0;o=k[n>>2]|0;p=d+20|0;k[c>>2]=k[p>>2];k[c+4>>2]=k[p+4>>2];k[c+8>>2]=k[p+8>>2];k[c+12>>2]=k[p+12>>2];a:do if((o|0)>0){q=g;s=h;t=o+7|0;u=127<<17-o|m;while(1){v=u>>>16;w=v&255;x=q;y=x+1|0;i[x>>0]=v;v=s+-1|0;if(!v){x=k[e>>2]|0;if(!(ub[k[x+12>>2]&63](a)|0)){z=y;break}A=k[x>>2]|0;B=k[x+4>>2]|0}else{A=y;B=v}if((w|0)==255){w=A;v=w+1|0;i[w>>0]=0;w=B+-1|0;if(!w){y=k[e>>2]|0;if(!(ub[k[y+12>>2]&63](a)|0)){z=v;break}C=k[y+4>>2]|0;D=k[y>>2]|0}else{C=w;D=v}}else{C=B;D=A}t=t+-8|0;if((t|0)<=7){E=D;F=C;G=0;H=0;break a}else{q=D;s=C;u=u<<8}}u=k[a>>2]|0;k[u+20>>2]=25;qb[k[u>>2]&127](a);E=z;F=0;G=m;H=o}else{E=g;F=h;G=0;H=0}while(0);h=k[e>>2]|0;k[h>>2]=E;k[h+4>>2]=F;k[j>>2]=G;k[n>>2]=H;k[p>>2]=k[c>>2];k[p+4>>2]=k[c+4>>2];k[p+8>>2]=k[c+8>>2];k[p+12>>2]=k[c+12>>2];r=b;return}c=d+112|0;k[c>>2]=g;g=d+116|0;k[g>>2]=k[f+4>>2];f=d+128|0;p=k[f>>2]|0;if(p){H=0;n=p;while(1){n=n>>1;if(!n){I=H;break}else H=H+1|0}if((I|0)>14){H=k[d+120>>2]|0;n=k[H>>2]|0;k[n+20>>2]=41;qb[k[n>>2]&127](H)}H=k[d+124>>2]|0;n=I<<4;p=d+108|0;do if(!(k[p>>2]|0)){G=k[d+60+(H<<2)>>2]|0;j=k[G+(n<<2)>>2]|0;F=i[G+1024+n>>0]|0;G=F<<24>>24;if(F<<24>>24==0?(F=k[d+120>>2]|0,h=k[F>>2]|0,k[h+20>>2]=41,qb[k[h>>2]&127](F),(k[p>>2]|0)!=0):0)break;F=d+16|0;h=(k[F>>2]|0)+G|0;E=d+12|0;o=((1<<G)+-1&j)<<24-h|k[E>>2];if((h|0)>7){j=d+120|0;G=h;m=o;while(1){z=m>>>16;a=z&255;C=k[c>>2]|0;k[c>>2]=C+1;i[C>>0]=z;z=(k[g>>2]|0)+-1|0;k[g>>2]=z;if(!z){z=k[j>>2]|0;C=k[z+24>>2]|0;if(!(ub[k[C+12>>2]&63](z)|0)){z=k[j>>2]|0;D=k[z>>2]|0;k[D+20>>2]=25;qb[k[D>>2]&127](z)}k[c>>2]=k[C>>2];k[g>>2]=k[C+4>>2]}if((a|0)==255?(a=k[c>>2]|0,k[c>>2]=a+1,i[a>>0]=0,a=(k[g>>2]|0)+-1|0,k[g>>2]=a,(a|0)==0):0){a=k[j>>2]|0;C=k[a+24>>2]|0;if(!(ub[k[C+12>>2]&63](a)|0)){a=k[j>>2]|0;z=k[a>>2]|0;k[z+20>>2]=25;qb[k[z>>2]&127](a)}k[c>>2]=k[C>>2];k[g>>2]=k[C+4>>2]}C=m<<8;G=G+-8|0;if((G|0)<=7){J=C;break}else m=C}K=h&7;L=J}else{K=h;L=o}k[E>>2]=L;k[F>>2]=K}else{m=(k[d+92+(H<<2)>>2]|0)+(n<<2)|0;k[m>>2]=(k[m>>2]|0)+1}while(0);if((I|0)!=0?(k[p>>2]|0)==0:0){n=d+16|0;H=(k[n>>2]|0)+I|0;K=d+12|0;L=(k[f>>2]&(1<<I)+-1)<<24-H|k[K>>2];if((H|0)>7){I=d+120|0;J=H;m=L;while(1){G=m>>>16;j=G&255;C=k[c>>2]|0;k[c>>2]=C+1;i[C>>0]=G;G=(k[g>>2]|0)+-1|0;k[g>>2]=G;if(!G){G=k[I>>2]|0;C=k[G+24>>2]|0;if(!(ub[k[C+12>>2]&63](G)|0)){G=k[I>>2]|0;a=k[G>>2]|0;k[a+20>>2]=25;qb[k[a>>2]&127](G)}k[c>>2]=k[C>>2];k[g>>2]=k[C+4>>2]}if((j|0)==255?(j=k[c>>2]|0,k[c>>2]=j+1,i[j>>0]=0,j=(k[g>>2]|0)+-1|0,k[g>>2]=j,(j|0)==0):0){j=k[I>>2]|0;C=k[j+24>>2]|0;if(!(ub[k[C+12>>2]&63](j)|0)){j=k[I>>2]|0;G=k[j>>2]|0;k[G+20>>2]=25;qb[k[G>>2]&127](j)}k[c>>2]=k[C>>2];k[g>>2]=k[C+4>>2]}C=m<<8;J=J+-8|0;if((J|0)<=7){M=C;break}else m=C}N=H&7;O=M}else{N=H;O=L}k[K>>2]=O;k[n>>2]=N}k[f>>2]=0;f=d+132|0;N=k[f>>2]|0;b:do if((N|0)!=0&(k[p>>2]|0)==0){n=d+16|0;O=d+12|0;K=d+120|0;L=N;H=k[d+136>>2]|0;M=0;while(1){if(!M){m=k[n>>2]|0;J=m+1|0;I=((l[H>>0]|0)&1)<<23-m|k[O>>2];if((J|0)>7){m=J;C=I;while(1){j=C>>>16;G=j&255;a=k[c>>2]|0;k[c>>2]=a+1;i[a>>0]=j;j=(k[g>>2]|0)+-1|0;k[g>>2]=j;if(!j){j=k[K>>2]|0;a=k[j+24>>2]|0;if(!(ub[k[a+12>>2]&63](j)|0)){j=k[K>>2]|0;z=k[j>>2]|0;k[z+20>>2]=25;qb[k[z>>2]&127](j)}k[c>>2]=k[a>>2];k[g>>2]=k[a+4>>2]}if((G|0)==255?(G=k[c>>2]|0,k[c>>2]=G+1,i[G>>0]=0,G=(k[g>>2]|0)+-1|0,k[g>>2]=G,(G|0)==0):0){G=k[K>>2]|0;a=k[G+24>>2]|0;if(!(ub[k[a+12>>2]&63](G)|0)){G=k[K>>2]|0;j=k[G>>2]|0;k[j+20>>2]=25;qb[k[j>>2]&127](G)}k[c>>2]=k[a>>2];k[g>>2]=k[a+4>>2]}a=C<<8;m=m+-8|0;if((m|0)<=7){P=a;break}else C=a}Q=J&7;R=P}else{Q=J;R=I}k[O>>2]=R;k[n>>2]=Q}C=L+-1|0;if(!C)break b;L=C;H=H+1|0;M=k[p>>2]|0}}while(0);k[f>>2]=0}Bn(d);d=k[e>>2]|0;k[d>>2]=k[c>>2];k[d+4>>2]=k[g>>2];r=b;return}function tn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,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;c=k[a+424>>2]|0;d=a+24|0;e=k[d>>2]|0;f=c+112|0;k[f>>2]=k[e>>2];g=c+116|0;k[g>>2]=k[e+4>>2];e=a+236|0;if((k[e>>2]|0)!=0?(k[c+36>>2]|0)==0:0)An(c,k[c+40>>2]|0);h=a+320|0;if((k[h>>2]|0)>0){l=a+376|0;m=c+108|0;n=c+120|0;o=c+16|0;p=c+12|0;q=0;do{r=k[a+324+(q<<2)>>2]|0;s=k[(k[a+296+(r<<2)>>2]|0)+20>>2]|0;t=j[k[b+(q<<2)>>2]>>1]>>k[l>>2];u=c+20+(r<<2)|0;r=t-(k[u>>2]|0)|0;k[u>>2]=t;t=(r>>31)+r|0;u=(r|0)<0?0-r|0:r;if(u){r=0;v=u;while(1){u=r+1|0;v=v>>1;if(!v){w=u;x=r;break}else r=u}if((x|0)>10){r=k[a>>2]|0;k[r+20>>2]=6;qb[k[r>>2]&127](a);y=w}else y=w}else y=0;do if(!(k[m>>2]|0)){r=k[c+44+(s<<2)>>2]|0;v=k[r+(y<<2)>>2]|0;u=i[r+1024+y>>0]|0;r=u<<24>>24;if(u<<24>>24==0?(u=k[n>>2]|0,z=k[u>>2]|0,k[z+20>>2]=41,qb[k[z>>2]&127](u),(k[m>>2]|0)!=0):0)break;u=(k[o>>2]|0)+r|0;z=((1<<r)+-1&v)<<24-u|k[p>>2];if((u|0)>7){v=u;r=z;while(1){A=r>>>16;B=A&255;C=k[f>>2]|0;k[f>>2]=C+1;i[C>>0]=A;A=(k[g>>2]|0)+-1|0;k[g>>2]=A;if(!A){A=k[n>>2]|0;C=k[A+24>>2]|0;if(!(ub[k[C+12>>2]&63](A)|0)){A=k[n>>2]|0;D=k[A>>2]|0;k[D+20>>2]=25;qb[k[D>>2]&127](A)}k[f>>2]=k[C>>2];k[g>>2]=k[C+4>>2]}if((B|0)==255?(B=k[f>>2]|0,k[f>>2]=B+1,i[B>>0]=0,B=(k[g>>2]|0)+-1|0,k[g>>2]=B,(B|0)==0):0){B=k[n>>2]|0;C=k[B+24>>2]|0;if(!(ub[k[C+12>>2]&63](B)|0)){B=k[n>>2]|0;A=k[B>>2]|0;k[A+20>>2]=25;qb[k[A>>2]&127](B)}k[f>>2]=k[C>>2];k[g>>2]=k[C+4>>2]}C=r<<8;v=v+-8|0;if((v|0)<=7){E=C;break}else r=C}F=u&7;G=E}else{F=u;G=z}k[p>>2]=G;k[o>>2]=F}else{r=(k[c+76+(s<<2)>>2]|0)+(y<<2)|0;k[r>>2]=(k[r>>2]|0)+1}while(0);if((y|0)!=0?(k[m>>2]|0)==0:0){s=(k[o>>2]|0)+y|0;r=((1<<y)+-1&t)<<24-s|k[p>>2];if((s|0)>7){v=s;C=r;while(1){B=C>>>16;A=B&255;D=k[f>>2]|0;k[f>>2]=D+1;i[D>>0]=B;B=(k[g>>2]|0)+-1|0;k[g>>2]=B;if(!B){B=k[n>>2]|0;D=k[B+24>>2]|0;if(!(ub[k[D+12>>2]&63](B)|0)){B=k[n>>2]|0;H=k[B>>2]|0;k[H+20>>2]=25;qb[k[H>>2]&127](B)}k[f>>2]=k[D>>2];k[g>>2]=k[D+4>>2]}if((A|0)==255?(A=k[f>>2]|0,k[f>>2]=A+1,i[A>>0]=0,A=(k[g>>2]|0)+-1|0,k[g>>2]=A,(A|0)==0):0){A=k[n>>2]|0;D=k[A+24>>2]|0;if(!(ub[k[D+12>>2]&63](A)|0)){A=k[n>>2]|0;B=k[A>>2]|0;k[B+20>>2]=25;qb[k[B>>2]&127](A)}k[f>>2]=k[D>>2];k[g>>2]=k[D+4>>2]}D=C<<8;v=v+-8|0;if((v|0)<=7){I=D;break}else C=D}J=s&7;K=I}else{J=s;K=r}k[p>>2]=K;k[o>>2]=J}q=q+1|0}while((q|0)<(k[h>>2]|0))}h=k[d>>2]|0;k[h>>2]=k[f>>2];k[h+4>>2]=k[g>>2];g=k[e>>2]|0;if(!g)return 1;e=c+36|0;h=k[e>>2]|0;if(!h){k[e>>2]=g;f=c+40|0;k[f>>2]=(k[f>>2]|0)+1&7;L=g}else L=h;k[e>>2]=L+-1;return 1}function un(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,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;c=k[a+424>>2]|0;d=a+24|0;e=k[d>>2]|0;f=c+112|0;k[f>>2]=k[e>>2];g=c+116|0;k[g>>2]=k[e+4>>2];e=a+236|0;if((k[e>>2]|0)!=0?(k[c+36>>2]|0)==0:0)An(c,k[c+40>>2]|0);h=k[a+368>>2]|0;m=k[a+376>>2]|0;n=k[a+384>>2]|0;o=k[b>>2]|0;b=k[a+364>>2]|0;if((b|0)<=(h|0)){p=c+128|0;q=c+124|0;r=c+108|0;s=c+120|0;t=c+16|0;u=c+12|0;v=c+136|0;w=c+132|0;x=b;b=0;while(1){y=j[o+(k[n+(x<<2)>>2]<<1)>>1]|0;z=y<<16>>16;do if(y<<16>>16){if(y<<16>>16<0){A=0-z>>m;B=A;C=~A}else{A=z>>m;B=A;C=A}if(!B){D=b+1|0;break}A=k[p>>2]|0;if(A){E=0;F=A;while(1){F=F>>1;if(!F){G=E;break}else E=E+1|0}if((G|0)>14){E=k[s>>2]|0;F=k[E>>2]|0;k[F+20>>2]=41;qb[k[F>>2]&127](E)}E=k[q>>2]|0;F=G<<4;do if(!(k[r>>2]|0)){A=k[c+60+(E<<2)>>2]|0;H=k[A+(F<<2)>>2]|0;I=i[A+1024+F>>0]|0;A=I<<24>>24;if(I<<24>>24==0?(I=k[s>>2]|0,J=k[I>>2]|0,k[J+20>>2]=41,qb[k[J>>2]&127](I),(k[r>>2]|0)!=0):0)break;I=(k[t>>2]|0)+A|0;J=((1<<A)+-1&H)<<24-I|k[u>>2];if((I|0)>7){H=I;A=J;while(1){K=A>>>16;L=K&255;M=k[f>>2]|0;k[f>>2]=M+1;i[M>>0]=K;K=(k[g>>2]|0)+-1|0;k[g>>2]=K;if(!K){K=k[s>>2]|0;M=k[K+24>>2]|0;if(!(ub[k[M+12>>2]&63](K)|0)){K=k[s>>2]|0;N=k[K>>2]|0;k[N+20>>2]=25;qb[k[N>>2]&127](K)}k[f>>2]=k[M>>2];k[g>>2]=k[M+4>>2]}do if((L|0)==255){M=k[f>>2]|0;k[f>>2]=M+1;i[M>>0]=0;M=(k[g>>2]|0)+-1|0;k[g>>2]=M;if(M)break;M=k[s>>2]|0;K=k[M+24>>2]|0;if(!(ub[k[K+12>>2]&63](M)|0)){M=k[s>>2]|0;N=k[M>>2]|0;k[N+20>>2]=25;qb[k[N>>2]&127](M)}k[f>>2]=k[K>>2];k[g>>2]=k[K+4>>2]}while(0);L=A<<8;H=H+-8|0;if((H|0)<=7){O=L;break}else A=L}P=I&7;Q=O}else{P=I;Q=J}k[u>>2]=Q;k[t>>2]=P}else{A=(k[c+92+(E<<2)>>2]|0)+(F<<2)|0;k[A>>2]=(k[A>>2]|0)+1}while(0);if((G|0)!=0?(k[r>>2]|0)==0:0){F=(k[t>>2]|0)+G|0;E=(k[p>>2]&(1<<G)+-1)<<24-F|k[u>>2];if((F|0)>7){A=F;H=E;while(1){L=H>>>16;K=L&255;M=k[f>>2]|0;k[f>>2]=M+1;i[M>>0]=L;L=(k[g>>2]|0)+-1|0;k[g>>2]=L;if(!L){L=k[s>>2]|0;M=k[L+24>>2]|0;if(!(ub[k[M+12>>2]&63](L)|0)){L=k[s>>2]|0;N=k[L>>2]|0;k[N+20>>2]=25;qb[k[N>>2]&127](L)}k[f>>2]=k[M>>2];k[g>>2]=k[M+4>>2]}do if((K|0)==255){M=k[f>>2]|0;k[f>>2]=M+1;i[M>>0]=0;M=(k[g>>2]|0)+-1|0;k[g>>2]=M;if(M)break;M=k[s>>2]|0;L=k[M+24>>2]|0;if(!(ub[k[L+12>>2]&63](M)|0)){M=k[s>>2]|0;N=k[M>>2]|0;k[N+20>>2]=25;qb[k[N>>2]&127](M)}k[f>>2]=k[L>>2];k[g>>2]=k[L+4>>2]}while(0);K=H<<8;A=A+-8|0;if((A|0)<=7){R=K;break}else H=K}S=F&7;T=R}else{S=F;T=E}k[u>>2]=T;k[t>>2]=S}k[p>>2]=0;H=k[w>>2]|0;a:do if((H|0)!=0&(k[r>>2]|0)==0){A=H;K=k[v>>2]|0;J=0;while(1){if(!J){I=k[t>>2]|0;L=I+1|0;M=((l[K>>0]|0)&1)<<23-I|k[u>>2];if((L|0)>7){I=L;N=M;while(1){U=N>>>16;V=U&255;W=k[f>>2]|0;k[f>>2]=W+1;i[W>>0]=U;U=(k[g>>2]|0)+-1|0;k[g>>2]=U;if(!U){U=k[s>>2]|0;W=k[U+24>>2]|0;if(!(ub[k[W+12>>2]&63](U)|0)){U=k[s>>2]|0;X=k[U>>2]|0;k[X+20>>2]=25;qb[k[X>>2]&127](U)}k[f>>2]=k[W>>2];k[g>>2]=k[W+4>>2]}do if((V|0)==255){W=k[f>>2]|0;k[f>>2]=W+1;i[W>>0]=0;W=(k[g>>2]|0)+-1|0;k[g>>2]=W;if(W)break;W=k[s>>2]|0;U=k[W+24>>2]|0;if(!(ub[k[U+12>>2]&63](W)|0)){W=k[s>>2]|0;X=k[W>>2]|0;k[X+20>>2]=25;qb[k[X>>2]&127](W)}k[f>>2]=k[U>>2];k[g>>2]=k[U+4>>2]}while(0);V=N<<8;I=I+-8|0;if((I|0)<=7){Y=V;break}else N=V}Z=L&7;_=Y}else{Z=L;_=M}k[u>>2]=_;k[t>>2]=Z}N=A+-1|0;if(!N)break a;A=N;K=K+1|0;J=k[r>>2]|0}}while(0);k[w>>2]=0}if((b|0)>15){H=b;do{E=k[q>>2]|0;do if(!(k[r>>2]|0)){F=k[c+60+(E<<2)>>2]|0;J=k[F+960>>2]|0;K=i[F+1264>>0]|0;F=K<<24>>24;if(K<<24>>24==0?(K=k[s>>2]|0,A=k[K>>2]|0,k[A+20>>2]=41,qb[k[A>>2]&127](K),(k[r>>2]|0)!=0):0)break;K=(k[t>>2]|0)+F|0;A=((1<<F)+-1&J)<<24-K|k[u>>2];if((K|0)>7){J=K;F=A;while(1){N=F>>>16;I=N&255;V=k[f>>2]|0;k[f>>2]=V+1;i[V>>0]=N;N=(k[g>>2]|0)+-1|0;k[g>>2]=N;if(!N){N=k[s>>2]|0;V=k[N+24>>2]|0;if(!(ub[k[V+12>>2]&63](N)|0)){N=k[s>>2]|0;U=k[N>>2]|0;k[U+20>>2]=25;qb[k[U>>2]&127](N)}k[f>>2]=k[V>>2];k[g>>2]=k[V+4>>2]}do if((I|0)==255){V=k[f>>2]|0;k[f>>2]=V+1;i[V>>0]=0;V=(k[g>>2]|0)+-1|0;k[g>>2]=V;if(V)break;V=k[s>>2]|0;N=k[V+24>>2]|0;if(!(ub[k[N+12>>2]&63](V)|0)){V=k[s>>2]|0;U=k[V>>2]|0;k[U+20>>2]=25;qb[k[U>>2]&127](V)}k[f>>2]=k[N>>2];k[g>>2]=k[N+4>>2]}while(0);I=F<<8;J=J+-8|0;if((J|0)<=7){$=I;break}else F=I}aa=K&7;ba=$}else{aa=K;ba=A}k[u>>2]=ba;k[t>>2]=aa}else{F=(k[c+92+(E<<2)>>2]|0)+960|0;k[F>>2]=(k[F>>2]|0)+1}while(0);H=H+-16|0}while((H|0)>15);ca=b&15}else ca=b;H=1;E=B;while(1){E=E>>1;if(!E){da=H;break}else H=H+1|0}if((da|0)>10){H=k[a>>2]|0;k[H+20>>2]=6;qb[k[H>>2]&127](a)}H=k[q>>2]|0;E=da+(ca<<4)|0;do if(!(k[r>>2]|0)){F=k[c+60+(H<<2)>>2]|0;J=k[F+(E<<2)>>2]|0;M=i[F+1024+E>>0]|0;F=M<<24>>24;if(M<<24>>24==0?(M=k[s>>2]|0,L=k[M>>2]|0,k[L+20>>2]=41,qb[k[L>>2]&127](M),(k[r>>2]|0)!=0):0)break;M=(k[t>>2]|0)+F|0;L=((1<<F)+-1&J)<<24-M|k[u>>2];if((M|0)>7){J=M;F=L;while(1){I=F>>>16;N=I&255;V=k[f>>2]|0;k[f>>2]=V+1;i[V>>0]=I;I=(k[g>>2]|0)+-1|0;k[g>>2]=I;if(!I){I=k[s>>2]|0;V=k[I+24>>2]|0;if(!(ub[k[V+12>>2]&63](I)|0)){I=k[s>>2]|0;U=k[I>>2]|0;k[U+20>>2]=25;qb[k[U>>2]&127](I)}k[f>>2]=k[V>>2];k[g>>2]=k[V+4>>2]}do if((N|0)==255){V=k[f>>2]|0;k[f>>2]=V+1;i[V>>0]=0;V=(k[g>>2]|0)+-1|0;k[g>>2]=V;if(V)break;V=k[s>>2]|0;I=k[V+24>>2]|0;if(!(ub[k[I+12>>2]&63](V)|0)){V=k[s>>2]|0;U=k[V>>2]|0;k[U+20>>2]=25;qb[k[U>>2]&127](V)}k[f>>2]=k[I>>2];k[g>>2]=k[I+4>>2]}while(0);N=F<<8;J=J+-8|0;if((J|0)<=7){ea=N;break}else F=N}fa=M&7;ga=ea}else{fa=M;ga=L}k[u>>2]=ga;k[t>>2]=fa}else{F=(k[c+92+(H<<2)>>2]|0)+(E<<2)|0;k[F>>2]=(k[F>>2]|0)+1}while(0);if(!da){E=k[s>>2]|0;H=k[E>>2]|0;k[H+20>>2]=41;qb[k[H>>2]&127](E)}if(!(k[r>>2]|0)){E=(k[t>>2]|0)+da|0;H=((1<<da)+-1&C)<<24-E|k[u>>2];if((E|0)>7){F=E;J=H;while(1){N=J>>>16;A=N&255;K=k[f>>2]|0;k[f>>2]=K+1;i[K>>0]=N;N=(k[g>>2]|0)+-1|0;k[g>>2]=N;if(!N){N=k[s>>2]|0;K=k[N+24>>2]|0;if(!(ub[k[K+12>>2]&63](N)|0)){N=k[s>>2]|0;I=k[N>>2]|0;k[I+20>>2]=25;qb[k[I>>2]&127](N)}k[f>>2]=k[K>>2];k[g>>2]=k[K+4>>2]}do if((A|0)==255){K=k[f>>2]|0;k[f>>2]=K+1;i[K>>0]=0;K=(k[g>>2]|0)+-1|0;k[g>>2]=K;if(K)break;K=k[s>>2]|0;N=k[K+24>>2]|0;if(!(ub[k[N+12>>2]&63](K)|0)){K=k[s>>2]|0;I=k[K>>2]|0;k[I+20>>2]=25;qb[k[I>>2]&127](K)}k[f>>2]=k[N>>2];k[g>>2]=k[N+4>>2]}while(0);A=J<<8;F=F+-8|0;if((F|0)<=7){ha=A;break}else J=A}ia=E&7;ja=ha}else{ia=E;ja=H}k[u>>2]=ja;k[t>>2]=ia;D=0}else D=0}else D=b+1|0;while(0);if((x|0)<(h|0)){x=x+1|0;b=D}else{ka=D;break}}if((ka|0)>0?(ka=c+128|0,D=(k[ka>>2]|0)+1|0,k[ka>>2]=D,(D|0)==32767):0){D=k[c+124>>2]|0;b=c+108|0;if(!(k[b>>2]|0)){x=k[c+60+(D<<2)>>2]|0;h=k[x+896>>2]|0;ia=i[x+1248>>0]|0;x=ia<<24>>24;if(!(ia<<24>>24)){ia=k[c+120>>2]|0;t=k[ia>>2]|0;k[t+20>>2]=41;qb[k[t>>2]&127](ia)}if(!(k[b>>2]|0)){ia=c+16|0;t=(k[ia>>2]|0)+x|0;ja=c+12|0;u=((1<<x)+-1&h)<<24-t|k[ja>>2];if((t|0)>7){h=c+120|0;x=t;ha=u;while(1){s=ha>>>16;C=s&255;da=k[f>>2]|0;k[f>>2]=da+1;i[da>>0]=s;s=(k[g>>2]|0)+-1|0;k[g>>2]=s;if(!s){s=k[h>>2]|0;da=k[s+24>>2]|0;if(!(ub[k[da+12>>2]&63](s)|0)){s=k[h>>2]|0;r=k[s>>2]|0;k[r+20>>2]=25;qb[k[r>>2]&127](s)}k[f>>2]=k[da>>2];k[g>>2]=k[da+4>>2]}if((C|0)==255?(C=k[f>>2]|0,k[f>>2]=C+1,i[C>>0]=0,C=(k[g>>2]|0)+-1|0,k[g>>2]=C,(C|0)==0):0){C=k[h>>2]|0;da=k[C+24>>2]|0;if(!(ub[k[da+12>>2]&63](C)|0)){C=k[h>>2]|0;s=k[C>>2]|0;k[s+20>>2]=25;qb[k[s>>2]&127](C)}k[f>>2]=k[da>>2];k[g>>2]=k[da+4>>2]}da=ha<<8;x=x+-8|0;if((x|0)<=7){la=da;break}else ha=da}ma=t&7;na=la}else{ma=t;na=u}k[ja>>2]=na;k[ia>>2]=ma;oa=147}}else{ma=(k[c+92+(D<<2)>>2]|0)+896|0;k[ma>>2]=(k[ma>>2]|0)+1;oa=147}if((oa|0)==147?(k[b>>2]|0)==0:0){oa=c+16|0;ma=k[oa>>2]|0;D=ma+14|0;ia=c+12|0;na=(k[ka>>2]&16383)<<10-ma|k[ia>>2];if((D|0)>7){ma=c+120|0;ja=D;u=na;while(1){t=u>>>16;la=t&255;ha=k[f>>2]|0;k[f>>2]=ha+1;i[ha>>0]=t;t=(k[g>>2]|0)+-1|0;k[g>>2]=t;if(!t){t=k[ma>>2]|0;ha=k[t+24>>2]|0;if(!(ub[k[ha+12>>2]&63](t)|0)){t=k[ma>>2]|0;x=k[t>>2]|0;k[x+20>>2]=25;qb[k[x>>2]&127](t)}k[f>>2]=k[ha>>2];k[g>>2]=k[ha+4>>2]}if((la|0)==255?(la=k[f>>2]|0,k[f>>2]=la+1,i[la>>0]=0,la=(k[g>>2]|0)+-1|0,k[g>>2]=la,(la|0)==0):0){la=k[ma>>2]|0;ha=k[la+24>>2]|0;if(!(ub[k[ha+12>>2]&63](la)|0)){la=k[ma>>2]|0;t=k[la>>2]|0;k[t+20>>2]=25;qb[k[t>>2]&127](la)}k[f>>2]=k[ha>>2];k[g>>2]=k[ha+4>>2]}ha=u<<8;ja=ja+-8|0;if((ja|0)<=7){pa=ha;break}else u=ha}qa=D&7;ra=pa}else{qa=D;ra=na}k[ia>>2]=ra;k[oa>>2]=qa}k[ka>>2]=0;ka=c+132|0;qa=k[ka>>2]|0;b:do if((qa|0)!=0&(k[b>>2]|0)==0){oa=c+16|0;ra=c+12|0;ia=c+120|0;na=qa;D=k[c+136>>2]|0;pa=0;while(1){if(!pa){u=k[oa>>2]|0;ja=u+1|0;ma=((l[D>>0]|0)&1)<<23-u|k[ra>>2];if((ja|0)>7){u=ja;ha=ma;while(1){la=ha>>>16;t=la&255;x=k[f>>2]|0;k[f>>2]=x+1;i[x>>0]=la;la=(k[g>>2]|0)+-1|0;k[g>>2]=la;if(!la){la=k[ia>>2]|0;x=k[la+24>>2]|0;if(!(ub[k[x+12>>2]&63](la)|0)){la=k[ia>>2]|0;h=k[la>>2]|0;k[h+20>>2]=25;qb[k[h>>2]&127](la)}k[f>>2]=k[x>>2];k[g>>2]=k[x+4>>2]}if((t|0)==255?(t=k[f>>2]|0,k[f>>2]=t+1,i[t>>0]=0,t=(k[g>>2]|0)+-1|0,k[g>>2]=t,(t|0)==0):0){t=k[ia>>2]|0;x=k[t+24>>2]|0;if(!(ub[k[x+12>>2]&63](t)|0)){t=k[ia>>2]|0;la=k[t>>2]|0;k[la+20>>2]=25;qb[k[la>>2]&127](t)}k[f>>2]=k[x>>2];k[g>>2]=k[x+4>>2]}x=ha<<8;u=u+-8|0;if((u|0)<=7){sa=x;break}else ha=x}ta=ja&7;ua=sa}else{ta=ja;ua=ma}k[ra>>2]=ua;k[oa>>2]=ta}ha=na+-1|0;if(!ha)break b;na=ha;D=D+1|0;pa=k[b>>2]|0}}while(0);k[ka>>2]=0}}ka=k[d>>2]|0;k[ka>>2]=k[f>>2];k[ka+4>>2]=k[g>>2];g=k[e>>2]|0;if(!g)return 1;e=c+36|0;ka=k[e>>2]|0;if(!ka){k[e>>2]=g;f=c+40|0;k[f>>2]=(k[f>>2]|0)+1&7;va=g}else va=ka;k[e>>2]=va+-1;return 1}function vn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,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;c=k[a+424>>2]|0;d=a+24|0;e=k[d>>2]|0;f=c+112|0;k[f>>2]=k[e>>2];g=c+116|0;k[g>>2]=k[e+4>>2];e=a+236|0;if((k[e>>2]|0)!=0?(k[c+36>>2]|0)==0:0)An(c,k[c+40>>2]|0);h=k[a+376>>2]|0;l=a+320|0;a=k[l>>2]|0;if((a|0)>0){m=c+108|0;n=c+16|0;o=c+12|0;p=c+120|0;q=a;a=0;while(1){if(!(k[m>>2]|0)){r=k[n>>2]|0;s=r+1|0;t=((j[k[b+(a<<2)>>2]>>1]|0)>>>h&1)<<23-r|k[o>>2];if((s|0)>7){r=s;u=t;while(1){v=u>>>16;w=v&255;x=k[f>>2]|0;k[f>>2]=x+1;i[x>>0]=v;v=(k[g>>2]|0)+-1|0;k[g>>2]=v;if(!v){v=k[p>>2]|0;x=k[v+24>>2]|0;if(!(ub[k[x+12>>2]&63](v)|0)){v=k[p>>2]|0;y=k[v>>2]|0;k[y+20>>2]=25;qb[k[y>>2]&127](v)}k[f>>2]=k[x>>2];k[g>>2]=k[x+4>>2]}if((w|0)==255?(w=k[f>>2]|0,k[f>>2]=w+1,i[w>>0]=0,w=(k[g>>2]|0)+-1|0,k[g>>2]=w,(w|0)==0):0){w=k[p>>2]|0;x=k[w+24>>2]|0;if(!(ub[k[x+12>>2]&63](w)|0)){w=k[p>>2]|0;v=k[w>>2]|0;k[v+20>>2]=25;qb[k[v>>2]&127](w)}k[f>>2]=k[x>>2];k[g>>2]=k[x+4>>2]}x=u<<8;r=r+-8|0;if((r|0)<=7){z=x;break}else u=x}A=k[l>>2]|0;B=s&7;C=z}else{A=q;B=s;C=t}k[o>>2]=C;k[n>>2]=B;D=A}else D=q;a=a+1|0;if((a|0)>=(D|0))break;else q=D}}D=k[d>>2]|0;k[D>>2]=k[f>>2];k[D+4>>2]=k[g>>2];g=k[e>>2]|0;if(!g)return 1;e=c+36|0;D=k[e>>2]|0;if(!D){k[e>>2]=g;f=c+40|0;k[f>>2]=(k[f>>2]|0)+1&7;E=g}else E=D;k[e>>2]=E+-1;return 1}function wn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=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;c=r;r=r+256|0;d=c;e=k[a+424>>2]|0;f=a+24|0;g=k[f>>2]|0;h=e+112|0;k[h>>2]=k[g>>2];n=e+116|0;k[n>>2]=k[g+4>>2];g=a+236|0;if((k[g>>2]|0)!=0?(k[e+36>>2]|0)==0:0)An(e,k[e+40>>2]|0);o=k[a+368>>2]|0;p=k[a+376>>2]|0;q=k[a+384>>2]|0;s=k[b>>2]|0;b=k[a+364>>2]|0;a=(b|0)>(o|0);if(!a){t=0;u=b;while(1){v=j[s+(k[q+(u<<2)>>2]<<1)>>1]|0;w=v<<16>>16;x=(v<<16>>16<0?0-w|0:w)>>p;k[d+(u<<2)>>2]=x;w=(x|0)==1?u:t;if((u|0)<(o|0)){t=w;u=u+1|0}else{y=w;break}}u=e+136|0;t=e+132|0;if(a){z=u;A=t;B=0;C=0}else{a=e+128|0;p=e+124|0;w=e+108|0;x=e+120|0;v=e+16|0;D=e+12|0;E=0;F=(k[u>>2]|0)+(k[t>>2]|0)|0;G=b;b=0;while(1){H=k[d+(G<<2)>>2]|0;do if(!H){I=E;J=F;K=b+1|0}else{if((G|0)>(y|0)|(b|0)<16){L=E;M=F;N=b}else{O=E;P=F;Q=b;while(1){R=k[a>>2]|0;if(R){S=0;T=R;while(1){T=T>>1;if(!T){U=S;break}else S=S+1|0}if((U|0)>14){S=k[x>>2]|0;T=k[S>>2]|0;k[T+20>>2]=41;qb[k[T>>2]&127](S)}S=k[p>>2]|0;T=U<<4;do if(!(k[w>>2]|0)){R=k[e+60+(S<<2)>>2]|0;V=k[R+(T<<2)>>2]|0;W=i[R+1024+T>>0]|0;R=W<<24>>24;if(W<<24>>24==0?(W=k[x>>2]|0,X=k[W>>2]|0,k[X+20>>2]=41,qb[k[X>>2]&127](W),(k[w>>2]|0)!=0):0)break;W=(k[v>>2]|0)+R|0;X=((1<<R)+-1&V)<<24-W|k[D>>2];if((W|0)>7){V=W;R=X;while(1){Y=R>>>16;Z=Y&255;_=k[h>>2]|0;k[h>>2]=_+1;i[_>>0]=Y;Y=(k[n>>2]|0)+-1|0;k[n>>2]=Y;if(!Y){Y=k[x>>2]|0;_=k[Y+24>>2]|0;if(!(ub[k[_+12>>2]&63](Y)|0)){Y=k[x>>2]|0;$=k[Y>>2]|0;k[$+20>>2]=25;qb[k[$>>2]&127](Y)}k[h>>2]=k[_>>2];k[n>>2]=k[_+4>>2]}do if((Z|0)==255){_=k[h>>2]|0;k[h>>2]=_+1;i[_>>0]=0;_=(k[n>>2]|0)+-1|0;k[n>>2]=_;if(_)break;_=k[x>>2]|0;Y=k[_+24>>2]|0;if(!(ub[k[Y+12>>2]&63](_)|0)){_=k[x>>2]|0;$=k[_>>2]|0;k[$+20>>2]=25;qb[k[$>>2]&127](_)}k[h>>2]=k[Y>>2];k[n>>2]=k[Y+4>>2]}while(0);Z=R<<8;V=V+-8|0;if((V|0)<=7){aa=Z;break}else R=Z}ba=W&7;ca=aa}else{ba=W;ca=X}k[D>>2]=ca;k[v>>2]=ba}else{R=(k[e+92+(S<<2)>>2]|0)+(T<<2)|0;k[R>>2]=(k[R>>2]|0)+1}while(0);if((U|0)!=0?(k[w>>2]|0)==0:0){T=(k[v>>2]|0)+U|0;S=(k[a>>2]&(1<<U)+-1)<<24-T|k[D>>2];if((T|0)>7){R=T;V=S;while(1){Z=V>>>16;Y=Z&255;_=k[h>>2]|0;k[h>>2]=_+1;i[_>>0]=Z;Z=(k[n>>2]|0)+-1|0;k[n>>2]=Z;if(!Z){Z=k[x>>2]|0;_=k[Z+24>>2]|0;if(!(ub[k[_+12>>2]&63](Z)|0)){Z=k[x>>2]|0;$=k[Z>>2]|0;k[$+20>>2]=25;qb[k[$>>2]&127](Z)}k[h>>2]=k[_>>2];k[n>>2]=k[_+4>>2]}do if((Y|0)==255){_=k[h>>2]|0;k[h>>2]=_+1;i[_>>0]=0;_=(k[n>>2]|0)+-1|0;k[n>>2]=_;if(_)break;_=k[x>>2]|0;Z=k[_+24>>2]|0;if(!(ub[k[Z+12>>2]&63](_)|0)){_=k[x>>2]|0;$=k[_>>2]|0;k[$+20>>2]=25;qb[k[$>>2]&127](_)}k[h>>2]=k[Z>>2];k[n>>2]=k[Z+4>>2]}while(0);Y=V<<8;R=R+-8|0;if((R|0)<=7){da=Y;break}else V=Y}ea=T&7;fa=da}else{ea=T;fa=S}k[D>>2]=fa;k[v>>2]=ea}k[a>>2]=0;V=k[t>>2]|0;a:do if((V|0)!=0&(k[w>>2]|0)==0){R=V;Y=k[u>>2]|0;X=0;while(1){if(!X){W=k[v>>2]|0;Z=W+1|0;_=((l[Y>>0]|0)&1)<<23-W|k[D>>2];if((Z|0)>7){W=Z;$=_;while(1){ga=$>>>16;ha=ga&255;ia=k[h>>2]|0;k[h>>2]=ia+1;i[ia>>0]=ga;ga=(k[n>>2]|0)+-1|0;k[n>>2]=ga;if(!ga){ga=k[x>>2]|0;ia=k[ga+24>>2]|0;if(!(ub[k[ia+12>>2]&63](ga)|0)){ga=k[x>>2]|0;ja=k[ga>>2]|0;k[ja+20>>2]=25;qb[k[ja>>2]&127](ga)}k[h>>2]=k[ia>>2];k[n>>2]=k[ia+4>>2]}do if((ha|0)==255){ia=k[h>>2]|0;k[h>>2]=ia+1;i[ia>>0]=0;ia=(k[n>>2]|0)+-1|0;k[n>>2]=ia;if(ia)break;ia=k[x>>2]|0;ga=k[ia+24>>2]|0;if(!(ub[k[ga+12>>2]&63](ia)|0)){ia=k[x>>2]|0;ja=k[ia>>2]|0;k[ja+20>>2]=25;qb[k[ja>>2]&127](ia)}k[h>>2]=k[ga>>2];k[n>>2]=k[ga+4>>2]}while(0);ha=$<<8;W=W+-8|0;if((W|0)<=7){ka=ha;break}else $=ha}la=Z&7;ma=ka}else{la=Z;ma=_}k[D>>2]=ma;k[v>>2]=la}$=R+-1|0;if(!$)break a;R=$;Y=Y+1|0;X=k[w>>2]|0}}while(0);k[t>>2]=0}V=k[p>>2]|0;b:do if(!(k[w>>2]|0)){S=k[e+60+(V<<2)>>2]|0;T=k[S+960>>2]|0;X=i[S+1264>>0]|0;S=X<<24>>24;if(X<<24>>24==0?(X=k[x>>2]|0,Y=k[X>>2]|0,k[Y+20>>2]=41,qb[k[Y>>2]&127](X),(k[w>>2]|0)!=0):0){na=83;break}X=(k[v>>2]|0)+S|0;Y=((1<<S)+-1&T)<<24-X|k[D>>2];if((X|0)>7){T=X;S=Y;while(1){R=S>>>16;$=R&255;W=k[h>>2]|0;k[h>>2]=W+1;i[W>>0]=R;R=(k[n>>2]|0)+-1|0;k[n>>2]=R;if(!R){R=k[x>>2]|0;W=k[R+24>>2]|0;if(!(ub[k[W+12>>2]&63](R)|0)){R=k[x>>2]|0;ha=k[R>>2]|0;k[ha+20>>2]=25;qb[k[ha>>2]&127](R)}k[h>>2]=k[W>>2];k[n>>2]=k[W+4>>2]}do if(($|0)==255){W=k[h>>2]|0;k[h>>2]=W+1;i[W>>0]=0;W=(k[n>>2]|0)+-1|0;k[n>>2]=W;if(W)break;W=k[x>>2]|0;R=k[W+24>>2]|0;if(!(ub[k[R+12>>2]&63](W)|0)){W=k[x>>2]|0;ha=k[W>>2]|0;k[ha+20>>2]=25;qb[k[ha>>2]&127](W)}k[h>>2]=k[R>>2];k[n>>2]=k[R+4>>2]}while(0);$=S<<8;T=T+-8|0;if((T|0)<=7){oa=$;break}else S=$}pa=k[w>>2]|0;qa=X&7;ra=oa}else{pa=0;qa=X;ra=Y}k[D>>2]=ra;k[v>>2]=qa;S=Q+-16|0;if((O|0)!=0&(pa|0)==0){T=O;$=P;_=0;while(1){if(!_){Z=k[v>>2]|0;R=Z+1|0;W=((l[$>>0]|0)&1)<<23-Z|k[D>>2];if((R|0)>7){Z=R;ha=W;while(1){ga=ha>>>16;ia=ga&255;ja=k[h>>2]|0;k[h>>2]=ja+1;i[ja>>0]=ga;ga=(k[n>>2]|0)+-1|0;k[n>>2]=ga;if(!ga){ga=k[x>>2]|0;ja=k[ga+24>>2]|0;if(!(ub[k[ja+12>>2]&63](ga)|0)){ga=k[x>>2]|0;sa=k[ga>>2]|0;k[sa+20>>2]=25;qb[k[sa>>2]&127](ga)}k[h>>2]=k[ja>>2];k[n>>2]=k[ja+4>>2]}do if((ia|0)==255){ja=k[h>>2]|0;k[h>>2]=ja+1;i[ja>>0]=0;ja=(k[n>>2]|0)+-1|0;k[n>>2]=ja;if(ja)break;ja=k[x>>2]|0;ga=k[ja+24>>2]|0;if(!(ub[k[ga+12>>2]&63](ja)|0)){ja=k[x>>2]|0;sa=k[ja>>2]|0;k[sa+20>>2]=25;qb[k[sa>>2]&127](ja)}k[h>>2]=k[ga>>2];k[n>>2]=k[ga+4>>2]}while(0);ia=ha<<8;Z=Z+-8|0;if((Z|0)<=7){ta=ia;break}else ha=ia}ua=R&7;va=ta}else{ua=R;va=W}k[D>>2]=va;k[v>>2]=ua}ha=T+-1|0;if(!ha){wa=S;break b}T=ha;$=$+1|0;_=k[w>>2]|0}}else wa=S}else{_=(k[e+92+(V<<2)>>2]|0)+960|0;k[_>>2]=(k[_>>2]|0)+1;na=83}while(0);if((na|0)==83){na=0;wa=Q+-16|0}V=k[u>>2]|0;if((wa|0)<16){L=0;M=V;N=wa;break}else{O=0;P=V;Q=wa}}}if((H|0)>1){i[M+L>>0]=H&1;I=L+1|0;J=M;K=N;break}Q=k[a>>2]|0;if(Q){P=0;O=Q;while(1){O=O>>1;if(!O){xa=P;break}else P=P+1|0}if((xa|0)>14){P=k[x>>2]|0;O=k[P>>2]|0;k[O+20>>2]=41;qb[k[O>>2]&127](P)}P=k[p>>2]|0;O=xa<<4;do if(!(k[w>>2]|0)){Q=k[e+60+(P<<2)>>2]|0;V=k[Q+(O<<2)>>2]|0;_=i[Q+1024+O>>0]|0;Q=_<<24>>24;if(_<<24>>24==0?(_=k[x>>2]|0,$=k[_>>2]|0,k[$+20>>2]=41,qb[k[$>>2]&127](_),(k[w>>2]|0)!=0):0)break;_=(k[v>>2]|0)+Q|0;$=((1<<Q)+-1&V)<<24-_|k[D>>2];if((_|0)>7){V=_;Q=$;while(1){T=Q>>>16;Y=T&255;X=k[h>>2]|0;k[h>>2]=X+1;i[X>>0]=T;T=(k[n>>2]|0)+-1|0;k[n>>2]=T;if(!T){T=k[x>>2]|0;X=k[T+24>>2]|0;if(!(ub[k[X+12>>2]&63](T)|0)){T=k[x>>2]|0;ha=k[T>>2]|0;k[ha+20>>2]=25;qb[k[ha>>2]&127](T)}k[h>>2]=k[X>>2];k[n>>2]=k[X+4>>2]}do if((Y|0)==255){X=k[h>>2]|0;k[h>>2]=X+1;i[X>>0]=0;X=(k[n>>2]|0)+-1|0;k[n>>2]=X;if(X)break;X=k[x>>2]|0;T=k[X+24>>2]|0;if(!(ub[k[T+12>>2]&63](X)|0)){X=k[x>>2]|0;ha=k[X>>2]|0;k[ha+20>>2]=25;qb[k[ha>>2]&127](X)}k[h>>2]=k[T>>2];k[n>>2]=k[T+4>>2]}while(0);Y=Q<<8;V=V+-8|0;if((V|0)<=7){ya=Y;break}else Q=Y}za=_&7;Aa=ya}else{za=_;Aa=$}k[D>>2]=Aa;k[v>>2]=za}else{Q=(k[e+92+(P<<2)>>2]|0)+(O<<2)|0;k[Q>>2]=(k[Q>>2]|0)+1}while(0);if((xa|0)!=0?(k[w>>2]|0)==0:0){O=(k[v>>2]|0)+xa|0;P=(k[a>>2]&(1<<xa)+-1)<<24-O|k[D>>2];if((O|0)>7){Q=O;V=P;while(1){Y=V>>>16;S=Y&255;T=k[h>>2]|0;k[h>>2]=T+1;i[T>>0]=Y;Y=(k[n>>2]|0)+-1|0;k[n>>2]=Y;if(!Y){Y=k[x>>2]|0;T=k[Y+24>>2]|0;if(!(ub[k[T+12>>2]&63](Y)|0)){Y=k[x>>2]|0;X=k[Y>>2]|0;k[X+20>>2]=25;qb[k[X>>2]&127](Y)}k[h>>2]=k[T>>2];k[n>>2]=k[T+4>>2]}do if((S|0)==255){T=k[h>>2]|0;k[h>>2]=T+1;i[T>>0]=0;T=(k[n>>2]|0)+-1|0;k[n>>2]=T;if(T)break;T=k[x>>2]|0;Y=k[T+24>>2]|0;if(!(ub[k[Y+12>>2]&63](T)|0)){T=k[x>>2]|0;X=k[T>>2]|0;k[X+20>>2]=25;qb[k[X>>2]&127](T)}k[h>>2]=k[Y>>2];k[n>>2]=k[Y+4>>2]}while(0);S=V<<8;Q=Q+-8|0;if((Q|0)<=7){Ba=S;break}else V=S}Ca=O&7;Da=Ba}else{Ca=O;Da=P}k[D>>2]=Da;k[v>>2]=Ca}k[a>>2]=0;V=k[t>>2]|0;c:do if((V|0)!=0&(k[w>>2]|0)==0){Q=V;S=k[u>>2]|0;$=0;while(1){if(!$){_=k[v>>2]|0;Y=_+1|0;T=((l[S>>0]|0)&1)<<23-_|k[D>>2];if((Y|0)>7){_=Y;X=T;while(1){ha=X>>>16;Z=ha&255;ia=k[h>>2]|0;k[h>>2]=ia+1;i[ia>>0]=ha;ha=(k[n>>2]|0)+-1|0;k[n>>2]=ha;if(!ha){ha=k[x>>2]|0;ia=k[ha+24>>2]|0;if(!(ub[k[ia+12>>2]&63](ha)|0)){ha=k[x>>2]|0;ga=k[ha>>2]|0;k[ga+20>>2]=25;qb[k[ga>>2]&127](ha)}k[h>>2]=k[ia>>2];k[n>>2]=k[ia+4>>2]}do if((Z|0)==255){ia=k[h>>2]|0;k[h>>2]=ia+1;i[ia>>0]=0;ia=(k[n>>2]|0)+-1|0;k[n>>2]=ia;if(ia)break;ia=k[x>>2]|0;ha=k[ia+24>>2]|0;if(!(ub[k[ha+12>>2]&63](ia)|0)){ia=k[x>>2]|0;ga=k[ia>>2]|0;k[ga+20>>2]=25;qb[k[ga>>2]&127](ia)}k[h>>2]=k[ha>>2];k[n>>2]=k[ha+4>>2]}while(0);Z=X<<8;_=_+-8|0;if((_|0)<=7){Ea=Z;break}else X=Z}Fa=Y&7;Ga=Ea}else{Fa=Y;Ga=T}k[D>>2]=Ga;k[v>>2]=Fa}X=Q+-1|0;if(!X)break c;Q=X;S=S+1|0;$=k[w>>2]|0}}while(0);k[t>>2]=0}V=k[p>>2]|0;P=N<<4|1;d:do if(!(k[w>>2]|0)){O=k[e+60+(V<<2)>>2]|0;$=k[O+(P<<2)>>2]|0;S=i[O+1024+P>>0]|0;O=S<<24>>24;if(S<<24>>24==0?(S=k[x>>2]|0,Q=k[S>>2]|0,k[Q+20>>2]=41,qb[k[Q>>2]&127](S),(k[w>>2]|0)!=0):0)break;S=(k[v>>2]|0)+O|0;Q=((1<<O)+-1&$)<<24-S|k[D>>2];if((S|0)>7){$=S;O=Q;while(1){X=O>>>16;_=X&255;Z=k[h>>2]|0;k[h>>2]=Z+1;i[Z>>0]=X;X=(k[n>>2]|0)+-1|0;k[n>>2]=X;if(!X){X=k[x>>2]|0;Z=k[X+24>>2]|0;if(!(ub[k[Z+12>>2]&63](X)|0)){X=k[x>>2]|0;W=k[X>>2]|0;k[W+20>>2]=25;qb[k[W>>2]&127](X)}k[h>>2]=k[Z>>2];k[n>>2]=k[Z+4>>2]}if((_|0)==255?(_=k[h>>2]|0,k[h>>2]=_+1,i[_>>0]=0,_=(k[n>>2]|0)+-1|0,k[n>>2]=_,(_|0)==0):0){_=k[x>>2]|0;Z=k[_+24>>2]|0;if(!(ub[k[Z+12>>2]&63](_)|0)){_=k[x>>2]|0;X=k[_>>2]|0;k[X+20>>2]=25;qb[k[X>>2]&127](_)}k[h>>2]=k[Z>>2];k[n>>2]=k[Z+4>>2]}Z=O<<8;$=$+-8|0;if(($|0)<=7){Ha=Z;break}else O=Z}O=k[w>>2]|0;k[D>>2]=Ha;k[v>>2]=S&7;if(O)break}else{k[D>>2]=Q;k[v>>2]=S}O=k[v>>2]|0;$=O+1|0;Z=((m[s+(k[q+(G<<2)>>2]<<1)>>1]|0)>>>15&65535^1)<<23-O|k[D>>2];if(($|0)>7){O=$;_=Z;while(1){X=_>>>16;W=X&255;R=k[h>>2]|0;k[h>>2]=R+1;i[R>>0]=X;X=(k[n>>2]|0)+-1|0;k[n>>2]=X;if(!X){X=k[x>>2]|0;R=k[X+24>>2]|0;if(!(ub[k[R+12>>2]&63](X)|0)){X=k[x>>2]|0;ha=k[X>>2]|0;k[ha+20>>2]=25;qb[k[ha>>2]&127](X)}k[h>>2]=k[R>>2];k[n>>2]=k[R+4>>2]}do if((W|0)==255){R=k[h>>2]|0;k[h>>2]=R+1;i[R>>0]=0;R=(k[n>>2]|0)+-1|0;k[n>>2]=R;if(R)break;R=k[x>>2]|0;X=k[R+24>>2]|0;if(!(ub[k[X+12>>2]&63](R)|0)){R=k[x>>2]|0;ha=k[R>>2]|0;k[ha+20>>2]=25;qb[k[ha>>2]&127](R)}k[h>>2]=k[X>>2];k[n>>2]=k[X+4>>2]}while(0);W=_<<8;O=O+-8|0;if((O|0)<=7){Ia=W;break}else _=W}Ja=k[w>>2]|0;Ka=$&7;La=Ia}else{Ja=0;Ka=$;La=Z}k[D>>2]=La;k[v>>2]=Ka;if((L|0)!=0&(Ja|0)==0){_=L;O=M;S=0;while(1){if(!S){Q=k[v>>2]|0;W=Q+1|0;T=((l[O>>0]|0)&1)<<23-Q|k[D>>2];if((W|0)>7){Q=W;Y=T;while(1){X=Y>>>16;R=X&255;ha=k[h>>2]|0;k[h>>2]=ha+1;i[ha>>0]=X;X=(k[n>>2]|0)+-1|0;k[n>>2]=X;if(!X){X=k[x>>2]|0;ha=k[X+24>>2]|0;if(!(ub[k[ha+12>>2]&63](X)|0)){X=k[x>>2]|0;ia=k[X>>2]|0;k[ia+20>>2]=25;qb[k[ia>>2]&127](X)}k[h>>2]=k[ha>>2];k[n>>2]=k[ha+4>>2]}do if((R|0)==255){ha=k[h>>2]|0;k[h>>2]=ha+1;i[ha>>0]=0;ha=(k[n>>2]|0)+-1|0;k[n>>2]=ha;if(ha)break;ha=k[x>>2]|0;X=k[ha+24>>2]|0;if(!(ub[k[X+12>>2]&63](ha)|0)){ha=k[x>>2]|0;ia=k[ha>>2]|0;k[ia+20>>2]=25;qb[k[ia>>2]&127](ha)}k[h>>2]=k[X>>2];k[n>>2]=k[X+4>>2]}while(0);R=Y<<8;Q=Q+-8|0;if((Q|0)<=7){Ma=R;break}else Y=R}Na=W&7;Oa=Ma}else{Na=W;Oa=T}k[D>>2]=Oa;k[v>>2]=Na}Y=_+-1|0;if(!Y)break d;_=Y;O=O+1|0;S=k[w>>2]|0}}}else{S=(k[e+92+(V<<2)>>2]|0)+(P<<2)|0;k[S>>2]=(k[S>>2]|0)+1}while(0);I=0;J=k[u>>2]|0;K=0}while(0);if((G|0)<(o|0)){E=I;F=J;G=G+1|0;b=K}else{z=u;A=t;B=I;C=K;break}}}}else{z=e+136|0;A=e+132|0;B=0;C=0}if((C|0)>0|(B|0)!=0?(C=e+128|0,K=(k[C>>2]|0)+1|0,k[C>>2]=K,I=(k[A>>2]|0)+B|0,k[A>>2]=I,!((K|0)==0|I>>>0<938&(K|0)!=32767)):0){I=0;B=K;while(1){B=B>>1;if(!B){Pa=I;break}else I=I+1|0}if((Pa|0)>14){I=k[e+120>>2]|0;B=k[I>>2]|0;k[B+20>>2]=41;qb[k[B>>2]&127](I)}I=k[e+124>>2]|0;B=Pa<<4;K=e+108|0;do if(!(k[K>>2]|0)){t=k[e+60+(I<<2)>>2]|0;u=k[t+(B<<2)>>2]|0;b=i[t+1024+B>>0]|0;t=b<<24>>24;if(b<<24>>24==0?(b=k[e+120>>2]|0,G=k[b>>2]|0,k[G+20>>2]=41,qb[k[G>>2]&127](b),(k[K>>2]|0)!=0):0)break;b=e+16|0;G=(k[b>>2]|0)+t|0;J=e+12|0;F=((1<<t)+-1&u)<<24-G|k[J>>2];if((G|0)>7){u=e+120|0;t=G;E=F;while(1){o=E>>>16;w=o&255;Na=k[h>>2]|0;k[h>>2]=Na+1;i[Na>>0]=o;o=(k[n>>2]|0)+-1|0;k[n>>2]=o;if(!o){o=k[u>>2]|0;Na=k[o+24>>2]|0;if(!(ub[k[Na+12>>2]&63](o)|0)){o=k[u>>2]|0;v=k[o>>2]|0;k[v+20>>2]=25;qb[k[v>>2]&127](o)}k[h>>2]=k[Na>>2];k[n>>2]=k[Na+4>>2]}if((w|0)==255?(w=k[h>>2]|0,k[h>>2]=w+1,i[w>>0]=0,w=(k[n>>2]|0)+-1|0,k[n>>2]=w,(w|0)==0):0){w=k[u>>2]|0;Na=k[w+24>>2]|0;if(!(ub[k[Na+12>>2]&63](w)|0)){w=k[u>>2]|0;o=k[w>>2]|0;k[o+20>>2]=25;qb[k[o>>2]&127](w)}k[h>>2]=k[Na>>2];k[n>>2]=k[Na+4>>2]}Na=E<<8;t=t+-8|0;if((t|0)<=7){Qa=Na;break}else E=Na}Ra=G&7;Sa=Qa}else{Ra=G;Sa=F}k[J>>2]=Sa;k[b>>2]=Ra}else{E=(k[e+92+(I<<2)>>2]|0)+(B<<2)|0;k[E>>2]=(k[E>>2]|0)+1}while(0);if((Pa|0)!=0?(k[K>>2]|0)==0:0){B=e+16|0;I=(k[B>>2]|0)+Pa|0;Ra=e+12|0;Sa=(k[C>>2]&(1<<Pa)+-1)<<24-I|k[Ra>>2];if((I|0)>7){Pa=e+120|0;Qa=I;E=Sa;while(1){t=E>>>16;u=t&255;Na=k[h>>2]|0;k[h>>2]=Na+1;i[Na>>0]=t;t=(k[n>>2]|0)+-1|0;k[n>>2]=t;if(!t){t=k[Pa>>2]|0;Na=k[t+24>>2]|0;if(!(ub[k[Na+12>>2]&63](t)|0)){t=k[Pa>>2]|0;w=k[t>>2]|0;k[w+20>>2]=25;qb[k[w>>2]&127](t)}k[h>>2]=k[Na>>2];k[n>>2]=k[Na+4>>2]}if((u|0)==255?(u=k[h>>2]|0,k[h>>2]=u+1,i[u>>0]=0,u=(k[n>>2]|0)+-1|0,k[n>>2]=u,(u|0)==0):0){u=k[Pa>>2]|0;Na=k[u+24>>2]|0;if(!(ub[k[Na+12>>2]&63](u)|0)){u=k[Pa>>2]|0;t=k[u>>2]|0;k[t+20>>2]=25;qb[k[t>>2]&127](u)}k[h>>2]=k[Na>>2];k[n>>2]=k[Na+4>>2]}Na=E<<8;Qa=Qa+-8|0;if((Qa|0)<=7){Ta=Na;break}else E=Na}Ua=I&7;Va=Ta}else{Ua=I;Va=Sa}k[Ra>>2]=Va;k[B>>2]=Ua}k[C>>2]=0;C=k[A>>2]|0;e:do if((C|0)!=0&(k[K>>2]|0)==0){Ua=e+16|0;B=e+12|0;Va=e+120|0;Ra=C;Sa=k[z>>2]|0;I=0;while(1){if(!I){Ta=k[Ua>>2]|0;E=Ta+1|0;Qa=((l[Sa>>0]|0)&1)<<23-Ta|k[B>>2];if((E|0)>7){Ta=E;Pa=Qa;while(1){Na=Pa>>>16;u=Na&255;t=k[h>>2]|0;k[h>>2]=t+1;i[t>>0]=Na;Na=(k[n>>2]|0)+-1|0;k[n>>2]=Na;if(!Na){Na=k[Va>>2]|0;t=k[Na+24>>2]|0;if(!(ub[k[t+12>>2]&63](Na)|0)){Na=k[Va>>2]|0;w=k[Na>>2]|0;k[w+20>>2]=25;qb[k[w>>2]&127](Na)}k[h>>2]=k[t>>2];k[n>>2]=k[t+4>>2]}if((u|0)==255?(u=k[h>>2]|0,k[h>>2]=u+1,i[u>>0]=0,u=(k[n>>2]|0)+-1|0,k[n>>2]=u,(u|0)==0):0){u=k[Va>>2]|0;t=k[u+24>>2]|0;if(!(ub[k[t+12>>2]&63](u)|0)){u=k[Va>>2]|0;Na=k[u>>2]|0;k[Na+20>>2]=25;qb[k[Na>>2]&127](u)}k[h>>2]=k[t>>2];k[n>>2]=k[t+4>>2]}t=Pa<<8;Ta=Ta+-8|0;if((Ta|0)<=7){Wa=t;break}else Pa=t}Xa=E&7;Ya=Wa}else{Xa=E;Ya=Qa}k[B>>2]=Ya;k[Ua>>2]=Xa}Pa=Ra+-1|0;if(!Pa)break e;Ra=Pa;Sa=Sa+1|0;I=k[K>>2]|0}}while(0);k[A>>2]=0}A=k[f>>2]|0;k[A>>2]=k[h>>2];k[A+4>>2]=k[n>>2];n=k[g>>2]|0;if(!n){r=c;return 1}g=e+36|0;A=k[g>>2]|0;if(!A){k[g>>2]=n;h=e+40|0;k[h>>2]=(k[h>>2]|0)+1&7;Za=n}else Za=A;k[g>>2]=Za+-1;r=c;return 1}function xn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,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=k[a+424>>2]|0;d=a+236|0;e=k[d>>2]|0;if(e){f=c+36|0;g=k[f>>2]|0;if(!g){h=a+292|0;if((k[h>>2]|0)>0){i=0;do{k[c+20+(i<<2)>>2]=0;i=i+1|0}while((i|0)<(k[h>>2]|0));l=k[d>>2]|0}else l=e;k[f>>2]=l;m=l}else m=g;k[f>>2]=m+-1}m=a+320|0;if((k[m>>2]|0)<=0)return 1;f=a+388|0;g=a+384|0;l=0;do{e=k[a+324+(l<<2)>>2]|0;d=k[a+296+(e<<2)>>2]|0;h=b+(l<<2)|0;i=k[h>>2]|0;n=c+20+(e<<2)|0;e=k[c+76+(k[d+20>>2]<<2)>>2]|0;o=k[c+92+(k[d+24>>2]<<2)>>2]|0;d=k[f>>2]|0;p=k[g>>2]|0;q=(j[i>>1]|0)-(k[n>>2]|0)|0;r=(q|0)<0?0-q|0:q;if(r){q=0;s=r;while(1){r=q+1|0;s=s>>1;if(!s){t=r;u=q;break}else q=r}if((u|0)>10){q=k[a>>2]|0;k[q+20>>2]=6;qb[k[q>>2]&127](a);v=t}else v=t}else v=0;q=e+(v<<2)|0;k[q>>2]=(k[q>>2]|0)+1;if((d|0)>=1){q=o+960|0;s=1;r=0;while(1){w=j[i+(k[p+(s<<2)>>2]<<1)>>1]|0;x=w<<16>>16;if(!(w<<16>>16))y=r+1|0;else{if((r|0)>15){z=r+-16|0;A=z>>>4;k[q>>2]=A+1+(k[q>>2]|0);B=z-(A<<4)|0}else B=r;A=1;z=w<<16>>16<0?0-x|0:x;while(1){z=z>>1;if(!z){C=A;break}else A=A+1|0}if((C|0)>10){A=k[a>>2]|0;k[A+20>>2]=6;qb[k[A>>2]&127](a)}A=o+(C+(B<<4)<<2)|0;k[A>>2]=(k[A>>2]|0)+1;y=0}if((s|0)==(d|0)){D=y;break}else{s=s+1|0;r=y}}if((D|0)>0)k[o>>2]=(k[o>>2]|0)+1}k[n>>2]=j[k[h>>2]>>1];l=l+1|0}while((l|0)<(k[m>>2]|0));return 1}function yn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=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;c=r;r=r+48|0;d=c;e=k[a+424>>2]|0;f=a+24|0;g=k[f>>2]|0;h=k[g>>2]|0;k[d>>2]=h;l=d+4|0;k[l>>2]=k[g+4>>2];g=d+8|0;m=e+12|0;k[g>>2]=k[m>>2];k[g+4>>2]=k[m+4>>2];k[g+8>>2]=k[m+8>>2];k[g+12>>2]=k[m+12>>2];k[g+16>>2]=k[m+16>>2];k[g+20>>2]=k[m+20>>2];n=d+32|0;k[n>>2]=a;o=a+236|0;p=h;if((k[o>>2]|0)!=0?(k[e+36>>2]|0)==0:0){h=k[e+40>>2]|0;q=d+12|0;s=k[q>>2]|0;t=d+8|0;do if((s|0)>0){u=p;v=s+7|0;w=k[t>>2]|127<<17-s;while(1){x=w>>>16;y=x&255;k[d>>2]=u+1;i[u>>0]=x;x=(k[l>>2]|0)+-1|0;k[l>>2]=x;if(!x){x=k[n>>2]|0;z=k[x+24>>2]|0;if(!(ub[k[z+12>>2]&63](x)|0)){A=0;B=116;break}k[d>>2]=k[z>>2];k[l>>2]=k[z+4>>2]}if((y|0)==255?(y=k[d>>2]|0,k[d>>2]=y+1,i[y>>0]=0,y=(k[l>>2]|0)+-1|0,k[l>>2]=y,(y|0)==0):0){y=k[n>>2]|0;z=k[y+24>>2]|0;if(!(ub[k[z+12>>2]&63](y)|0)){A=0;B=116;break}k[d>>2]=k[z>>2];k[l>>2]=k[z+4>>2]}z=v+-8|0;if((z|0)<=7){B=14;break}u=k[d>>2]|0;v=z;w=w<<8}if((B|0)==14){C=k[d>>2]|0;break}else if((B|0)==116){r=c;return A|0}}else C=p;while(0);k[t>>2]=0;k[q>>2]=0;k[d>>2]=C+1;i[C>>0]=-1;C=(k[l>>2]|0)+-1|0;k[l>>2]=C;do if(!C){q=k[n>>2]|0;t=k[q+24>>2]|0;if(!(ub[k[t+12>>2]&63](q)|0)){A=0;r=c;return A|0}else{q=k[t>>2]|0;k[d>>2]=q;k[l>>2]=k[t+4>>2];D=q;break}}else D=k[d>>2]|0;while(0);k[d>>2]=D+1;i[D>>0]=h+208;h=(k[l>>2]|0)+-1|0;k[l>>2]=h;D=k[n>>2]|0;do if(!h){C=k[D+24>>2]|0;if(!(ub[k[C+12>>2]&63](D)|0)){A=0;r=c;return A|0}else{k[d>>2]=k[C>>2];k[l>>2]=k[C+4>>2];break}}while(0);if((k[D+292>>2]|0)>0){h=0;do{k[d+16+(h<<2)>>2]=0;h=h+1|0;C=k[n>>2]|0}while((h|0)<(k[C+292>>2]|0));E=C}else E=D}else E=a;D=a+320|0;a:do if((k[D>>2]|0)>0){h=d+12|0;C=d+8|0;q=E;t=0;b:while(1){p=k[a+324+(t<<2)>>2]|0;s=k[a+296+(p<<2)>>2]|0;w=b+(t<<2)|0;v=k[w>>2]|0;u=d+16+(p<<2)|0;p=k[e+44+(k[s+20>>2]<<2)>>2]|0;z=k[e+60+(k[s+24>>2]<<2)>>2]|0;s=k[q+388>>2]|0;y=k[q+384>>2]|0;x=(j[v>>1]|0)-(k[u>>2]|0)|0;F=(x>>31)+x|0;G=(x|0)<0?0-x|0:x;if(G){x=0;H=G;while(1){G=x+1|0;H=H>>1;if(!H){I=G;J=x;break}else x=G}if((J|0)>10){x=k[q>>2]|0;k[x+20>>2]=6;qb[k[x>>2]&127](q);K=I}else K=I}else K=0;x=k[p+(K<<2)>>2]|0;H=i[p+1024+K>>0]|0;G=H<<24>>24;if(!(H<<24>>24)){H=k[q>>2]|0;k[H+20>>2]=41;qb[k[H>>2]&127](q)}H=(k[h>>2]|0)+G|0;L=((1<<G)+-1&x)<<24-H|k[C>>2];if((H|0)>7){x=H;G=L;while(1){M=G>>>16;N=M&255;O=k[d>>2]|0;k[d>>2]=O+1;i[O>>0]=M;M=(k[l>>2]|0)+-1|0;k[l>>2]=M;if(!M){M=k[n>>2]|0;O=k[M+24>>2]|0;if(!(ub[k[O+12>>2]&63](M)|0)){A=0;B=116;break b}k[d>>2]=k[O>>2];k[l>>2]=k[O+4>>2]}if((N|0)==255?(N=k[d>>2]|0,k[d>>2]=N+1,i[N>>0]=0,N=(k[l>>2]|0)+-1|0,k[l>>2]=N,(N|0)==0):0){N=k[n>>2]|0;O=k[N+24>>2]|0;if(!(ub[k[O+12>>2]&63](N)|0)){A=0;B=116;break b}k[d>>2]=k[O>>2];k[l>>2]=k[O+4>>2]}O=G<<8;N=x+-8|0;if((N|0)>7){x=N;G=O}else{P=O;Q=N;break}}}else{P=L;Q=H}k[C>>2]=P;k[h>>2]=Q;if(!K){R=P;S=Q}else{G=Q+K|0;x=((1<<K)+-1&F)<<24-G|P;if((G|0)>7){p=G;N=x;while(1){O=N>>>16;M=O&255;T=k[d>>2]|0;k[d>>2]=T+1;i[T>>0]=O;O=(k[l>>2]|0)+-1|0;k[l>>2]=O;if(!O){O=k[n>>2]|0;T=k[O+24>>2]|0;if(!(ub[k[T+12>>2]&63](O)|0)){A=0;B=116;break b}k[d>>2]=k[T>>2];k[l>>2]=k[T+4>>2]}if((M|0)==255?(M=k[d>>2]|0,k[d>>2]=M+1,i[M>>0]=0,M=(k[l>>2]|0)+-1|0,k[l>>2]=M,(M|0)==0):0){M=k[n>>2]|0;T=k[M+24>>2]|0;if(!(ub[k[T+12>>2]&63](M)|0)){A=0;B=116;break b}k[d>>2]=k[T>>2];k[l>>2]=k[T+4>>2]}T=N<<8;M=p+-8|0;if((M|0)>7){p=M;N=T}else{U=M;V=T;break}}}else{U=G;V=x}k[C>>2]=V;k[h>>2]=U;R=V;S=U}if((s|0)>=1){N=z+960|0;p=z+1264|0;F=R;H=S;L=1;T=0;while(1){M=j[v+(k[y+(L<<2)>>2]<<1)>>1]|0;O=M<<16>>16;if(!(M<<16>>16)){W=H;X=F;Y=T+1|0}else{if((T|0)>15){Z=H;_=F;$=T;while(1){aa=k[N>>2]|0;ba=i[p>>0]|0;ca=ba<<24>>24;if(!(ba<<24>>24)){ba=k[n>>2]|0;da=k[ba>>2]|0;k[da+20>>2]=41;qb[k[da>>2]&127](ba)}ba=Z+ca|0;da=((1<<ca)+-1&aa)<<24-ba|_;if((ba|0)>7){aa=ba;ca=da;while(1){ea=ca>>>16;fa=ea&255;ga=k[d>>2]|0;k[d>>2]=ga+1;i[ga>>0]=ea;ea=(k[l>>2]|0)+-1|0;k[l>>2]=ea;if(!ea){ea=k[n>>2]|0;ga=k[ea+24>>2]|0;if(!(ub[k[ga+12>>2]&63](ea)|0)){A=0;B=116;break b}k[d>>2]=k[ga>>2];k[l>>2]=k[ga+4>>2]}do if((fa|0)==255){ga=k[d>>2]|0;k[d>>2]=ga+1;i[ga>>0]=0;ga=(k[l>>2]|0)+-1|0;k[l>>2]=ga;if(ga)break;ga=k[n>>2]|0;ea=k[ga+24>>2]|0;if(!(ub[k[ea+12>>2]&63](ga)|0)){A=0;B=116;break b}k[d>>2]=k[ea>>2];k[l>>2]=k[ea+4>>2]}while(0);fa=ca<<8;ea=aa+-8|0;if((ea|0)>7){aa=ea;ca=fa}else{ha=ea;ia=fa;break}}}else{ha=ba;ia=da}k[C>>2]=ia;k[h>>2]=ha;ca=$+-16|0;if((ca|0)>15){Z=ha;_=ia;$=ca}else{ja=ha;ka=ia;la=ca;break}}}else{ja=H;ka=F;la=T}$=M<<16>>16>>15;_=1;Z=M<<16>>16<0?0-O|0:O;while(1){Z=Z>>1;if(!Z){ma=_;break}else _=_+1|0}_=($<<16>>16)+O|0;if((ma|0)>10){Z=k[n>>2]|0;M=k[Z>>2]|0;k[M+20>>2]=6;qb[k[M>>2]&127](Z)}Z=ma+(la<<4)|0;M=k[z+(Z<<2)>>2]|0;ca=i[z+1024+Z>>0]|0;Z=ca<<24>>24;if(!(ca<<24>>24)){ca=k[n>>2]|0;aa=k[ca>>2]|0;k[aa+20>>2]=41;qb[k[aa>>2]&127](ca)}ca=ja+Z|0;aa=((1<<Z)+-1&M)<<24-ca|ka;if((ca|0)>7){M=ca;Z=aa;while(1){fa=Z>>>16;ea=fa&255;ga=k[d>>2]|0;k[d>>2]=ga+1;i[ga>>0]=fa;fa=(k[l>>2]|0)+-1|0;k[l>>2]=fa;if(!fa){fa=k[n>>2]|0;ga=k[fa+24>>2]|0;if(!(ub[k[ga+12>>2]&63](fa)|0)){A=0;B=116;break b}k[d>>2]=k[ga>>2];k[l>>2]=k[ga+4>>2]}do if((ea|0)==255){ga=k[d>>2]|0;k[d>>2]=ga+1;i[ga>>0]=0;ga=(k[l>>2]|0)+-1|0;k[l>>2]=ga;if(ga)break;ga=k[n>>2]|0;fa=k[ga+24>>2]|0;if(!(ub[k[fa+12>>2]&63](ga)|0)){A=0;B=116;break b}k[d>>2]=k[fa>>2];k[l>>2]=k[fa+4>>2]}while(0);ea=Z<<8;da=M+-8|0;if((da|0)>7){M=da;Z=ea}else{na=da;oa=ea;break}}}else{na=ca;oa=aa}k[C>>2]=oa;k[h>>2]=na;if(!ma){Z=k[n>>2]|0;M=k[Z>>2]|0;k[M+20>>2]=41;qb[k[M>>2]&127](Z)}Z=na+ma|0;M=((1<<ma)+-1&_)<<24-Z|oa;if((Z|0)>7){O=Z;$=M;while(1){ea=$>>>16;da=ea&255;ba=k[d>>2]|0;k[d>>2]=ba+1;i[ba>>0]=ea;ea=(k[l>>2]|0)+-1|0;k[l>>2]=ea;if(!ea){ea=k[n>>2]|0;ba=k[ea+24>>2]|0;if(!(ub[k[ba+12>>2]&63](ea)|0)){A=0;B=116;break b}k[d>>2]=k[ba>>2];k[l>>2]=k[ba+4>>2]}do if((da|0)==255){ba=k[d>>2]|0;k[d>>2]=ba+1;i[ba>>0]=0;ba=(k[l>>2]|0)+-1|0;k[l>>2]=ba;if(ba)break;ba=k[n>>2]|0;ea=k[ba+24>>2]|0;if(!(ub[k[ea+12>>2]&63](ba)|0)){A=0;B=116;break b}k[d>>2]=k[ea>>2];k[l>>2]=k[ea+4>>2]}while(0);da=$<<8;ea=O+-8|0;if((ea|0)>7){O=ea;$=da}else{pa=ea;qa=da;break}}}else{pa=Z;qa=M}k[C>>2]=qa;k[h>>2]=pa;W=pa;X=qa;Y=0}if((L|0)<(s|0)){F=X;H=W;L=L+1|0;T=Y}else{ra=W;sa=X;ta=Y;break}}if((ta|0)>0){T=k[z>>2]|0;L=i[z+1024>>0]|0;H=L<<24>>24;if(!(L<<24>>24)){L=k[n>>2]|0;F=k[L>>2]|0;k[F+20>>2]=41;qb[k[F>>2]&127](L)}L=ra+H|0;F=((1<<H)+-1&T)<<24-L|sa;if((L|0)>7){T=L;H=F;while(1){s=H>>>16;p=s&255;N=k[d>>2]|0;k[d>>2]=N+1;i[N>>0]=s;s=(k[l>>2]|0)+-1|0;k[l>>2]=s;if(!s){s=k[n>>2]|0;N=k[s+24>>2]|0;if(!(ub[k[N+12>>2]&63](s)|0)){A=0;B=116;break b}k[d>>2]=k[N>>2];k[l>>2]=k[N+4>>2]}if((p|0)==255?(p=k[d>>2]|0,k[d>>2]=p+1,i[p>>0]=0,p=(k[l>>2]|0)+-1|0,k[l>>2]=p,(p|0)==0):0){p=k[n>>2]|0;N=k[p+24>>2]|0;if(!(ub[k[N+12>>2]&63](p)|0)){A=0;B=116;break b}k[d>>2]=k[N>>2];k[l>>2]=k[N+4>>2]}N=H<<8;p=T+-8|0;if((p|0)>7){T=p;H=N}else{ua=p;va=N;break}}}else{ua=L;va=F}k[C>>2]=va;k[h>>2]=ua}}k[u>>2]=j[k[w>>2]>>1];H=t+1|0;if((H|0)>=(k[D>>2]|0))break a;q=k[n>>2]|0;t=H}if((B|0)==116){r=c;return A|0}}while(0);B=k[f>>2]|0;k[B>>2]=k[d>>2];k[B+4>>2]=k[l>>2];k[m>>2]=k[g>>2];k[m+4>>2]=k[g+4>>2];k[m+8>>2]=k[g+8>>2];k[m+12>>2]=k[g+12>>2];k[m+16>>2]=k[g+16>>2];k[m+20>>2]=k[g+20>>2];g=k[o>>2]|0;if(!g){A=1;r=c;return A|0}o=e+36|0;m=k[o>>2]|0;if(!m){k[o>>2]=g;l=e+40|0;k[l>>2]=(k[l>>2]|0)+1&7;wa=g}else wa=m;k[o>>2]=wa+-1;A=1;r=c;return A|0}function zn(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,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=r;r=r+1296|0;f=e+1028|0;g=e;if(c>>>0>3){h=k[a>>2]|0;k[h+20>>2]=52;k[h+24>>2]=c;qb[k[h>>2]&127](a)}h=(b|0)!=0;b=k[(h?a+120+(c<<2)|0:a+136+(c<<2)|0)>>2]|0;if(!b){j=k[a>>2]|0;k[j+20>>2]=52;k[j+24>>2]=c;qb[k[j>>2]&127](a)}j=k[d>>2]|0;if(!j){c=nb[k[k[a+4>>2]>>2]&63](a,1,1280)|0;k[d>>2]=c;m=a;n=c}else{m=a;n=j}j=1;c=0;while(1){d=i[b+j>>0]|0;o=d&255;p=o+c|0;if((p|0)>256){q=k[a>>2]|0;k[q+20>>2]=9;qb[k[q>>2]&127](m)}if(!(d<<24>>24))s=c;else{qr(f+c|0,j&255|0,o|0)|0;s=p}j=j+1|0;if((j|0)==17){t=s;break}else c=s}i[f+t>>0]=0;s=i[f>>0]|0;if(s<<24>>24){c=s;j=0;p=0;o=s<<24>>24;while(1){if((c<<24>>24|0)==(o|0)){s=j;d=p;while(1){q=d+1|0;k[g+(d<<2)>>2]=s;u=s+1|0;v=i[f+q>>0]|0;if((v<<24>>24|0)==(o|0)){s=u;d=q}else{w=v;x=u;y=q;break}}}else{w=c;x=j;y=p}if((x|0)>=(1<<o|0)){d=k[a>>2]|0;k[d+20>>2]=9;qb[k[d>>2]&127](m)}if(!(w<<24>>24))break;else{c=w;j=x<<1;p=y;o=o+1|0}}}qr(n+1024|0,0,256)|0;o=h?15:255;if((t|0)>0)z=0;else{r=e;return}do{h=l[b+17+z>>0]|0;y=n+1024+h|0;if(!(h>>>0<=o>>>0?(i[y>>0]|0)==0:0)){p=k[a>>2]|0;k[p+20>>2]=9;qb[k[p>>2]&127](m)}k[n+(h<<2)>>2]=k[g+(z<<2)>>2];i[y>>0]=i[f+z>>0]|0;z=z+1|0}while((z|0)!=(t|0));r=e;return}function An(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,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;c=a+128|0;d=k[c>>2]|0;if(!d)e=a+108|0;else{f=0;g=d;while(1){g=g>>1;if(!g){h=f;break}else f=f+1|0}if((h|0)>14){f=k[a+120>>2]|0;g=k[f>>2]|0;k[g+20>>2]=41;qb[k[g>>2]&127](f)}f=k[a+124>>2]|0;g=h<<4;d=a+108|0;do if(!(k[d>>2]|0)){j=k[a+60+(f<<2)>>2]|0;m=k[j+(g<<2)>>2]|0;n=i[j+1024+g>>0]|0;j=n<<24>>24;if(n<<24>>24==0?(n=k[a+120>>2]|0,o=k[n>>2]|0,k[o+20>>2]=41,qb[k[o>>2]&127](n),(k[d>>2]|0)!=0):0)break;n=a+16|0;o=(k[n>>2]|0)+j|0;p=a+12|0;q=((1<<j)+-1&m)<<24-o|k[p>>2];if((o|0)>7){m=a+112|0;j=a+116|0;r=a+120|0;s=o;t=q;while(1){u=t>>>16;v=u&255;w=k[m>>2]|0;k[m>>2]=w+1;i[w>>0]=u;u=(k[j>>2]|0)+-1|0;k[j>>2]=u;if(!u){u=k[r>>2]|0;w=k[u+24>>2]|0;if(!(ub[k[w+12>>2]&63](u)|0)){u=k[r>>2]|0;x=k[u>>2]|0;k[x+20>>2]=25;qb[k[x>>2]&127](u)}k[m>>2]=k[w>>2];k[j>>2]=k[w+4>>2]}if((v|0)==255?(v=k[m>>2]|0,k[m>>2]=v+1,i[v>>0]=0,v=(k[j>>2]|0)+-1|0,k[j>>2]=v,(v|0)==0):0){v=k[r>>2]|0;w=k[v+24>>2]|0;if(!(ub[k[w+12>>2]&63](v)|0)){v=k[r>>2]|0;u=k[v>>2]|0;k[u+20>>2]=25;qb[k[u>>2]&127](v)}k[m>>2]=k[w>>2];k[j>>2]=k[w+4>>2]}w=t<<8;s=s+-8|0;if((s|0)<=7){y=w;break}else t=w}z=o&7;A=y}else{z=o;A=q}k[p>>2]=A;k[n>>2]=z}else{t=(k[a+92+(f<<2)>>2]|0)+(g<<2)|0;k[t>>2]=(k[t>>2]|0)+1}while(0);if((h|0)!=0?(k[d>>2]|0)==0:0){g=a+16|0;f=(k[g>>2]|0)+h|0;z=a+12|0;A=(k[c>>2]&(1<<h)+-1)<<24-f|k[z>>2];if((f|0)>7){h=a+112|0;y=a+116|0;t=a+120|0;s=f;j=A;while(1){m=j>>>16;r=m&255;w=k[h>>2]|0;k[h>>2]=w+1;i[w>>0]=m;m=(k[y>>2]|0)+-1|0;k[y>>2]=m;if(!m){m=k[t>>2]|0;w=k[m+24>>2]|0;if(!(ub[k[w+12>>2]&63](m)|0)){m=k[t>>2]|0;v=k[m>>2]|0;k[v+20>>2]=25;qb[k[v>>2]&127](m)}k[h>>2]=k[w>>2];k[y>>2]=k[w+4>>2]}if((r|0)==255?(r=k[h>>2]|0,k[h>>2]=r+1,i[r>>0]=0,r=(k[y>>2]|0)+-1|0,k[y>>2]=r,(r|0)==0):0){r=k[t>>2]|0;w=k[r+24>>2]|0;if(!(ub[k[w+12>>2]&63](r)|0)){r=k[t>>2]|0;m=k[r>>2]|0;k[m+20>>2]=25;qb[k[m>>2]&127](r)}k[h>>2]=k[w>>2];k[y>>2]=k[w+4>>2]}w=j<<8;s=s+-8|0;if((s|0)<=7){B=w;break}else j=w}C=f&7;D=B}else{C=f;D=A}k[z>>2]=D;k[g>>2]=C}k[c>>2]=0;C=a+132|0;g=k[C>>2]|0;a:do if((g|0)!=0&(k[d>>2]|0)==0){D=a+16|0;z=a+12|0;A=a+112|0;f=a+116|0;B=a+120|0;j=g;s=k[a+136>>2]|0;y=0;while(1){if(!y){h=k[D>>2]|0;t=h+1|0;w=((l[s>>0]|0)&1)<<23-h|k[z>>2];if((t|0)>7){h=t;r=w;while(1){m=r>>>16;v=m&255;u=k[A>>2]|0;k[A>>2]=u+1;i[u>>0]=m;m=(k[f>>2]|0)+-1|0;k[f>>2]=m;if(!m){m=k[B>>2]|0;u=k[m+24>>2]|0;if(!(ub[k[u+12>>2]&63](m)|0)){m=k[B>>2]|0;x=k[m>>2]|0;k[x+20>>2]=25;qb[k[x>>2]&127](m)}k[A>>2]=k[u>>2];k[f>>2]=k[u+4>>2]}if((v|0)==255?(v=k[A>>2]|0,k[A>>2]=v+1,i[v>>0]=0,v=(k[f>>2]|0)+-1|0,k[f>>2]=v,(v|0)==0):0){v=k[B>>2]|0;u=k[v+24>>2]|0;if(!(ub[k[u+12>>2]&63](v)|0)){v=k[B>>2]|0;m=k[v>>2]|0;k[m+20>>2]=25;qb[k[m>>2]&127](v)}k[A>>2]=k[u>>2];k[f>>2]=k[u+4>>2]}u=r<<8;h=h+-8|0;if((h|0)<=7){E=u;break}else r=u}F=t&7;G=E}else{F=t;G=w}k[z>>2]=G;k[D>>2]=F}r=j+-1|0;if(!r)break a;j=r;s=s+1|0;y=k[d>>2]|0}}while(0);k[C>>2]=0;e=d}if(!(k[e>>2]|0)){Bn(a);e=a+112|0;d=k[e>>2]|0;k[e>>2]=d+1;i[d>>0]=-1;d=a+116|0;C=(k[d>>2]|0)+-1|0;k[d>>2]=C;if(!C){C=a+120|0;F=k[C>>2]|0;G=k[F+24>>2]|0;if(!(ub[k[G+12>>2]&63](F)|0)){F=k[C>>2]|0;C=k[F>>2]|0;k[C+20>>2]=25;qb[k[C>>2]&127](F)}F=k[G>>2]|0;k[e>>2]=F;k[d>>2]=k[G+4>>2];H=F}else H=k[e>>2]|0;k[e>>2]=H+1;i[H>>0]=b+208;b=(k[d>>2]|0)+-1|0;k[d>>2]=b;if(!b){b=a+120|0;H=k[b>>2]|0;F=k[H+24>>2]|0;if(!(ub[k[F+12>>2]&63](H)|0)){H=k[b>>2]|0;b=k[H>>2]|0;k[b+20>>2]=25;qb[k[b>>2]&127](H)}k[e>>2]=k[F>>2];k[d>>2]=k[F+4>>2]}}F=a+120|0;d=k[F>>2]|0;if(k[d+364>>2]|0){k[c>>2]=0;k[a+132>>2]=0;return}if((k[d+292>>2]|0)>0)I=0;else return;do{k[a+20+(I<<2)>>2]=0;I=I+1|0}while((I|0)<(k[(k[F>>2]|0)+292>>2]|0));return}function Bn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;if(k[a+108>>2]|0){b=a+16|0;c=a+12|0;k[c>>2]=0;k[b>>2]=0;return}d=a+16|0;e=k[d>>2]|0;f=e+7|0;g=a+12|0;h=127<<17-e|k[g>>2];if((f|0)>7){e=a+112|0;j=a+116|0;l=a+120|0;a=f;m=h;while(1){n=m>>>16;o=n&255;p=k[e>>2]|0;k[e>>2]=p+1;i[p>>0]=n;n=(k[j>>2]|0)+-1|0;k[j>>2]=n;if(!n){n=k[l>>2]|0;p=k[n+24>>2]|0;if(!(ub[k[p+12>>2]&63](n)|0)){n=k[l>>2]|0;q=k[n>>2]|0;k[q+20>>2]=25;qb[k[q>>2]&127](n)}k[e>>2]=k[p>>2];k[j>>2]=k[p+4>>2]}if((o|0)==255?(o=k[e>>2]|0,k[e>>2]=o+1,i[o>>0]=0,o=(k[j>>2]|0)+-1|0,k[j>>2]=o,(o|0)==0):0){o=k[l>>2]|0;p=k[o+24>>2]|0;if(!(ub[k[p+12>>2]&63](o)|0)){o=k[l>>2]|0;n=k[o>>2]|0;k[n+20>>2]=25;qb[k[n>>2]&127](o)}k[e>>2]=k[p>>2];k[j>>2]=k[p+4>>2]}p=m<<8;a=a+-8|0;if((a|0)<=7){r=p;break}else m=p}s=f&7;t=r}else{s=f;t=h}k[g>>2]=t;k[d>>2]=s;b=d;c=g;k[c>>2]=0;k[b>>2]=0;return}function Cn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+2096|0;e=d+2056|0;f=d+1028|0;g=d;h=e;j=h+33|0;do{i[h>>0]=0;h=h+1|0}while((h|0)<(j|0));qr(f|0,0,1028)|0;qr(g|0,-1,1028)|0;k[c+1024>>2]=1;m=-1;n=0;o=1e9;a:while(1){if((n|0)<257){p=k[c+(n<<2)>>2]|0;q=(p|0)==0|(p|0)>(o|0);m=q?m:n;n=n+1|0;o=q?o:p;continue}else{s=-1;t=0;u=1e9}while(1){p=k[c+(t<<2)>>2]|0;q=(t|0)==(m|0)|((p|0)==0|(p|0)>(u|0));v=q?s:t;t=t+1|0;if((t|0)==257){w=v;break}else{s=v;u=q?u:p}}if((w|0)<0)break;p=c+(w<<2)|0;q=c+(m<<2)|0;k[q>>2]=(k[q>>2]|0)+(k[p>>2]|0);k[p>>2]=0;p=f+(m<<2)|0;k[p>>2]=(k[p>>2]|0)+1;p=g+(m<<2)|0;q=k[p>>2]|0;if((q|0)>-1){v=q;do{q=f+(v<<2)|0;k[q>>2]=(k[q>>2]|0)+1;q=g+(v<<2)|0;v=k[q>>2]|0}while((v|0)>-1);x=q}else x=p;k[x>>2]=w;v=f+(w<<2)|0;k[v>>2]=(k[v>>2]|0)+1;v=k[g+(w<<2)>>2]|0;if((v|0)>-1)y=v;else{m=-1;n=0;o=1e9;continue}while(1){v=f+(y<<2)|0;k[v>>2]=(k[v>>2]|0)+1;v=k[g+(y<<2)>>2]|0;if((v|0)>-1)y=v;else{m=-1;n=0;o=1e9;continue a}}}o=0;do{n=k[f+(o<<2)>>2]|0;if(n){if((n|0)>32){m=k[a>>2]|0;k[m+20>>2]=40;qb[k[m>>2]&127](a)}m=e+n|0;i[m>>0]=(i[m>>0]|0)+1<<24>>24}o=o+1|0}while((o|0)!=257);z=32;while(1){o=e+z|0;a=i[o>>0]|0;if(!(a<<24>>24))A=z+-1|0;else{m=z+-2|0;n=z+-1|0;y=e+n|0;g=a;do{a=m;while(1){w=e+a|0;if(!(i[w>>0]|0))a=a+-1|0;else{B=w;C=a;break}}i[o>>0]=(g&255)+254;i[y>>0]=(i[y>>0]|0)+1<<24>>24;a=e+(C+1)|0;i[a>>0]=(l[a>>0]|0)+2;i[B>>0]=(i[B>>0]|0)+-1<<24>>24;g=i[o>>0]|0}while(g<<24>>24!=0);A=n}if((A|0)>16)z=A;else{D=16;break}}while(1){A=e+D|0;z=i[A>>0]|0;if(!(z<<24>>24))D=D+-1|0;else{E=A;F=z;break}}i[E>>0]=F+-1<<24>>24;h=b;F=e;j=h+17|0;do{i[h>>0]=i[F>>0]|0;h=h+1|0;F=F+1|0}while((h|0)<(j|0));F=1;h=0;while(1){j=0;e=h;while(1){if((k[f+(j<<2)>>2]|0)==(F|0)){i[b+17+e>>0]=j;G=e+1|0}else G=e;j=j+1|0;if((j|0)==256){H=G;break}else e=G}e=F+1|0;if((e|0)==33)break;else{F=e;h=H}}k[b+276>>2]=0;r=d;return}function Dn(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,192)|0;k[a+468>>2]=c;k[c>>2]=63;k[c+8>>2]=64;k[c+60>>2]=0;k[c+124>>2]=0;k[c+64>>2]=0;k[c+128>>2]=0;k[c+68>>2]=0;k[c+132>>2]=0;k[c+72>>2]=0;k[c+136>>2]=0;k[c+76>>2]=0;k[c+140>>2]=0;k[c+80>>2]=0;k[c+144>>2]=0;k[c+84>>2]=0;k[c+148>>2]=0;k[c+88>>2]=0;k[c+152>>2]=0;k[c+92>>2]=0;k[c+156>>2]=0;k[c+96>>2]=0;k[c+160>>2]=0;k[c+100>>2]=0;k[c+164>>2]=0;k[c+104>>2]=0;k[c+168>>2]=0;k[c+108>>2]=0;k[c+172>>2]=0;k[c+112>>2]=0;k[c+176>>2]=0;k[c+116>>2]=0;k[c+180>>2]=0;k[c+120>>2]=0;k[c+184>>2]=0;i[c+188>>0]=113;if(!(k[a+224>>2]|0))return;c=a+36|0;d=nb[k[k[b>>2]>>2]&63](a,1,k[c>>2]<<8)|0;k[a+160>>2]=d;if((k[c>>2]|0)>0)e=0;else return;do{qr(d+(e<<8)|0,-1,256)|0;e=e+1|0}while((e|0)<(k[c>>2]|0));return}function En(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;b=k[a+468>>2]|0;c=a+224|0;d=a+412|0;e=k[d>>2]|0;f=(e|0)==0;do if(k[c>>2]|0){g=a+416|0;h=k[g>>2]|0;if(f)if(!h)j=7;else j=11;else if(((h|0)>=(e|0)?(h|0)<=(k[a+436>>2]|0):0)?(k[a+340>>2]|0)==1:0)j=7;else j=11;do if((j|0)==7){h=k[a+420>>2]|0;if(h){l=h+-1|0;if((l|0)==(k[a+424>>2]|0))m=l;else{j=11;break}}else m=k[a+424>>2]|0;if((m|0)>13)j=11}while(0);if((j|0)==11){l=k[a>>2]|0;k[l+20>>2]=17;k[l+24>>2]=e;k[l+28>>2]=k[g>>2];k[l+32>>2]=k[a+420>>2];k[l+36>>2]=k[a+424>>2];qb[k[l>>2]&127](a)}l=a+340|0;h=k[l>>2]|0;if((h|0)>0){n=a+160|0;o=a+420|0;p=a+424|0;q=0;do{r=k[(k[a+344+(q<<2)>>2]|0)+4>>2]|0;s=k[n>>2]|0;t=k[d>>2]|0;if(t)if((k[s+(r<<8)>>2]|0)<0){u=k[a>>2]|0;k[u+20>>2]=118;k[u+24>>2]=r;k[u+28>>2]=0;rb[k[u+4>>2]&31](a,-1);v=k[d>>2]|0}else v=t;else v=0;if((v|0)<=(k[g>>2]|0)){t=v;while(1){u=s+(r<<8)+(t<<2)|0;w=k[u>>2]|0;if((k[o>>2]|0)!=(((w|0)<0?0:w)|0)){w=k[a>>2]|0;k[w+20>>2]=118;k[w+24>>2]=r;k[w+28>>2]=t;rb[k[w+4>>2]&31](a,-1)}k[u>>2]=k[p>>2];if((t|0)<(k[g>>2]|0))t=t+1|0;else break}}q=q+1|0;t=k[l>>2]|0}while((q|0)<(t|0));x=o;y=t}else{x=a+420|0;y=h}o=(k[d>>2]|0)==0;q=b+4|0;if(!(k[x>>2]|0))if(o){k[q>>2]=56;z=l;A=y;break}else{k[q>>2]=57;z=l;A=y;break}else if(o){k[q>>2]=58;z=l;A=y;break}else{k[q>>2]=59;z=l;A=y;break}}else{if((f?(k[a+420>>2]|0)==0:0)?(k[a+424>>2]|0)==0:0){q=k[a+416>>2]|0;if((q|0)<64?(q|0)!=(k[a+436>>2]|0):0)j=35}else j=35;if((j|0)==35){q=k[a>>2]|0;k[q+20>>2]=125;rb[k[q+4>>2]&31](a,-1)}k[b+4>>2]=60;q=a+340|0;z=q;A=k[q>>2]|0}while(0);if((A|0)<=0){B=b+12|0;k[B>>2]=0;C=b+16|0;k[C>>2]=0;D=b+20|0;k[D>>2]=-16;E=a+280|0;F=k[E>>2]|0;G=b+56|0;k[G>>2]=F;return}A=a+4|0;f=a+436|0;y=a+420|0;x=0;do{v=k[a+344+(x<<2)>>2]|0;if(k[c>>2]|0)if(!(k[d>>2]|0))if(!(k[y>>2]|0))j=42;else j=48;else j=49;else j=42;if((j|0)==42){j=0;e=k[v+20>>2]|0;if(e>>>0>15){m=k[a>>2]|0;k[m+20>>2]=50;k[m+24>>2]=e;qb[k[m>>2]&127](a)}m=b+60+(e<<2)|0;e=k[m>>2]|0;if(!e){q=nb[k[k[A>>2]>>2]&63](a,1,64)|0;k[m>>2]=q;H=q}else H=e;e=H;q=e+64|0;do{i[e>>0]=0;e=e+1|0}while((e|0)<(q|0));k[b+24+(x<<2)>>2]=0;k[b+40+(x<<2)>>2]=0;if(!(k[c>>2]|0)){if(k[f>>2]|0)j=49}else j=48}if((j|0)==48?(j=0,(k[d>>2]|0)!=0):0)j=49;if((j|0)==49){j=0;e=k[v+24>>2]|0;if(e>>>0>15){q=k[a>>2]|0;k[q+20>>2]=50;k[q+24>>2]=e;qb[k[q>>2]&127](a)}q=b+124+(e<<2)|0;e=k[q>>2]|0;if(!e){l=nb[k[k[A>>2]>>2]&63](a,1,256)|0;k[q>>2]=l;I=l}else I=e;qr(I|0,0,256)|0}x=x+1|0}while((x|0)<(k[z>>2]|0));B=b+12|0;k[B>>2]=0;C=b+16|0;k[C>>2]=0;D=b+20|0;k[D>>2]=-16;E=a+280|0;F=k[E>>2]|0;G=b+56|0;k[G>>2]=F;return}function Fn(a){a=a|0;return}function Gn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,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=k[a+468>>2]|0;if(k[a+280>>2]|0){d=c+56|0;e=k[d>>2]|0;if(!e){Ln(a);f=k[d>>2]|0}else f=e;k[d>>2]=f+-1}f=c+20|0;if((k[f>>2]|0)==-1)return 1;d=a+368|0;if((k[d>>2]|0)<=0)return 1;e=a+424|0;g=0;a:while(1){h=k[b+(g<<2)>>2]|0;i=k[a+372+(g<<2)>>2]|0;m=k[(k[a+344+(i<<2)>>2]|0)+20>>2]|0;n=c+60+(m<<2)|0;o=k[n>>2]|0;p=c+40+(i<<2)|0;q=k[p>>2]|0;if(!(Mn(a,o+q|0)|0)){k[p>>2]=0;r=k[c+24+(i<<2)>>2]|0}else{s=Mn(a,o+(q+1)|0)|0;t=o+(q+2+s)|0;q=Mn(a,t)|0;if(q){o=(k[n>>2]|0)+20|0;if(!(Mn(a,o)|0)){u=q;v=o}else{n=q;q=o;while(1){o=n<<1;if((o|0)==32768)break a;w=q+1|0;if(!(Mn(a,w)|0)){u=o;v=w;break}else{n=o;q=w}}}}else{u=0;v=t}do if((u|0)>=(1<<(l[a+232+m>>0]|0)>>1|0)){q=s<<2;if((u|0)>(1<<(l[a+248+m>>0]|0)>>1|0)){k[p>>2]=q+12;break}else{k[p>>2]=q+4;break}}else k[p>>2]=0;while(0);p=v+14|0;m=u>>1;if(!m)x=u;else{t=m;m=u;while(1){q=(Mn(a,p)|0)==0;n=(q?0:t)|m;t=t>>1;if(!t){x=n;break}else m=n}}m=c+24+(i<<2)|0;t=(k[m>>2]|0)+((s|0)==0?x+1|0:~x)|0;k[m>>2]=t;r=t}j[h>>1]=r<<k[e>>2];g=g+1|0;if((g|0)>=(k[d>>2]|0)){y=24;break}}if((y|0)==24)return 1;y=k[a>>2]|0;k[y+20>>2]=117;rb[k[y+4>>2]&31](a,-1);k[f>>2]=-1;return 1}function Hn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,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=k[a+468>>2]|0;if(k[a+280>>2]|0){d=c+56|0;e=k[d>>2]|0;if(!e){Ln(a);f=k[d>>2]|0}else f=e;k[d>>2]=f+-1}f=c+20|0;if((k[f>>2]|0)==-1)return 1;d=k[a+432>>2]|0;e=k[b>>2]|0;b=k[(k[a+344>>2]|0)+24>>2]|0;g=c+124+(b<<2)|0;h=a+416|0;i=c+188|0;c=a+424|0;m=a+264+b|0;b=(k[a+412>>2]|0)+-1|0;a:while(1){n=(k[g>>2]|0)+(b*3|0)|0;if(!(Mn(a,n)|0)){o=b;p=n}else{q=20;break}while(1){n=o;o=o+1|0;if(Mn(a,p+1|0)|0){r=o;s=n;t=p;break}if((o|0)>=(k[h>>2]|0)){q=10;break a}else p=p+3|0}n=Mn(a,i)|0;u=t+2|0;v=Mn(a,u)|0;if(v){if(Mn(a,u)|0){w=v<<1;x=(k[g>>2]|0)+((s|0)<(l[m>>0]|0|0)?189:217)|0;if(!(Mn(a,x)|0)){y=w;z=x}else{A=w;w=x;while(1){x=A<<1;if((x|0)==32768){q=15;break a}B=w+1|0;if(!(Mn(a,B)|0)){y=x;z=B;break}else{A=x;w=B}}}}else{y=v;z=u}w=z+14|0;A=y>>1;if(!A)C=y;else{B=A;A=y;while(1){x=(Mn(a,w)|0)==0;D=(x?0:B)|A;B=B>>1;if(!B){C=D;break}else A=D}}}else C=0;j[e+(k[d+(r<<2)>>2]<<1)>>1]=((n|0)==0?C+1|0:~C)<<k[c>>2];if((r|0)<(k[h>>2]|0))b=r;else{q=20;break}}if((q|0)==10){r=k[a>>2]|0;k[r+20>>2]=117;rb[k[r+4>>2]&31](a,-1);k[f>>2]=-1;return 1}else if((q|0)==15){r=k[a>>2]|0;k[r+20>>2]=117;rb[k[r+4>>2]&31](a,-1);k[f>>2]=-1;return 1}else if((q|0)==20)return 1;return 0}function In(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=k[a+468>>2]|0;if(k[a+280>>2]|0){d=c+56|0;e=k[d>>2]|0;if(!e){Ln(a);f=k[d>>2]|0}else f=e;k[d>>2]=f+-1}f=c+188|0;c=1<<k[a+424>>2];d=a+368|0;if((k[d>>2]|0)>0)g=0;else return 1;do{if(Mn(a,f)|0){e=k[b+(g<<2)>>2]|0;j[e>>1]=m[e>>1]|0|c}g=g+1|0}while((g|0)<(k[d>>2]|0));return 1}function Jn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;c=k[a+468>>2]|0;if(k[a+280>>2]|0){d=c+56|0;e=k[d>>2]|0;if(!e){Ln(a);f=k[d>>2]|0}else f=e;k[d>>2]=f+-1}f=c+20|0;if((k[f>>2]|0)==-1)return 1;d=k[a+432>>2]|0;e=k[b>>2]|0;b=k[(k[a+344>>2]|0)+24>>2]|0;g=k[a+424>>2]|0;h=1<<g;i=-1<<g;g=a+416|0;l=k[g>>2]|0;while(1){if(j[e+(k[d+(l<<2)>>2]<<1)>>1]|0){m=l;break}l=l+-1|0;if(!l){m=0;break}}l=c+124+(b<<2)|0;b=c+188|0;c=h&65535;n=i&65535;o=(k[a+412>>2]|0)+-1|0;a:while(1){p=(k[l>>2]|0)+(o*3|0)|0;if((o|0)>=(m|0)?(Mn(a,p)|0)!=0:0){q=24;break}else{r=o;s=p}while(1){r=r+1|0;p=e+(k[d+(r<<2)>>2]<<1)|0;if(j[p>>1]|0){t=r;u=p;v=s;q=13;break}if(Mn(a,s+1|0)|0){w=r;x=p;q=18;break}if((r|0)>=(k[g>>2]|0)){q=22;break a}else s=s+3|0}do if((q|0)==13){q=0;if(Mn(a,v+2|0)|0){p=j[u>>1]|0;y=p<<16>>16;if(p<<16>>16<0){j[u>>1]=y+i;z=t;break}else{j[u>>1]=y+h;z=t;break}}else z=t}else if((q|0)==18){q=0;if(!(Mn(a,b)|0)){j[x>>1]=c;z=w;break}else{j[x>>1]=n;z=w;break}}while(0);if((z|0)<(k[g>>2]|0))o=z;else{q=24;break}}if((q|0)==22){z=k[a>>2]|0;k[z+20>>2]=117;rb[k[z+4>>2]&31](a,-1);k[f>>2]=-1;return 1}else if((q|0)==24)return 1;return 0}function Kn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,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;c=k[a+468>>2]|0;if(k[a+280>>2]|0){d=c+56|0;e=k[d>>2]|0;if(!e){Ln(a);f=k[d>>2]|0}else f=e;k[d>>2]=f+-1}f=c+20|0;if((k[f>>2]|0)==-1)return 1;d=k[a+432>>2]|0;e=a+368|0;if((k[e>>2]|0)<=0)return 1;g=a+436|0;h=c+188|0;i=0;a:while(1){m=k[b+(i<<2)>>2]|0;n=k[a+372+(i<<2)>>2]|0;o=k[a+344+(n<<2)>>2]|0;p=k[o+20>>2]|0;q=c+60+(p<<2)|0;r=k[q>>2]|0;s=c+40+(n<<2)|0;t=k[s>>2]|0;if(!(Mn(a,r+t|0)|0)){k[s>>2]=0;u=k[c+24+(n<<2)>>2]|0}else{v=Mn(a,r+(t+1)|0)|0;w=r+(t+2+v)|0;t=Mn(a,w)|0;if(t){r=(k[q>>2]|0)+20|0;if(!(Mn(a,r)|0)){x=t;y=r}else{q=t;t=r;while(1){r=q<<1;if((r|0)==32768){z=13;break a}A=t+1|0;if(!(Mn(a,A)|0)){x=r;y=A;break}else{q=r;t=A}}}}else{x=0;y=w}do if((x|0)>=(1<<(l[a+232+p>>0]|0)>>1|0)){t=v<<2;if((x|0)>(1<<(l[a+248+p>>0]|0)>>1|0)){k[s>>2]=t+12;break}else{k[s>>2]=t+4;break}}else k[s>>2]=0;while(0);s=y+14|0;p=x>>1;if(!p)B=x;else{w=p;p=x;while(1){t=(Mn(a,s)|0)==0;q=(t?0:w)|p;w=w>>1;if(!w){B=q;break}else p=q}}p=c+24+(n<<2)|0;w=(k[p>>2]|0)+((v|0)==0?B+1|0:~B)|0;k[p>>2]=w;u=w}j[m>>1]=u;b:do if(k[g>>2]|0){w=k[o+24>>2]|0;p=c+124+(w<<2)|0;s=a+264+w|0;w=0;while(1){q=(k[p>>2]|0)+(w*3|0)|0;if(!(Mn(a,q)|0)){C=w;D=q}else break b;while(1){q=C;C=C+1|0;if(Mn(a,D+1|0)|0){E=C;F=q;G=D;break}if((C|0)>=(k[g>>2]|0)){z=28;break a}else D=D+3|0}q=Mn(a,h)|0;t=G+2|0;A=Mn(a,t)|0;if(A){if(Mn(a,t)|0){r=A<<1;H=(k[p>>2]|0)+((F|0)<(l[s>>0]|0|0)?189:217)|0;if(!(Mn(a,H)|0)){I=r;J=H}else{K=r;r=H;while(1){H=K<<1;if((H|0)==32768){z=33;break a}L=r+1|0;if(!(Mn(a,L)|0)){I=H;J=L;break}else{K=H;r=L}}}}else{I=A;J=t}r=J+14|0;K=I>>1;if(!K)M=I;else{L=K;K=I;while(1){H=(Mn(a,r)|0)==0;N=(H?0:L)|K;L=L>>1;if(!L){M=N;break}else K=N}}}else M=0;j[m+(k[d+(E<<2)>>2]<<1)>>1]=(q|0)==0?M+1|0:M^65535;if((E|0)<(k[g>>2]|0))w=E;else break}}while(0);i=i+1|0;if((i|0)>=(k[e>>2]|0)){z=39;break}}if((z|0)==13){e=k[a>>2]|0;k[e+20>>2]=117;rb[k[e+4>>2]&31](a,-1);k[f>>2]=-1;return 1}else if((z|0)==28){e=k[a>>2]|0;k[e+20>>2]=117;rb[k[e+4>>2]&31](a,-1);k[f>>2]=-1;return 1}else if((z|0)==33){e=k[a>>2]|0;k[e+20>>2]=117;rb[k[e+4>>2]&31](a,-1);k[f>>2]=-1;return 1}else if((z|0)==39)return 1;return 0}function Ln(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;b=k[a+468>>2]|0;if(!(ub[k[(k[a+464>>2]|0)+8>>2]&63](a)|0)){c=k[a>>2]|0;k[c+20>>2]=25;qb[k[c>>2]&127](a)}c=a+340|0;if((k[c>>2]|0)<=0){d=b+12|0;k[d>>2]=0;e=b+16|0;k[e>>2]=0;f=b+20|0;k[f>>2]=-16;g=a+280|0;h=k[g>>2]|0;j=b+56|0;k[j>>2]=h;return}l=a+224|0;m=a+436|0;n=a+412|0;o=a+420|0;p=0;do{q=k[a+344+(p<<2)>>2]|0;if(k[l>>2]|0)if(!(k[n>>2]|0))if(!(k[o>>2]|0))r=8;else r=10;else r=11;else r=8;if((r|0)==8){r=0;s=k[b+60+(k[q+20>>2]<<2)>>2]|0;t=s+64|0;do{i[s>>0]=0;s=s+1|0}while((s|0)<(t|0));k[b+24+(p<<2)>>2]=0;k[b+40+(p<<2)>>2]=0;if(!(k[l>>2]|0)){if(k[m>>2]|0)r=11}else r=10}if((r|0)==10?(r=0,(k[n>>2]|0)!=0):0)r=11;if((r|0)==11){r=0;qr(k[b+124+(k[q+24>>2]<<2)>>2]|0,0,256)|0}p=p+1|0}while((p|0)<(k[c>>2]|0));d=b+12|0;k[d>>2]=0;e=b+16|0;k[e>>2]=0;f=b+20|0;k[f>>2]=-16;g=a+280|0;h=k[g>>2]|0;j=b+56|0;k[j>>2]=h;return}function Mn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;c=k[a+468>>2]|0;d=c+16|0;e=k[d>>2]|0;f=c+20|0;if((e|0)<32768){g=a+440|0;h=a+24|0;j=c+12|0;m=k[f>>2]|0;while(1){n=m+-1|0;k[f>>2]=n;if((m|0)<1){a:do if(!(k[g>>2]|0)){o=k[h>>2]|0;p=o+4|0;if((k[p>>2]|0)==0?(ub[k[o+12>>2]&63](a)|0)==0:0){q=k[a>>2]|0;k[q+20>>2]=25;qb[k[q>>2]&127](a)}k[p>>2]=(k[p>>2]|0)+-1;p=k[o>>2]|0;k[o>>2]=p+1;o=i[p>>0]|0;p=o&255;if(o<<24>>24==-1){b:while(1){o=k[h>>2]|0;q=o+4|0;if((k[q>>2]|0)==0?(ub[k[o+12>>2]&63](a)|0)==0:0){r=k[a>>2]|0;k[r+20>>2]=25;qb[k[r>>2]&127](a)}k[q>>2]=(k[q>>2]|0)+-1;q=k[o>>2]|0;k[o>>2]=q+1;o=l[q>>0]|0;switch(o|0){case 0:{s=255;break a;break}case 255:break;default:{t=o;break b}}}k[g>>2]=t;s=0}else s=p}else s=0;while(0);k[j>>2]=k[j>>2]<<8|s;o=k[f>>2]|0;q=o+8|0;k[f>>2]=q;if((o|0)<-8){r=o+9|0;k[f>>2]=r;if(!r){k[d>>2]=32768;u=0}else u=r}else u=q}else u=n;q=k[d>>2]<<1;k[d>>2]=q;if((q|0)<32768)m=u;else{v=q;w=j;x=u;break}}}else{v=e;w=c+12|0;x=k[f>>2]|0}f=l[b>>0]|0;c=k[122136+((f&127)<<2)>>2]|0;e=c>>8;u=c>>16;j=v-u|0;k[d>>2]=j;v=j<<x;x=k[w>>2]|0;if((x|0)>=(v|0)){k[w>>2]=x-v;k[d>>2]=u;d=f&128;if((j|0)<(u|0)){i[b>>0]=d^e;y=f;z=y>>7;return z|0}else{i[b>>0]=d^c;y=f^128;z=y>>7;return z|0}}if((j|0)>=32768){y=f;z=y>>7;return z|0}d=f&128;if((j|0)<(u|0)){i[b>>0]=d^c;y=f^128;z=y>>7;return z|0}else{i[b>>0]=d^e;y=f;z=y>>7;return z|0}return 0}function Nn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;c=a+4|0;d=nb[k[k[c>>2]>>2]&63](a,1,116)|0;k[a+452>>2]=d;k[d>>2]=65;k[d+8>>2]=66;k[d+112>>2]=0;if(!b){b=nb[k[(k[c>>2]|0)+4>>2]&63](a,1,1280)|0;k[d+32>>2]=b;k[d+36>>2]=b+128;k[d+40>>2]=b+256;k[d+44>>2]=b+384;k[d+48>>2]=b+512;k[d+52>>2]=b+640;k[d+56>>2]=b+768;k[d+60>>2]=b+896;k[d+64>>2]=b+1024;k[d+68>>2]=b+1152;if(!(k[a+436>>2]|0))qr(b|0,0,1280)|0;k[d+4>>2]=52;k[d+12>>2]=62;k[d+16>>2]=0;return}b=a+36|0;if((k[b>>2]|0)>0){e=a+224|0;f=d+72|0;g=0;h=k[a+216>>2]|0;while(1){i=h+12|0;j=k[i>>2]|0;l=(k[e>>2]|0)==0?j:j*3|0;j=k[(k[c>>2]|0)+20>>2]|0;m=qm(k[h+28>>2]|0,k[h+8>>2]|0)|0;n=qm(k[h+32>>2]|0,k[i>>2]|0)|0;i=sb[j&3](a,1,1,m,n,l)|0;k[f+(g<<2)>>2]=i;g=g+1|0;if((g|0)>=(k[b>>2]|0)){o=f;break}else h=h+88|0}}else o=d+72|0;k[d+4>>2]=51;k[d+12>>2]=61;k[d+16>>2]=o;return}function On(a){a=a|0;var b=0,c=0;k[a+148>>2]=0;b=k[a+452>>2]|0;do if((k[a+340>>2]|0)<=1){c=k[a+344>>2]|0;if((k[a+332>>2]|0)==1){k[b+28>>2]=k[c+76>>2];break}else{k[b+28>>2]=k[c+12>>2];break}}else k[b+28>>2]=1;while(0);k[b+20>>2]=0;k[b+24>>2]=0;return}function Pn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0;b=k[a+452>>2]|0;if(!(k[b+16>>2]|0)){c=a+156|0;k[c>>2]=0;return}a:do if(((k[a+80>>2]|0)!=0?(k[a+224>>2]|0)!=0:0)?(d=a+160|0,(k[d>>2]|0)!=0):0){e=b+112|0;f=k[e>>2]|0;if(!f){g=a+36|0;h=nb[k[k[a+4>>2]>>2]&63](a,1,(k[g>>2]|0)*24|0)|0;k[e>>2]=h;i=g;l=h}else{i=a+36|0;l=f}if((k[i>>2]|0)>0){f=0;h=l;g=k[a+216>>2]|0;e=0;while(1){m=k[g+80>>2]|0;if(!m)break a;if(!(j[m>>1]|0))break a;if(!(j[m+2>>1]|0))break a;if(!(j[m+16>>1]|0))break a;if(!(j[m+32>>1]|0))break a;if(!(j[m+18>>1]|0))break a;if(!(j[m+4>>1]|0))break a;m=k[d>>2]|0;if((k[m+(f<<8)>>2]|0)<0)break a;n=m+(f<<8)+4|0;k[h+4>>2]=k[n>>2];o=k[n>>2]|0;n=m+(f<<8)+8|0;k[h+8>>2]=k[n>>2];p=k[n>>2]|o;o=m+(f<<8)+12|0;k[h+12>>2]=k[o>>2];n=p|k[o>>2];o=m+(f<<8)+16|0;k[h+16>>2]=k[o>>2];p=n|k[o>>2];o=m+(f<<8)+20|0;k[h+20>>2]=k[o>>2];m=(p|k[o>>2]|0)==0?e:1;f=f+1|0;if((f|0)>=(k[i>>2]|0)){q=m;break}else{h=h+24|0;g=g+88|0;e=m}}if(q){k[b+12>>2]=63;c=a+156|0;k[c>>2]=0;return}}}while(0);k[b+12>>2]=61;c=a+156|0;k[c>>2]=0;return}function Qn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=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;b=r;r=r+16|0;c=b;d=a+452|0;e=k[d>>2]|0;f=a+340|0;if((k[f>>2]|0)>0){g=a+4|0;h=a+148|0;i=0;do{j=k[a+344+(i<<2)>>2]|0;l=k[j+12>>2]|0;m=ha(l,k[h>>2]|0)|0;n=zb[k[(k[g>>2]|0)+32>>2]&3](a,k[e+72+(k[j+4>>2]<<2)>>2]|0,m,l,1)|0;k[c+(i<<2)>>2]=n;i=i+1|0}while((i|0)<(k[f>>2]|0))}i=e+24|0;g=k[i>>2]|0;h=e+28|0;n=k[h>>2]|0;a:do if((g|0)<(n|0)){l=e+20|0;m=a+360|0;j=a+468|0;o=e+32|0;p=n;q=k[l>>2]|0;s=k[m>>2]|0;t=g;b:while(1){if(q>>>0<s>>>0){u=q;while(1){v=k[f>>2]|0;if((v|0)>0){w=0;x=0;while(1){y=k[a+344+(x<<2)>>2]|0;z=k[y+56>>2]|0;A=ha(z,u)|0;B=k[y+60>>2]|0;if((B|0)>0?(y=k[c+(x<<2)>>2]|0,(z|0)>0):0){C=(z|0)>1?z:1;D=w;E=0;while(1){F=D;G=(k[y+(E+t<<2)>>2]|0)+(A<<7)|0;H=0;while(1){k[e+32+(F<<2)>>2]=G;H=H+1|0;if((H|0)>=(z|0))break;else{F=F+1|0;G=G+128|0}}G=D+C|0;E=E+1|0;if((E|0)>=(B|0)){I=G;break}else D=G}}else I=w;x=x+1|0;if((x|0)>=(v|0))break;else w=I}}if(!(yb[k[(k[j>>2]|0)+4>>2]&127](a,o)|0)){J=u;K=t;break b}u=u+1|0;w=k[m>>2]|0;if(u>>>0>=w>>>0){L=w;break}}M=L;N=k[h>>2]|0}else{M=s;N=p}k[l>>2]=0;t=t+1|0;if((t|0)>=(N|0))break a;else{p=N;q=0;s=M}}k[i>>2]=K;k[l>>2]=J;O=0;r=b;return O|0}while(0);J=a+148|0;K=(k[J>>2]|0)+1|0;k[J>>2]=K;J=k[a+332>>2]|0;if(K>>>0>=J>>>0){qb[k[(k[a+460>>2]|0)+12>>2]&127](a);O=4;r=b;return O|0}i=k[d>>2]|0;do if((k[f>>2]|0)<=1){d=k[a+344>>2]|0;if(K>>>0<(J+-1|0)>>>0){k[i+28>>2]=k[d+12>>2];break}else{k[i+28>>2]=k[d+76>>2];break}}else k[i+28>>2]=1;while(0);k[i+20>>2]=0;k[i+24>>2]=0;O=3;r=b;return O|0}function Rn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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=k[a+452>>2]|0;d=a+332|0;e=(k[d>>2]|0)+-1|0;f=a+144|0;g=a+152|0;h=a+460|0;i=a+148|0;j=a+156|0;while(1){l=k[f>>2]|0;m=k[g>>2]|0;if((l|0)>=(m|0)){if((l|0)!=(m|0))break;if((k[i>>2]|0)>>>0>(k[j>>2]|0)>>>0)break}if(!(ub[k[k[h>>2]>>2]&63](a)|0)){n=0;o=21;break}}if((o|0)==21)return n|0;o=a+36|0;h=k[o>>2]|0;if((h|0)>0){i=a+4|0;g=a+472|0;f=h;h=0;m=k[a+216>>2]|0;while(1){if(!(k[m+52>>2]|0))p=f;else{l=m+12|0;q=k[l>>2]|0;r=ha(q,k[j>>2]|0)|0;s=zb[k[(k[i>>2]|0)+32>>2]&3](a,k[c+72+(h<<2)>>2]|0,r,q,0)|0;if((k[j>>2]|0)>>>0<e>>>0)t=k[l>>2]|0;else{q=k[l>>2]|0;l=((k[m+32>>2]|0)>>>0)%(q>>>0)|0;t=(l|0)==0?q:l}l=k[(k[g>>2]|0)+4+(h<<2)>>2]|0;if((t|0)>0){q=m+28|0;r=m+40|0;u=m+36|0;v=k[q>>2]|0;w=0;x=k[b+(h<<2)>>2]|0;while(1){if(!v)y=0;else{z=0;A=k[s+(w<<2)>>2]|0;B=0;while(1){pb[l&63](a,m,A,x,B);z=z+1|0;C=k[q>>2]|0;if(z>>>0>=C>>>0){y=C;break}else{A=A+128|0;B=(k[u>>2]|0)+B|0}}}w=w+1|0;if((w|0)==(t|0))break;else{v=y;x=x+(k[r>>2]<<2)|0}}}p=k[o>>2]|0}h=h+1|0;if((h|0)>=(p|0))break;else{f=p;m=m+88|0}}}m=(k[j>>2]|0)+1|0;k[j>>2]=m;n=m>>>0<(k[d>>2]|0)>>>0?3:4;return n|0}function Sn(a){a=a|0;return 0}function Tn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;c=a+452|0;d=k[c>>2]|0;e=(k[a+360>>2]|0)+-1|0;f=a+332|0;g=k[f>>2]|0;h=g+-1|0;i=d+24|0;j=k[i>>2]|0;l=d+28|0;do if((j|0)<(k[l>>2]|0)){m=d+20|0;n=a+436|0;o=a+468|0;p=d+32|0;q=a+340|0;r=a+472|0;s=a+148|0;t=a+368|0;u=k[m>>2]|0;v=j;a:while(1){if(u>>>0<=e>>>0){w=u;do{if(k[n>>2]|0)qr(k[p>>2]|0,0,k[t>>2]<<7|0)|0;if(!(yb[k[(k[o>>2]|0)+4>>2]&127](a,p)|0)){x=w;y=v;break a}if((k[q>>2]|0)>0){z=w>>>0<e>>>0;A=0;B=0;while(1){C=k[a+344+(B<<2)>>2]|0;b:do if(k[C+52>>2]|0){D=k[C+4>>2]|0;E=k[(k[r>>2]|0)+4+(D<<2)>>2]|0;F=C+56|0;G=k[(z?F:C+72|0)>>2]|0;H=C+40|0;I=k[H>>2]|0;J=ha(k[C+68>>2]|0,w)|0;K=C+60|0;L=k[K>>2]|0;if((L|0)>0){M=C+76|0;N=C+36|0;if((G|0)<=0){O=k[F>>2]|0;P=A;Q=0;while(1){R=O+P|0;Q=Q+1|0;if((Q|0)>=(L|0)){S=R;break b}else P=R}}P=L;Q=I;O=A;R=(k[b+(D<<2)>>2]|0)+((ha(I,v)|0)<<2)|0;T=0;while(1){if((k[s>>2]|0)>>>0>=h>>>0?(T+v|0)>=(k[M>>2]|0):0){U=Q;V=P}else{W=J;X=0;Y=20}if((Y|0)==20){while(1){Y=0;pb[E&63](a,C,k[d+32+(X+O<<2)>>2]|0,R,W);X=X+1|0;if((X|0)==(G|0))break;else{W=(k[N>>2]|0)+W|0;Y=20}}U=k[H>>2]|0;V=k[K>>2]|0}Z=(k[F>>2]|0)+O|0;T=T+1|0;if((T|0)>=(V|0)){S=Z;break}else{P=V;Q=U;O=Z;R=R+(U<<2)|0}}}else S=A}else S=(k[C+64>>2]|0)+A|0;while(0);B=B+1|0;if((B|0)>=(k[q>>2]|0))break;else A=S}}w=w+1|0}while(w>>>0<=e>>>0)}k[m>>2]=0;v=v+1|0;if((v|0)>=(k[l>>2]|0)){Y=26;break}else u=0}if((Y|0)==26){_=s;$=k[f>>2]|0;break}k[i>>2]=y;k[m>>2]=x;aa=0;return aa|0}else{_=a+148|0;$=g}while(0);g=a+156|0;k[g>>2]=(k[g>>2]|0)+1;g=(k[_>>2]|0)+1|0;k[_>>2]=g;if(g>>>0>=$>>>0){qb[k[(k[a+460>>2]|0)+12>>2]&127](a);aa=4;return aa|0}_=k[c>>2]|0;do if((k[a+340>>2]|0)<=1){c=k[a+344>>2]|0;if(g>>>0<($+-1|0)>>>0){k[_+28>>2]=k[c+12>>2];break}else{k[_+28>>2]=k[c+76>>2];break}}else k[_+28>>2]=1;while(0);k[_+20>>2]=0;k[_+24>>2]=0;aa=3;return aa|0}function Un(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=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,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;c=r;r=r+128|0;d=c;e=k[a+452>>2]|0;f=a+332|0;g=(k[f>>2]|0)+-1|0;h=a+144|0;i=a+152|0;l=a+460|0;n=a+412|0;o=a+148|0;p=a+156|0;while(1){q=k[h>>2]|0;s=k[i>>2]|0;if((q|0)>(s|0))break;t=k[l>>2]|0;if(k[t+20>>2]|0)break;if((q|0)==(s|0)?(k[o>>2]|0)>>>0>((k[p>>2]|0)+((k[n>>2]|0)==0&1)|0)>>>0:0)break;if(!(ub[k[t>>2]&63](a)|0)){u=0;v=70;break}}if((v|0)==70){r=c;return u|0}v=a+36|0;n=k[v>>2]|0;if((n|0)>0){o=a+4|0;l=e+112|0;i=a+472|0;h=d+4|0;t=d+18|0;s=d+32|0;q=d+16|0;w=d+2|0;x=n;n=0;y=k[a+216>>2]|0;while(1){if(!(k[y+52>>2]|0))z=x;else{A=k[p>>2]|0;B=y+12|0;C=k[B>>2]|0;if(A>>>0<g>>>0){D=C<<1;E=C;F=0}else{G=((k[y+32>>2]|0)>>>0)%(C>>>0)|0;H=(G|0)==0?C:G;D=H;E=H;F=1}if(!A){I=zb[k[(k[o>>2]|0)+32>>2]&3](a,k[e+72+(n<<2)>>2]|0,0,D,0)|0;J=1}else{H=ha(C,A+-1|0)|0;A=zb[k[(k[o>>2]|0)+32>>2]&3](a,k[e+72+(n<<2)>>2]|0,H,C+D|0,0)|0;I=A+(k[B>>2]<<2)|0;J=0}B=k[l>>2]|0;A=n*6|0;C=k[y+80>>2]|0;H=m[C>>1]|0;G=m[C+2>>1]|0;K=m[C+16>>1]|0;L=m[C+32>>1]|0;M=m[C+18>>1]|0;N=m[C+4>>1]|0;C=k[(k[i>>2]|0)+4+(n<<2)>>2]|0;if((E|0)>0){O=(J|0)!=0;P=(F|0)!=0;Q=E+-1|0;R=y+28|0;S=B+((A|1)<<2)|0;T=B+(A+2<<2)|0;U=B+(A+3<<2)|0;V=B+(A+4<<2)|0;W=B+(A+5<<2)|0;A=y+36|0;B=H*9|0;X=N<<7;Y=N<<8;N=H*5|0;Z=M<<7;_=M<<8;M=L<<7;$=L<<8;L=H*36|0;H=K<<7;aa=K<<8;K=G<<7;ba=G<<8;G=y+40|0;ca=0;da=k[b+(n<<2)>>2]|0;while(1){ea=k[I+(ca<<2)>>2]|0;if(O&(ca|0)==0)fa=ea;else fa=k[I+(ca+-1<<2)>>2]|0;if(P&(ca|0)==(Q|0))ga=ea;else ga=k[I+(ca+1<<2)>>2]|0;ia=j[fa>>1]|0;ja=j[ea>>1]|0;ka=j[ga>>1]|0;la=(k[R>>2]|0)+-1|0;ma=ia;na=ia;ia=ja;oa=ja;ja=ka;pa=ka;ka=0;qa=ea;ea=ga;ra=0;sa=fa;while(1){sm(qa,d,1);if(ka>>>0<la>>>0){ta=j[sa+128>>1]|0;ua=j[qa+128>>1]|0;va=j[ea+128>>1]|0}else{ta=na;ua=oa;va=pa}wa=k[S>>2]|0;if((wa|0)!=0&(j[w>>1]|0)==0){xa=ha(L,ia-ua|0)|0;if((xa|0)>-1){ya=(xa+K|0)/(ba|0)|0;if((wa|0)>0){za=1<<wa;Aa=(ya|0)<(za|0)?ya:za+-1|0}else Aa=ya}else{ya=(K-xa|0)/(ba|0)|0;if((wa|0)>0){xa=1<<wa;Ba=(ya|0)<(xa|0)?ya:xa+-1|0}else Ba=ya;Aa=0-Ba|0}j[w>>1]=Aa}ya=k[T>>2]|0;if((ya|0)!=0&(j[q>>1]|0)==0){xa=ha(L,na-pa|0)|0;if((xa|0)>-1){wa=(xa+H|0)/(aa|0)|0;if((ya|0)>0){za=1<<ya;Ca=(wa|0)<(za|0)?wa:za+-1|0}else Ca=wa}else{wa=(H-xa|0)/(aa|0)|0;if((ya|0)>0){xa=1<<ya;Da=(wa|0)<(xa|0)?wa:xa+-1|0}else Da=wa;Ca=0-Da|0}j[q>>1]=Ca}wa=k[U>>2]|0;if((wa|0)!=0&(j[s>>1]|0)==0){xa=ha(B,na-(oa<<1)+pa|0)|0;do if((xa|0)>-1){ya=(xa+M|0)/($|0)|0;if((wa|0)<=0){Ea=ya;break}za=1<<wa;Ea=(ya|0)<(za|0)?ya:za+-1|0}else{za=(M-xa|0)/($|0)|0;if((wa|0)>0){ya=1<<wa;Fa=(za|0)<(ya|0)?za:ya+-1|0}else Fa=za;Ea=0-Fa|0}while(0);j[s>>1]=Ea}wa=k[V>>2]|0;if((wa|0)!=0&(j[t>>1]|0)==0){xa=ha(N,ma-ja-ta+va|0)|0;do if((xa|0)>-1){za=(xa+Z|0)/(_|0)|0;if((wa|0)<=0){Ga=za;break}ya=1<<wa;Ga=(za|0)<(ya|0)?za:ya+-1|0}else{ya=(Z-xa|0)/(_|0)|0;if((wa|0)>0){za=1<<wa;Ha=(ya|0)<(za|0)?ya:za+-1|0}else Ha=ya;Ga=0-Ha|0}while(0);j[t>>1]=Ga}wa=k[W>>2]|0;if((wa|0)!=0&(j[h>>1]|0)==0){xa=ha(B,ia-(oa<<1)+ua|0)|0;do if((xa|0)>-1){ya=(xa+X|0)/(Y|0)|0;if((wa|0)<=0){Ia=ya;break}za=1<<wa;Ia=(ya|0)<(za|0)?ya:za+-1|0}else{za=(X-xa|0)/(Y|0)|0;if((wa|0)>0){ya=1<<wa;Ja=(za|0)<(ya|0)?za:ya+-1|0}else Ja=za;Ia=0-Ja|0}while(0);j[h>>1]=Ia}pb[C&63](a,y,d,da,ra);ka=ka+1|0;if(ka>>>0>la>>>0)break;else{wa=pa;xa=oa;za=na;na=ta;oa=ua;pa=va;qa=qa+128|0;ea=ea+128|0;ra=(k[A>>2]|0)+ra|0;sa=sa+128|0;ja=wa;ia=xa;ma=za}}ca=ca+1|0;if((ca|0)==(E|0))break;else da=da+(k[G>>2]<<2)|0}}z=k[v>>2]|0}n=n+1|0;if((n|0)>=(z|0))break;else{x=z;y=y+88|0}}}y=(k[p>>2]|0)+1|0;k[p>>2]=y;u=y>>>0<(k[f>>2]|0)>>>0?3:4;r=c;return u|0}
function qp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+352|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;p=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;q=(o-p|0)*20862|0;s=(o-n|0)*3529|0;t=p+n|0;u=t-o|0;v=(u*11116|0)+m|0;w=s+q+v+(ha(o,-14924)|0)|0;x=q+(p*17333|0)+v|0;q=v+(ha(n,-12399)|0)+s|0;s=v+(ha(t,-9467)|0)|0;t=s+(ha(p,-6461)|0)|0;p=s+((o*15929|0)+(ha(n,-11395)|0))|0;n=m+(ha(u,-11585)|0)|0;u=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;m=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;o=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;s=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;v=m+u|0;y=(o+v+s|0)*3264|0;z=v*7274|0;v=(o+u|0)*5492|0;A=y+((s+u|0)*3e3|0)|0;B=z+v+A+(ha(u,-7562)|0)|0;u=y+(ha(o+m|0,-9527)|0)|0;C=u+(ha(o,-9766)|0)+v|0;v=ha(s+m|0,-14731)|0;D=z+(m*16984|0)+v+u|0;u=v+(s*17223|0)+A|0;A=y+((ha(m,-12019)|0)+(o*8203|0)+(ha(s,-13802)|0))|0;k[b>>2]=B+x>>11;k[b+320>>2]=x-B>>11;k[b+32>>2]=D+w>>11;k[b+288>>2]=w-D>>11;k[b+64>>2]=C+t>>11;k[b+256>>2]=t-C>>11;k[b+96>>2]=u+q>>11;k[b+224>>2]=q-u>>11;k[b+128>>2]=A+p>>11;k[b+192>>2]=p-A>>11;k[b+160>>2]=n>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+10|0;c=e+1|0;l=e+9|0;a=e+2|0;n=e+8|0;A=e+3|0;p=e+7|0;u=e+4|0;q=e+6|0;C=e+5|0;t=0;D=g;while(1){g=k[d+(t<<2)>>2]|0;w=(k[D>>2]<<13)+134348800|0;B=k[D+8>>2]|0;x=k[D+16>>2]|0;s=k[D+24>>2]|0;o=(x-s|0)*20862|0;m=(x-B|0)*3529|0;y=s+B|0;v=y-x|0;z=(v*11116|0)+w|0;E=m+o+z+(ha(x,-14924)|0)|0;F=o+(s*17333|0)+z|0;o=z+(ha(B,-12399)|0)+m|0;m=z+(ha(y,-9467)|0)|0;y=m+(ha(s,-6461)|0)|0;s=m+((x*15929|0)+(ha(B,-11395)|0))|0;B=w+(ha(v,-11585)|0)|0;v=k[D+4>>2]|0;w=k[D+12>>2]|0;x=k[D+20>>2]|0;m=k[D+28>>2]|0;z=w+v|0;G=(z+x+m|0)*3264|0;H=z*7274|0;z=(x+v|0)*5492|0;I=G+((m+v|0)*3e3|0)|0;J=H+z+I+(ha(v,-7562)|0)|0;v=G+(ha(x+w|0,-9527)|0)|0;K=v+(ha(x,-9766)|0)+z|0;z=ha(m+w|0,-14731)|0;L=H+(w*16984|0)+z+v|0;v=z+(m*17223|0)+I|0;I=G+((ha(w,-12019)|0)+(x*8203|0)+(ha(m,-13802)|0))|0;i[g+e>>0]=i[h+(((J+F|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((F-J|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((L+E|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((E-L|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((K+y|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((y-K|0)>>>18&1023)+-384)>>0]|0;i[g+A>>0]=i[h+(((v+o|0)>>>18&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((o-v|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((I+s|0)>>>18&1023)+-384)>>0]|0;i[g+q>>0]=i[h+(((s-I|0)>>>18&1023)+-384)>>0]|0;i[g+C>>0]=i[h+((B>>>18&1023)+-384)>>0]|0;t=t+1|0;if((t|0)==11)break;else D=D+32|0}r=f;return}function rp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+384|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha((k[c+128>>2]|0)*10033|0,j[l+64>>1]|0)|0;o=n+m|0;p=m-n|0;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;q=ha(k[c+192>>2]<<13,j[l+96>>1]|0)|0;s=(n<<13)-q|0;t=s+m|0;u=m-s|0;s=q+(n*11190|0)|0;m=s+o|0;v=o-s|0;s=(n*2998|0)-q|0;q=s+p|0;n=p-s|0;s=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;p=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;o=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;w=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;x=p*10703|0;y=ha(p,-4433)|0;z=o+s|0;A=(w+z|0)*7053|0;B=A+(z*2139|0)|0;z=x+(s*2295|0)+B|0;C=ha(w+o|0,-8565)|0;D=y+C+(ha(o,-12112)|0)+B|0;B=(w*12998|0)-x+A+C|0;C=A+((ha(s,-5540)|0)+y+(ha(w,-16244)|0))|0;y=s-w|0;w=p-o|0;o=(y+w|0)*4433|0;p=o+(y*6270|0)|0;y=o+(ha(w,-15137)|0)|0;k[b>>2]=z+m>>11;k[b+352>>2]=m-z>>11;k[b+32>>2]=p+t>>11;k[b+320>>2]=t-p>>11;k[b+64>>2]=D+q>>11;k[b+288>>2]=q-D>>11;k[b+96>>2]=B+n>>11;k[b+256>>2]=n-B>>11;k[b+128>>2]=y+u>>11;k[b+224>>2]=u-y>>11;k[b+160>>2]=C+v>>11;k[b+192>>2]=v-C>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+11|0;c=e+1|0;l=e+10|0;a=e+2|0;C=e+9|0;v=e+3|0;y=e+8|0;u=e+4|0;B=e+7|0;n=e+5|0;D=e+6|0;q=0;p=g;while(1){g=k[d+(q<<2)>>2]|0;t=(k[p>>2]<<13)+134348800|0;z=(k[p+16>>2]|0)*10033|0;m=t+z|0;w=t-z|0;z=k[p+8>>2]|0;o=k[p+24>>2]<<13;s=(z<<13)-o|0;A=s+t|0;x=t-s|0;s=o+(z*11190|0)|0;t=s+m|0;E=m-s|0;s=(z*2998|0)-o|0;o=s+w|0;z=w-s|0;s=k[p+4>>2]|0;w=k[p+12>>2]|0;m=k[p+20>>2]|0;F=k[p+28>>2]|0;G=w*10703|0;H=ha(w,-4433)|0;I=m+s|0;J=(I+F|0)*7053|0;K=J+(I*2139|0)|0;I=G+(s*2295|0)+K|0;L=ha(F+m|0,-8565)|0;M=H+L+(ha(m,-12112)|0)+K|0;K=(F*12998|0)-G+J+L|0;L=J+((ha(s,-5540)|0)+H+(ha(F,-16244)|0))|0;H=s-F|0;F=w-m|0;m=(H+F|0)*4433|0;w=m+(H*6270|0)|0;H=m+(ha(F,-15137)|0)|0;i[g+e>>0]=i[h+(((I+t|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((t-I|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((w+A|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((A-w|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((M+o|0)>>>18&1023)+-384)>>0]|0;i[g+C>>0]=i[h+(((o-M|0)>>>18&1023)+-384)>>0]|0;i[g+v>>0]=i[h+(((K+z|0)>>>18&1023)+-384)>>0]|0;i[g+y>>0]=i[h+(((z-K|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((H+x|0)>>>18&1023)+-384)>>0]|0;i[g+B>>0]=i[h+(((x-H|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((L+E|0)>>>18&1023)+-384)>>0]|0;i[g+D>>0]=i[h+(((E-L|0)>>>18&1023)+-384)>>0]|0;q=q+1|0;if((q|0)==12)break;else p=p+32|0}r=f;return}function sp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+416|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;p=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;q=p+o|0;s=o-p|0;p=q*9465|0;o=(s*793|0)+m|0;t=p+(n*11249|0)+o|0;u=(n*4108|0)-p+o|0;o=q*2592|0;p=(s*3989|0)+m|0;v=(n*8672|0)-o+p|0;w=o+(ha(n,-10258)|0)+p|0;p=q*3570|0;q=m+(ha(s,-7678)|0)|0;o=(ha(n,-1396)|0)-p+q|0;x=p+(ha(n,-6581)|0)+q|0;q=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;p=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;y=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;z=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;A=(p+q|0)*10832|0;B=(y+q|0)*9534|0;C=z+q|0;D=C*7682|0;E=A+B+D+(ha(q,-16549)|0)|0;F=ha(y+p|0,-2773)|0;G=ha(z+p|0,-9534)|0;H=A+(p*6859|0)+F+G|0;A=ha(z+y|0,-5384)|0;I=F+(ha(y,-12879)|0)+B+A|0;B=G+(z*18068|0)+D+A|0;A=C*2773|0;C=(y-p|0)*7682|0;D=(q*2611|0)+A+(ha(p,-3818)|0)+C|0;p=A+((y*3150|0)+C+(ha(z,-14273)|0))|0;k[b>>2]=E+t>>11;k[b+384>>2]=t-E>>11;k[b+32>>2]=H+v>>11;k[b+352>>2]=v-H>>11;k[b+64>>2]=I+u>>11;k[b+320>>2]=u-I>>11;k[b+96>>2]=B+o>>11;k[b+288>>2]=o-B>>11;k[b+128>>2]=D+x>>11;k[b+256>>2]=x-D>>11;k[b+160>>2]=p+w>>11;k[b+224>>2]=w-p>>11;k[b+192>>2]=((s-n|0)*11585|0)+m>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+12|0;c=e+1|0;l=e+11|0;a=e+2|0;m=e+10|0;n=e+3|0;s=e+9|0;p=e+4|0;w=e+8|0;D=e+5|0;x=e+7|0;B=e+6|0;o=0;I=g;while(1){g=k[d+(o<<2)>>2]|0;u=(k[I>>2]<<13)+134348800|0;H=k[I+8>>2]|0;v=k[I+16>>2]|0;E=k[I+24>>2]|0;t=E+v|0;z=v-E|0;E=t*9465|0;v=(z*793|0)+u|0;C=E+(H*11249|0)+v|0;y=(H*4108|0)-E+v|0;v=t*2592|0;E=(z*3989|0)+u|0;A=(H*8672|0)-v+E|0;q=v+(ha(H,-10258)|0)+E|0;E=t*3570|0;t=u+(ha(z,-7678)|0)|0;v=(ha(H,-1396)|0)-E+t|0;G=E+(ha(H,-6581)|0)+t|0;t=k[I+4>>2]|0;E=k[I+12>>2]|0;F=k[I+20>>2]|0;J=k[I+28>>2]|0;K=(E+t|0)*10832|0;L=(F+t|0)*9534|0;M=J+t|0;N=M*7682|0;O=K+L+N+(ha(t,-16549)|0)|0;P=ha(F+E|0,-2773)|0;Q=ha(J+E|0,-9534)|0;R=K+(E*6859|0)+P+Q|0;K=ha(J+F|0,-5384)|0;S=P+(ha(F,-12879)|0)+L+K|0;L=Q+(J*18068|0)+N+K|0;K=M*2773|0;M=(F-E|0)*7682|0;N=(t*2611|0)+K+(ha(E,-3818)|0)+M|0;E=(F*3150|0)+M+(ha(J,-14273)|0)+K|0;i[g+e>>0]=i[h+(((O+C|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((C-O|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((R+A|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((A-R|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((S+y|0)>>>18&1023)+-384)>>0]|0;i[g+m>>0]=i[h+(((y-S|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((L+v|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((v-L|0)>>>18&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((N+G|0)>>>18&1023)+-384)>>0]|0;i[g+w>>0]=i[h+(((G-N|0)>>>18&1023)+-384)>>0]|0;i[g+D>>0]=i[h+(((E+q|0)>>>18&1023)+-384)>>0]|0;i[g+x>>0]=i[h+(((q-E|0)>>>18&1023)+-384)>>0]|0;i[g+B>>0]=i[h+(((((z-H|0)*11585|0)+u|0)>>>18&1023)+-384)>>0]|0;o=o+1|0;if((o|0)==13)break;else I=I+32|0}r=f;return}function tp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+448|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;o=(n*10438|0)+m|0;p=(n*2578|0)+m|0;q=m+(ha(n,-7223)|0)|0;s=m+(ha(n,-11586)|0)>>11;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;m=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;t=(m+n|0)*9058|0;u=t+(n*2237|0)|0;v=t+(ha(m,-14084)|0)|0;t=(n*5027|0)+(ha(m,-11295)|0)|0;m=u+o|0;n=o-u|0;u=v+p|0;o=p-v|0;v=t+q|0;p=q-t|0;t=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;q=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;w=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;x=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;y=x<<13;z=w+t|0;A=(q+t|0)*10935|0;B=z*9810|0;C=A+B+y+(ha(t,-9232)|0)|0;D=z*6164|0;z=t-q|0;E=(z*3826|0)-y|0;F=E+(D+(ha(t,-8693)|0))|0;t=(ha(w+q|0,-1297)|0)-y|0;G=t+(ha(q,-3474)|0)+A|0;A=t+(ha(w,-19447)|0)+B|0;B=(w-q|0)*11512|0;t=B+y+(ha(w,-13850)|0)+D|0;D=B+(q*5529|0)+E|0;E=z-w+x<<2;k[b>>2]=C+m>>11;k[b+416>>2]=m-C>>11;k[b+32>>2]=G+u>>11;k[b+384>>2]=u-G>>11;k[b+64>>2]=A+v>>11;k[b+352>>2]=v-A>>11;k[b+96>>2]=E+s;k[b+320>>2]=s-E;k[b+128>>2]=t+p>>11;k[b+288>>2]=p-t>>11;k[b+160>>2]=D+o>>11;k[b+256>>2]=o-D>>11;k[b+192>>2]=F+n>>11;k[b+224>>2]=n-F>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+13|0;c=e+1|0;l=e+12|0;a=e+2|0;F=e+11|0;n=e+3|0;D=e+10|0;o=e+4|0;t=e+9|0;p=e+5|0;E=e+8|0;s=e+6|0;A=e+7|0;v=0;G=g;while(1){g=k[d+(v<<2)>>2]|0;u=(k[G>>2]<<13)+134348800|0;C=k[G+16>>2]|0;m=u+(C*10438|0)|0;x=u+(C*2578|0)|0;w=u+(ha(C,-7223)|0)|0;z=u+(ha(C,-11586)|0)|0;C=k[G+8>>2]|0;u=k[G+24>>2]|0;q=(u+C|0)*9058|0;B=q+(C*2237|0)|0;y=q+(ha(u,-14084)|0)|0;q=(C*5027|0)+(ha(u,-11295)|0)|0;u=B+m|0;C=m-B|0;B=y+x|0;m=x-y|0;y=q+w|0;x=w-q|0;q=k[G+4>>2]|0;w=k[G+12>>2]|0;H=k[G+20>>2]|0;I=k[G+28>>2]<<13;J=H+q|0;K=(w+q|0)*10935|0;L=J*9810|0;M=I+(K+L)+(ha(q,-9232)|0)|0;N=J*6164|0;J=q-w|0;O=(J*3826|0)-I|0;P=N+(ha(q,-8693)|0)+O|0;q=(ha(H+w|0,-1297)|0)-I|0;Q=q+(ha(w,-3474)|0)+K|0;K=q+(ha(H,-19447)|0)+L|0;L=(H-w|0)*11512|0;q=L+I+(ha(H,-13850)|0)+N|0;N=L+(w*5529|0)+O|0;O=(J-H<<13)+I|0;i[g+e>>0]=i[h+(((M+u|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((u-M|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((Q+B|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((B-Q|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((K+y|0)>>>18&1023)+-384)>>0]|0;i[g+F>>0]=i[h+(((y-K|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((O+z|0)>>>18&1023)+-384)>>0]|0;i[g+D>>0]=i[h+(((z-O|0)>>>18&1023)+-384)>>0]|0;i[g+o>>0]=i[h+(((q+x|0)>>>18&1023)+-384)>>0]|0;i[g+t>>0]=i[h+(((x-q|0)>>>18&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((N+m|0)>>>18&1023)+-384)>>0]|0;i[g+E>>0]=i[h+(((m-N|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((P+C|0)>>>18&1023)+-384)>>0]|0;i[g+A>>0]=i[h+(((C-P|0)>>>18&1023)+-384)>>0]|0;v=v+1|0;if((v|0)==14)break;else G=G+32|0}r=f;return}function up(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+480|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;p=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;q=m+(ha(p,-3580)|0)|0;s=(p*9373|0)+m|0;t=m+(ha(p,-11586)|0)|0;p=n-o|0;m=o+n|0;o=m*10958|0;u=p*374|0;v=n*11795|0;n=u+o+s|0;w=v-o+u+q|0;u=m*4482|0;o=ha(p,-3271)|0;x=s-u+o|0;y=u-v+o+q|0;o=m*6476|0;m=p*2896|0;v=m+o+q|0;q=s-o+m|0;m=t+(p*5792|0)|0;o=(ha(p,-11584)|0)+t|0;t=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;p=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;s=ha((k[c+160>>2]|0)*10033|0,j[l+80>>1]|0)|0;u=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;z=p-u|0;A=(z+t|0)*6810|0;B=A+(t*4209|0)|0;C=A+(ha(z,-17828)|0)|0;z=ha(p,-6810)|0;A=ha(p,-11018)|0;p=t-u|0;D=(p*11522|0)+s|0;E=(u*20131|0)-A+D|0;F=D+(ha(t,-9113)|0)+z|0;D=(p*10033|0)-s|0;p=(u+t|0)*4712|0;G=z+(t*3897|0)-s+p|0;t=s+A+(ha(u,-7121)|0)+p|0;k[b>>2]=E+n>>11;k[b+448>>2]=n-E>>11;k[b+32>>2]=B+v>>11;k[b+416>>2]=v-B>>11;k[b+64>>2]=D+m>>11;k[b+384>>2]=m-D>>11;k[b+96>>2]=G+w>>11;k[b+352>>2]=w-G>>11;k[b+128>>2]=C+q>>11;k[b+320>>2]=q-C>>11;k[b+160>>2]=t+x>>11;k[b+288>>2]=x-t>>11;k[b+192>>2]=F+y>>11;k[b+256>>2]=y-F>>11;k[b+224>>2]=o>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+14|0;c=e+1|0;l=e+13|0;a=e+2|0;o=e+12|0;F=e+3|0;y=e+11|0;t=e+4|0;x=e+10|0;C=e+5|0;q=e+9|0;G=e+6|0;w=e+8|0;D=e+7|0;m=0;B=g;while(1){g=k[d+(m<<2)>>2]|0;v=(k[B>>2]<<13)+134348800|0;E=k[B+8>>2]|0;n=k[B+16>>2]|0;p=k[B+24>>2]|0;u=v+(ha(p,-3580)|0)|0;A=(p*9373|0)+v|0;s=v+(ha(p,-11586)|0)|0;p=E-n|0;v=n+E|0;n=v*10958|0;z=p*374|0;H=E*11795|0;E=z+n+A|0;I=H-n+z+u|0;z=v*4482|0;n=ha(p,-3271)|0;J=A-z+n|0;K=z-H+n+u|0;n=v*6476|0;v=p*2896|0;H=v+n+u|0;u=A-n+v|0;v=s+(p*5792|0)|0;n=(ha(p,-11584)|0)+s|0;s=k[B+4>>2]|0;p=k[B+12>>2]|0;A=(k[B+20>>2]|0)*10033|0;z=k[B+28>>2]|0;L=p-z|0;M=(L+s|0)*6810|0;N=M+(s*4209|0)|0;O=M+(ha(L,-17828)|0)|0;L=ha(p,-6810)|0;M=ha(p,-11018)|0;p=s-z|0;P=(p*11522|0)+A|0;Q=(z*20131|0)-M+P|0;R=P+(ha(s,-9113)|0)+L|0;P=(p*10033|0)-A|0;p=(z+s|0)*4712|0;S=L+(s*3897|0)-A+p|0;s=A+M+(ha(z,-7121)|0)+p|0;i[g+e>>0]=i[h+(((Q+E|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((E-Q|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((N+H|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((H-N|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((P+v|0)>>>18&1023)+-384)>>0]|0;i[g+o>>0]=i[h+(((v-P|0)>>>18&1023)+-384)>>0]|0;i[g+F>>0]=i[h+(((S+I|0)>>>18&1023)+-384)>>0]|0;i[g+y>>0]=i[h+(((I-S|0)>>>18&1023)+-384)>>0]|0;i[g+t>>0]=i[h+(((O+u|0)>>>18&1023)+-384)>>0]|0;i[g+x>>0]=i[h+(((u-O|0)>>>18&1023)+-384)>>0]|0;i[g+C>>0]=i[h+(((s+J|0)>>>18&1023)+-384)>>0]|0;i[g+q>>0]=i[h+(((J-s|0)>>>18&1023)+-384)>>0]|0;i[g+G>>0]=i[h+(((R+K|0)>>>18&1023)+-384)>>0]|0;i[g+w>>0]=i[h+(((K-R|0)>>>18&1023)+-384)>>0]|0;i[g+D>>0]=i[h+((n>>>18&1023)+-384)>>0]|0;m=m+1|0;if((m|0)==15)break;else B=B+32|0}r=f;return}function vp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+512|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;o=n*10703|0;p=n*4433|0;n=o+m|0;q=m-o|0;o=p+m|0;s=m-p|0;p=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;m=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;t=p-m|0;u=t*2260|0;v=t*11363|0;t=v+(m*20995|0)|0;w=u+(p*7373|0)|0;x=v+(ha(p,-4926)|0)|0;p=u+(ha(m,-4176)|0)|0;m=t+n|0;u=n-t|0;t=w+o|0;n=o-w|0;w=x+s|0;o=s-x|0;x=p+q|0;s=q-p|0;p=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;q=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;v=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;y=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;z=v+p|0;A=(q+p|0)*11086|0;B=z*10217|0;C=(y+p|0)*8956|0;D=(p-y|0)*7350|0;E=z*5461|0;z=(p-q|0)*3363|0;F=A+B+C+(ha(p,-18730)|0)|0;G=z+(E+D)+(ha(p,-15038)|0)|0;p=(v+q|0)*1136|0;H=(v-q|0)*11529|0;I=y+q|0;J=ha(I,-5461)|0;K=A+(q*589|0)+p+J|0;A=ha(I,-10217)|0;I=z+(q*16154|0)+H+A|0;q=ha(y+v|0,-11086)|0;z=p+(ha(v,-9222)|0)+B+q|0;B=J+(y*8728|0)+C+q|0;q=(y-v|0)*3363|0;C=A+(y*25733|0)+D+q|0;D=H+(ha(v,-6278)|0)+E+q|0;k[b>>2]=F+m>>11;k[b+480>>2]=m-F>>11;k[b+32>>2]=K+t>>11;k[b+448>>2]=t-K>>11;k[b+64>>2]=z+w>>11;k[b+416>>2]=w-z>>11;k[b+96>>2]=B+x>>11;k[b+384>>2]=x-B>>11;k[b+128>>2]=C+s>>11;k[b+352>>2]=s-C>>11;k[b+160>>2]=D+o>>11;k[b+320>>2]=o-D>>11;k[b+192>>2]=I+n>>11;k[b+288>>2]=n-I>>11;k[b+224>>2]=G+u>>11;k[b+256>>2]=u-G>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+15|0;c=e+1|0;l=e+14|0;a=e+2|0;G=e+13|0;u=e+3|0;I=e+12|0;n=e+4|0;D=e+11|0;o=e+5|0;C=e+10|0;s=e+6|0;B=e+9|0;x=e+7|0;z=e+8|0;w=0;K=g;while(1){g=k[d+(w<<2)>>2]|0;t=(k[K>>2]<<13)+134348800|0;F=k[K+16>>2]|0;m=F*10703|0;q=F*4433|0;F=t+m|0;E=t-m|0;m=t+q|0;v=t-q|0;q=k[K+8>>2]|0;t=k[K+24>>2]|0;H=q-t|0;y=H*2260|0;A=H*11363|0;H=A+(t*20995|0)|0;J=y+(q*7373|0)|0;p=A+(ha(q,-4926)|0)|0;q=y+(ha(t,-4176)|0)|0;t=H+F|0;y=F-H|0;H=J+m|0;F=m-J|0;J=p+v|0;m=v-p|0;p=q+E|0;v=E-q|0;q=k[K+4>>2]|0;E=k[K+12>>2]|0;A=k[K+20>>2]|0;L=k[K+28>>2]|0;M=A+q|0;N=(E+q|0)*11086|0;O=M*10217|0;P=(L+q|0)*8956|0;Q=(q-L|0)*7350|0;R=M*5461|0;M=(q-E|0)*3363|0;S=N+O+P+(ha(q,-18730)|0)|0;T=M+(R+Q)+(ha(q,-15038)|0)|0;q=(A+E|0)*1136|0;U=(A-E|0)*11529|0;V=L+E|0;W=ha(V,-5461)|0;X=N+(E*589|0)+q+W|0;N=ha(V,-10217)|0;V=M+(E*16154|0)+U+N|0;E=ha(L+A|0,-11086)|0;M=q+(ha(A,-9222)|0)+O+E|0;O=W+(L*8728|0)+P+E|0;E=(L-A|0)*3363|0;P=N+(L*25733|0)+Q+E|0;Q=U+(ha(A,-6278)|0)+R+E|0;i[g+e>>0]=i[h+(((S+t|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((t-S|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((X+H|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((H-X|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((M+J|0)>>>18&1023)+-384)>>0]|0;i[g+G>>0]=i[h+(((J-M|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((O+p|0)>>>18&1023)+-384)>>0]|0;i[g+I>>0]=i[h+(((p-O|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((P+v|0)>>>18&1023)+-384)>>0]|0;i[g+D>>0]=i[h+(((v-P|0)>>>18&1023)+-384)>>0]|0;i[g+o>>0]=i[h+(((Q+m|0)>>>18&1023)+-384)>>0]|0;i[g+C>>0]=i[h+(((m-Q|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((V+F|0)>>>18&1023)+-384)>>0]|0;i[g+B>>0]=i[h+(((F-V|0)>>>18&1023)+-384)>>0]|0;i[g+x>>0]=i[h+(((T+y|0)>>>18&1023)+-384)>>0]|0;i[g+z>>0]=i[h+(((y-T|0)>>>18&1023)+-384)>>0]|0;w=w+1|0;if((w|0)==16)break;else K=K+32|0}r=f;return}function wp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+256|0;g=f;h=k[a+336>>2]|0;a=8;l=c;c=k[b+84>>2]|0;b=g;while(1){m=j[l+16>>1]|0;n=j[l+32>>1]|0;if(!((m|n)<<16>>16))if(((((j[l+48>>1]|0)==0?(j[l+64>>1]|0)==0:0)?(j[l+80>>1]|0)==0:0)?(j[l+96>>1]|0)==0:0)?(j[l+112>>1]|0)==0:0){o=ha(k[c>>2]<<2,j[l>>1]|0)|0;k[b>>2]=o;k[b+32>>2]=o;k[b+64>>2]=o;k[b+96>>2]=o;k[b+128>>2]=o;k[b+160>>2]=o;k[b+192>>2]=o;k[b+224>>2]=o}else{p=0;q=10}else{p=n;q=10}if((q|0)==10){q=0;n=ha(p<<16>>16,k[c+64>>2]|0)|0;o=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;s=(o+n|0)*4433|0;t=s+(n*6270|0)|0;n=s+(ha(o,-15137)|0)|0;o=ha(k[c+128>>2]<<13,j[l+64>>1]|0)|0;s=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;u=o+s|0;v=s-o|0;o=u+t|0;s=u-t|0;t=v+n|0;u=v-n|0;n=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;v=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;w=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;x=ha(m<<16>>16,k[c+32>>2]|0)|0;m=w+n|0;y=x+v|0;z=(y+m|0)*9633|0;A=z+(ha(m,-16069)|0)|0;m=z+(ha(y,-3196)|0)|0;y=ha(x+n|0,-7373)|0;z=y+(n*2446|0)+A|0;n=y+(x*12299|0)+m|0;x=ha(w+v|0,-20995)|0;y=x+(v*16819|0)+m|0;m=x+(w*25172|0)+A|0;k[b>>2]=n+o>>11;k[b+224>>2]=o-n>>11;k[b+32>>2]=m+t>>11;k[b+192>>2]=t-m>>11;k[b+64>>2]=y+u>>11;k[b+160>>2]=u-y>>11;k[b+96>>2]=z+s>>11;k[b+128>>2]=s-z>>11}if((a|0)>1){a=a+-1|0;l=l+2|0;c=c+4|0;b=b+4|0}else break}b=e+15|0;c=e+1|0;l=e+14|0;a=e+2|0;p=e+13|0;q=e+3|0;z=e+12|0;s=e+4|0;y=e+11|0;u=e+5|0;m=e+10|0;t=e+6|0;n=e+9|0;o=e+7|0;A=e+8|0;w=0;x=g;while(1){g=k[d+(w<<2)>>2]|0;v=(k[x>>2]<<13)+134348800|0;B=k[x+16>>2]|0;C=B*10703|0;D=B*4433|0;B=v+C|0;E=v-C|0;C=v+D|0;F=v-D|0;D=k[x+8>>2]|0;v=k[x+24>>2]|0;G=D-v|0;H=G*2260|0;I=G*11363|0;G=I+(v*20995|0)|0;J=H+(D*7373|0)|0;K=I+(ha(D,-4926)|0)|0;D=H+(ha(v,-4176)|0)|0;v=G+B|0;H=B-G|0;G=J+C|0;B=C-J|0;J=K+F|0;C=F-K|0;K=D+E|0;F=E-D|0;D=k[x+4>>2]|0;E=k[x+12>>2]|0;I=k[x+20>>2]|0;L=k[x+28>>2]|0;M=I+D|0;N=(E+D|0)*11086|0;O=M*10217|0;P=(L+D|0)*8956|0;Q=(D-L|0)*7350|0;R=M*5461|0;M=(D-E|0)*3363|0;S=N+O+P+(ha(D,-18730)|0)|0;T=M+(R+Q)+(ha(D,-15038)|0)|0;D=(I+E|0)*1136|0;U=(I-E|0)*11529|0;V=L+E|0;W=ha(V,-5461)|0;X=N+(E*589|0)+D+W|0;N=ha(V,-10217)|0;V=M+(E*16154|0)+U+N|0;E=ha(L+I|0,-11086)|0;M=D+(ha(I,-9222)|0)+O+E|0;O=W+(L*8728|0)+P+E|0;E=(L-I|0)*3363|0;P=N+(L*25733|0)+Q+E|0;Q=U+(ha(I,-6278)|0)+R+E|0;i[g+e>>0]=i[h+(((S+v|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((v-S|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((X+G|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((G-X|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((M+J|0)>>>18&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((J-M|0)>>>18&1023)+-384)>>0]|0;i[g+q>>0]=i[h+(((O+K|0)>>>18&1023)+-384)>>0]|0;i[g+z>>0]=i[h+(((K-O|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((P+F|0)>>>18&1023)+-384)>>0]|0;i[g+y>>0]=i[h+(((F-P|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((Q+C|0)>>>18&1023)+-384)>>0]|0;i[g+m>>0]=i[h+(((C-Q|0)>>>18&1023)+-384)>>0]|0;i[g+t>>0]=i[h+(((V+B|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((B-V|0)>>>18&1023)+-384)>>0]|0;i[g+o>>0]=i[h+(((T+H|0)>>>18&1023)+-384)>>0]|0;i[g+A>>0]=i[h+(((H-T|0)>>>18&1023)+-384)>>0]|0;w=w+1|0;if((w|0)==8)break;else x=x+32|0}r=f;return}function xp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+224|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;p=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;q=(o-p|0)*7223|0;s=(n-o|0)*2578|0;t=m+(s+q)+(ha(o,-15083)|0)|0;u=p+n|0;v=(u*10438|0)+m|0;w=v+(ha(p,-637)|0)+q|0;q=v+(ha(n,-20239)|0)+s|0;s=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;n=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;v=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;p=(n+s|0)*7663|0;x=(s-n|0)*1395|0;y=ha(v+n|0,-11295)|0;n=p+x+y|0;z=(v+s|0)*5027|0;s=z+(p-x)|0;x=z+(v*15326|0)+y|0;k[b>>2]=s+w>>11;k[b+192>>2]=w-s>>11;k[b+32>>2]=n+t>>11;k[b+160>>2]=t-n>>11;k[b+64>>2]=x+q>>11;k[b+128>>2]=q-x>>11;k[b+96>>2]=((o-u|0)*11585|0)+m>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+13|0;c=e+1|0;l=e+12|0;a=e+2|0;m=e+11|0;u=e+3|0;o=e+10|0;x=e+4|0;q=e+9|0;n=e+5|0;t=e+8|0;s=e+6|0;w=e+7|0;y=0;v=g;while(1){g=k[d+(y<<2)>>2]|0;z=(k[v>>2]<<13)+134348800|0;p=k[v+16>>2]|0;A=z+(p*10438|0)|0;B=z+(p*2578|0)|0;C=z+(ha(p,-7223)|0)|0;D=z+(ha(p,-11586)|0)|0;p=k[v+8>>2]|0;z=k[v+24>>2]|0;E=(z+p|0)*9058|0;F=E+(p*2237|0)|0;G=E+(ha(z,-14084)|0)|0;E=(p*5027|0)+(ha(z,-11295)|0)|0;z=F+A|0;p=A-F|0;F=G+B|0;A=B-G|0;G=E+C|0;B=C-E|0;E=k[v+4>>2]|0;C=k[v+12>>2]|0;H=k[v+20>>2]|0;I=k[v+28>>2]<<13;J=H+E|0;K=(C+E|0)*10935|0;L=J*9810|0;M=I+(K+L)+(ha(E,-9232)|0)|0;N=J*6164|0;J=E-C|0;O=(J*3826|0)-I|0;P=N+(ha(E,-8693)|0)+O|0;E=(ha(H+C|0,-1297)|0)-I|0;Q=E+(ha(C,-3474)|0)+K|0;K=E+(ha(H,-19447)|0)+L|0;L=(H-C|0)*11512|0;E=L+I+(ha(H,-13850)|0)+N|0;N=L+(C*5529|0)+O|0;O=(J-H<<13)+I|0;i[g+e>>0]=i[h+(((M+z|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((z-M|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((Q+F|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((F-Q|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((K+G|0)>>>18&1023)+-384)>>0]|0;i[g+m>>0]=i[h+(((G-K|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((O+D|0)>>>18&1023)+-384)>>0]|0;i[g+o>>0]=i[h+(((D-O|0)>>>18&1023)+-384)>>0]|0;i[g+x>>0]=i[h+(((E+B|0)>>>18&1023)+-384)>>0]|0;i[g+q>>0]=i[h+(((B-E|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((N+A|0)>>>18&1023)+-384)>>0]|0;i[g+t>>0]=i[h+(((A-N|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((P+p|0)>>>18&1023)+-384)>>0]|0;i[g+w>>0]=i[h+(((p-P|0)>>>18&1023)+-384)>>0]|0;y=y+1|0;if((y|0)==7)break;else v=v+32|0}r=f;return}function yp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+192|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha((k[c+128>>2]|0)*5793|0,j[l+64>>1]|0)|0;o=n+m|0;p=(ha(n,-2)|0)+m>>11;m=ha((k[c+64>>2]|0)*10033|0,j[l+32>>1]|0)|0;n=m+o|0;q=o-m|0;m=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;o=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;s=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;t=(s+m|0)*2998|0;u=t+(o+m<<13)|0;v=t+(s-o<<13)|0;t=m-o-s<<2;k[b>>2]=u+n>>11;k[b+160>>2]=n-u>>11;k[b+32>>2]=t+p;k[b+128>>2]=p-t;k[b+64>>2]=v+q>>11;k[b+96>>2]=q-v>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+11|0;c=e+1|0;l=e+10|0;a=e+2|0;v=e+9|0;q=e+3|0;t=e+8|0;p=e+4|0;u=e+7|0;n=e+5|0;s=e+6|0;o=0;m=g;while(1){g=k[d+(o<<2)>>2]|0;w=(k[m>>2]<<13)+134348800|0;x=(k[m+16>>2]|0)*10033|0;y=w+x|0;z=w-x|0;x=k[m+8>>2]|0;A=k[m+24>>2]<<13;B=(x<<13)-A|0;C=B+w|0;D=w-B|0;B=A+(x*11190|0)|0;w=B+y|0;E=y-B|0;B=(x*2998|0)-A|0;A=B+z|0;x=z-B|0;B=k[m+4>>2]|0;z=k[m+12>>2]|0;y=k[m+20>>2]|0;F=k[m+28>>2]|0;G=z*10703|0;H=ha(z,-4433)|0;I=y+B|0;J=(I+F|0)*7053|0;K=J+(I*2139|0)|0;I=G+(B*2295|0)+K|0;L=ha(F+y|0,-8565)|0;M=H+L+(ha(y,-12112)|0)+K|0;K=(F*12998|0)-G+J+L|0;L=J+((ha(B,-5540)|0)+H+(ha(F,-16244)|0))|0;H=B-F|0;F=z-y|0;y=(H+F|0)*4433|0;z=y+(H*6270|0)|0;H=y+(ha(F,-15137)|0)|0;i[g+e>>0]=i[h+(((I+w|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((w-I|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((z+C|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((C-z|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((M+A|0)>>>18&1023)+-384)>>0]|0;i[g+v>>0]=i[h+(((A-M|0)>>>18&1023)+-384)>>0]|0;i[g+q>>0]=i[h+(((K+x|0)>>>18&1023)+-384)>>0]|0;i[g+t>>0]=i[h+(((x-K|0)>>>18&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((H+D|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((D-H|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((L+E|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((E-L|0)>>>18&1023)+-384)>>0]|0;o=o+1|0;if((o|0)==6)break;else m=m+32|0}r=f;return}function zp(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f=r;r=r+160|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;p=(o+n|0)*6476|0;q=n-o|0;o=(q*2896|0)+m|0;n=o+p|0;s=o-p|0;p=m+(ha(q,-11584)|0)|0;q=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;m=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;o=(m+q|0)*6810|0;t=o+(q*4209|0)|0;q=o+(ha(m,-17828)|0)|0;k[b>>2]=t+n>>11;k[b+128>>2]=n-t>>11;k[b+32>>2]=q+s>>11;k[b+96>>2]=s-q>>11;k[b+64>>2]=p>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+9|0;c=e+1|0;l=e+8|0;a=e+2|0;p=e+7|0;q=e+3|0;s=e+6|0;t=e+4|0;n=e+5|0;m=0;o=g;while(1){g=k[d+(m<<2)>>2]|0;u=(k[o>>2]<<13)+134348800|0;v=k[o+16>>2]|0;w=u+(v*9373|0)|0;x=u+(ha(v,-3580)|0)|0;y=u+(ha(v,-11586)|0)|0;v=k[o+8>>2]|0;u=k[o+24>>2]|0;z=(u+v|0)*6810|0;A=z+(v*4209|0)|0;v=z+(ha(u,-17828)|0)|0;u=A+w|0;z=w-A|0;A=v+x|0;w=x-v|0;v=k[o+4>>2]|0;x=k[o+12>>2]|0;B=k[o+20>>2]<<13;C=k[o+28>>2]|0;D=C+x|0;E=x-C|0;C=E*2531|0;x=D*7791|0;F=C+B|0;G=x+(v*11443|0)+F|0;H=(v*1812|0)-x+F|0;F=D*4815|0;D=B-C-(E<<12)|0;C=(v-E<<13)-B|0;B=(v*10323|0)-F-D|0;E=D+((v*5260|0)-F)|0;i[g+e>>0]=i[h+(((G+u|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((u-G|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((B+A|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((A-B|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((C+y|0)>>>18&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((y-C|0)>>>18&1023)+-384)>>0]|0;i[g+q>>0]=i[h+(((E+w|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((w-E|0)>>>18&1023)+-384)>>0]|0;i[g+t>>0]=i[h+(((H+z|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((z-H|0)>>>18&1023)+-384)>>0]|0;m=m+1|0;if((m|0)==5)break;else o=o+32|0}r=f;return}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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+128|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(j[l>>1]|0,k[c>>2]|0)|0;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=n+m<<2;p=m-n<<2;n=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;m=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;q=((m+n|0)*4433|0)+1024|0;s=q+(n*6270|0)>>11;n=q+(ha(m,-15137)|0)>>11;k[b>>2]=s+o;k[b+96>>2]=o-s;k[b+32>>2]=n+p;k[b+64>>2]=p-n;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+7|0;c=e+1|0;l=e+6|0;a=e+2|0;n=e+5|0;p=e+3|0;s=e+4|0;o=0;m=g;while(1){g=k[d+(o<<2)>>2]|0;q=(k[m>>2]|0)+16400|0;t=k[m+16>>2]|0;u=q+t<<13;v=q-t<<13;t=k[m+8>>2]|0;q=k[m+24>>2]|0;w=(q+t|0)*4433|0;x=w+(t*6270|0)|0;t=w+(ha(q,-15137)|0)|0;q=x+u|0;w=u-x|0;x=t+v|0;u=v-t|0;t=k[m+28>>2]|0;v=k[m+20>>2]|0;y=k[m+12>>2]|0;z=k[m+4>>2]|0;A=y+t|0;B=z+v|0;C=(B+A|0)*9633|0;D=C+(ha(A,-16069)|0)|0;A=C+(ha(B,-3196)|0)|0;B=ha(z+t|0,-7373)|0;C=B+(t*2446|0)+D|0;t=B+(z*12299|0)+A|0;z=ha(y+v|0,-20995)|0;B=z+(v*16819|0)+A|0;A=z+(y*25172|0)+D|0;i[g+e>>0]=i[h+(((t+q|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((q-t|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((A+x|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((x-A|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((B+u|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((u-B|0)>>>18&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((C+w|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((w-C|0)>>>18&1023)+-384)>>0]|0;o=o+1|0;if((o|0)==4)break;else m=m+32|0}r=f;return}function Bp(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=r;r=r+80|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha((k[c+64>>2]|0)*5793|0,j[l+32>>1]|0)|0;o=n+m|0;p=(ha(n,-2)|0)+m|0;m=ha((k[c+32>>2]|0)*10033|0,j[l+16>>1]|0)|0;k[b>>2]=m+o>>11;k[b+48>>2]=o-m>>11;k[b+24>>2]=p>>11;a=a+1|0;if((a|0)==6)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+5|0;c=e+1|0;l=e+4|0;a=e+2|0;p=e+3|0;m=0;o=g;while(1){g=k[d+(m<<2)>>2]|0;n=(k[o>>2]<<13)+134348800|0;q=(k[o+16>>2]|0)*5793|0;s=n+q|0;t=n-q-q|0;q=(k[o+8>>2]|0)*10033|0;n=s+q|0;u=s-q|0;q=k[o+4>>2]|0;s=k[o+12>>2]|0;v=k[o+20>>2]|0;w=(v+q|0)*2998|0;x=w+(s+q<<13)|0;y=w+(v-s<<13)|0;w=q-s-v<<13;i[g+e>>0]=i[h+(((x+n|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((n-x|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((w+t|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((t-w|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((y+u|0)>>>18&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((u-y|0)>>>18&1023)+-384)>>0]|0;m=m+1|0;if((m|0)==3)break;else o=o+24|0}r=f;return}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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;f=r;r=r+32|0;g=f;h=k[a+336>>2]|0;a=k[b+84>>2]|0;b=ha(j[c>>1]|0,k[a>>2]|0)|0;l=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;m=l+b|0;k[g>>2]=m;n=g+16|0;k[n>>2]=b-l;l=ha(j[c+2>>1]|0,k[a+4>>2]|0)|0;b=ha(j[c+18>>1]|0,k[a+36>>2]|0)|0;o=b+l|0;k[g+4>>2]=o;p=l-b|0;k[g+20>>2]=p;b=ha(j[c+4>>1]|0,k[a+8>>2]|0)|0;l=ha(j[c+20>>1]|0,k[a+40>>2]|0)|0;q=l+b|0;k[g+8>>2]=q;s=b-l|0;k[g+24>>2]=s;l=ha(j[c+6>>1]|0,k[a+12>>2]|0)|0;b=ha(j[c+22>>1]|0,k[a+44>>2]|0)|0;a=b+l|0;k[g+12>>2]=a;c=l-b|0;k[g+28>>2]=c;g=e+3|0;b=e+1|0;l=e+2|0;t=k[d>>2]|0;u=m+4100|0;m=u+q<<13;v=u-q<<13;q=(a+o|0)*4433|0;u=q+(o*6270|0)|0;o=q+(ha(a,-15137)|0)|0;i[t+e>>0]=i[h+(((u+m|0)>>>16&1023)+-384)>>0]|0;i[t+g>>0]=i[h+(((m-u|0)>>>16&1023)+-384)>>0]|0;i[t+b>>0]=i[h+(((o+v|0)>>>16&1023)+-384)>>0]|0;i[t+l>>0]=i[h+(((v-o|0)>>>16&1023)+-384)>>0]|0;o=k[d+4>>2]|0;d=(k[n>>2]|0)+4100|0;n=d+s<<13;v=d-s<<13;s=(c+p|0)*4433|0;d=s+(p*6270|0)|0;p=s+(ha(c,-15137)|0)|0;i[o+e>>0]=i[h+(((d+n|0)>>>16&1023)+-384)>>0]|0;i[o+g>>0]=i[h+(((n-d|0)>>>16&1023)+-384)>>0]|0;i[o+b>>0]=i[h+(((p+v|0)>>>16&1023)+-384)>>0]|0;i[o+l>>0]=i[h+(((v-p|0)>>>16&1023)+-384)>>0]|0;r=f;return}function Dp(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=k[a+336>>2]|0;a=k[b+84>>2]|0;b=k[d>>2]|0;d=(ha(j[c>>1]|0,k[a>>2]|0)|0)+4100|0;g=ha(j[c+2>>1]|0,k[a+4>>2]|0)|0;i[b+e>>0]=i[f+(((g+d|0)>>>3&1023)+-384)>>0]|0;i[b+(e+1)>>0]=i[f+(((d-g|0)>>>3&1023)+-384)>>0]|0;return}function Ep(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;f=r;r=r+512|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;o=n*10703|0;p=n*4433|0;n=o+m|0;q=m-o|0;o=p+m|0;s=m-p|0;p=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;m=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;t=p-m|0;u=t*2260|0;v=t*11363|0;t=v+(m*20995|0)|0;w=u+(p*7373|0)|0;x=v+(ha(p,-4926)|0)|0;p=u+(ha(m,-4176)|0)|0;m=t+n|0;u=n-t|0;t=w+o|0;n=o-w|0;w=x+s|0;o=s-x|0;x=p+q|0;s=q-p|0;p=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;q=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;v=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;y=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;z=v+p|0;A=(q+p|0)*11086|0;B=z*10217|0;C=(y+p|0)*8956|0;D=(p-y|0)*7350|0;E=z*5461|0;z=(p-q|0)*3363|0;F=A+B+C+(ha(p,-18730)|0)|0;G=z+(E+D)+(ha(p,-15038)|0)|0;p=(v+q|0)*1136|0;H=(v-q|0)*11529|0;I=y+q|0;J=ha(I,-5461)|0;K=A+(q*589|0)+p+J|0;A=ha(I,-10217)|0;I=z+(q*16154|0)+H+A|0;q=ha(y+v|0,-11086)|0;z=p+(ha(v,-9222)|0)+B+q|0;B=J+(y*8728|0)+C+q|0;q=(y-v|0)*3363|0;C=A+(y*25733|0)+D+q|0;D=H+(ha(v,-6278)|0)+E+q|0;k[b>>2]=F+m>>11;k[b+480>>2]=m-F>>11;k[b+32>>2]=K+t>>11;k[b+448>>2]=t-K>>11;k[b+64>>2]=z+w>>11;k[b+416>>2]=w-z>>11;k[b+96>>2]=B+x>>11;k[b+384>>2]=x-B>>11;k[b+128>>2]=C+s>>11;k[b+352>>2]=s-C>>11;k[b+160>>2]=D+o>>11;k[b+320>>2]=o-D>>11;k[b+192>>2]=I+n>>11;k[b+288>>2]=n-I>>11;k[b+224>>2]=G+u>>11;k[b+256>>2]=u-G>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+7|0;c=e+1|0;l=e+6|0;a=e+2|0;G=e+5|0;u=e+3|0;I=e+4|0;n=0;D=g;while(1){g=k[d+(n<<2)>>2]|0;o=(k[D>>2]|0)+16400|0;C=k[D+16>>2]|0;s=o+C<<13;B=o-C<<13;C=k[D+8>>2]|0;o=k[D+24>>2]|0;x=(o+C|0)*4433|0;z=x+(C*6270|0)|0;C=x+(ha(o,-15137)|0)|0;o=z+s|0;x=s-z|0;z=C+B|0;s=B-C|0;C=k[D+28>>2]|0;B=k[D+20>>2]|0;w=k[D+12>>2]|0;K=k[D+4>>2]|0;t=w+C|0;F=K+B|0;m=(F+t|0)*9633|0;q=m+(ha(t,-16069)|0)|0;t=m+(ha(F,-3196)|0)|0;F=ha(K+C|0,-7373)|0;m=F+(C*2446|0)+q|0;C=F+(K*12299|0)+t|0;K=ha(w+B|0,-20995)|0;F=K+(B*16819|0)+t|0;t=K+(w*25172|0)+q|0;i[g+e>>0]=i[h+(((C+o|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((o-C|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((t+z|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((z-t|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((F+s|0)>>>18&1023)+-384)>>0]|0;i[g+G>>0]=i[h+(((s-F|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((m+x|0)>>>18&1023)+-384)>>0]|0;i[g+I>>0]=i[h+(((x-m|0)>>>18&1023)+-384)>>0]|0;n=n+1|0;if((n|0)==16)break;else D=D+32|0}r=f;return}function Fp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+400|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;o=(n*10438|0)+m|0;p=(n*2578|0)+m|0;q=m+(ha(n,-7223)|0)|0;s=m+(ha(n,-11586)|0)>>11;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;m=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;t=(m+n|0)*9058|0;u=t+(n*2237|0)|0;v=t+(ha(m,-14084)|0)|0;t=(n*5027|0)+(ha(m,-11295)|0)|0;m=u+o|0;n=o-u|0;u=v+p|0;o=p-v|0;v=t+q|0;p=q-t|0;t=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;q=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;w=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;x=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;y=x<<13;z=w+t|0;A=(q+t|0)*10935|0;B=z*9810|0;C=A+B+y+(ha(t,-9232)|0)|0;D=z*6164|0;z=t-q|0;E=(z*3826|0)-y|0;F=E+(D+(ha(t,-8693)|0))|0;t=(ha(w+q|0,-1297)|0)-y|0;G=t+(ha(q,-3474)|0)+A|0;A=t+(ha(w,-19447)|0)+B|0;B=(w-q|0)*11512|0;t=B+y+(ha(w,-13850)|0)+D|0;D=B+(q*5529|0)+E|0;E=z-w+x<<2;k[b>>2]=C+m>>11;k[b+364>>2]=m-C>>11;k[b+28>>2]=G+u>>11;k[b+336>>2]=u-G>>11;k[b+56>>2]=A+v>>11;k[b+308>>2]=v-A>>11;k[b+84>>2]=E+s;k[b+280>>2]=s-E;k[b+112>>2]=t+p>>11;k[b+252>>2]=p-t>>11;k[b+140>>2]=D+o>>11;k[b+224>>2]=o-D>>11;k[b+168>>2]=F+n>>11;k[b+196>>2]=n-F>>11;a=a+1|0;if((a|0)==7)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+6|0;c=e+1|0;l=e+5|0;a=e+2|0;F=e+4|0;n=e+3|0;D=0;o=g;while(1){g=k[d+(D<<2)>>2]|0;t=(k[o>>2]<<13)+134348800|0;p=k[o+8>>2]|0;E=k[o+16>>2]|0;s=k[o+24>>2]|0;A=(E-s|0)*7223|0;v=(p-E|0)*2578|0;G=t+(v+A)+(ha(E,-15083)|0)|0;u=s+p|0;C=(u*10438|0)+t|0;m=C+(ha(s,-637)|0)+A|0;A=C+(ha(p,-20239)|0)+v|0;v=k[o+4>>2]|0;p=k[o+12>>2]|0;C=k[o+20>>2]|0;s=(p+v|0)*7663|0;x=(v-p|0)*1395|0;w=ha(C+p|0,-11295)|0;p=s+x+w|0;z=(C+v|0)*5027|0;v=s-x+z|0;x=z+(C*15326|0)+w|0;i[g+e>>0]=i[h+(((v+m|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((m-v|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((p+G|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((G-p|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((x+A|0)>>>18&1023)+-384)>>0]|0;i[g+F>>0]=i[h+(((A-x|0)>>>18&1023)+-384)>>0]|0;i[g+n>>0]=i[h+(((((E-u|0)*11585|0)+t|0)>>>18&1023)+-384)>>0]|0;D=D+1|0;if((D|0)==14)break;else o=o+28|0}r=f;return}function Gp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+288|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha((k[c+128>>2]|0)*10033|0,j[l+64>>1]|0)|0;o=n+m|0;p=m-n|0;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;q=ha(k[c+192>>2]<<13,j[l+96>>1]|0)|0;s=(n<<13)-q|0;t=s+m|0;u=m-s|0;s=q+(n*11190|0)|0;m=s+o|0;v=o-s|0;s=(n*2998|0)-q|0;q=s+p|0;n=p-s|0;s=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;p=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;o=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;w=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;x=p*10703|0;y=ha(p,-4433)|0;z=o+s|0;A=(w+z|0)*7053|0;B=A+(z*2139|0)|0;z=x+(s*2295|0)+B|0;C=ha(w+o|0,-8565)|0;D=y+C+(ha(o,-12112)|0)+B|0;B=(w*12998|0)-x+A+C|0;C=A+((ha(s,-5540)|0)+y+(ha(w,-16244)|0))|0;y=s-w|0;w=p-o|0;o=(y+w|0)*4433|0;p=o+(y*6270|0)|0;y=o+(ha(w,-15137)|0)|0;k[b>>2]=z+m>>11;k[b+264>>2]=m-z>>11;k[b+24>>2]=p+t>>11;k[b+240>>2]=t-p>>11;k[b+48>>2]=D+q>>11;k[b+216>>2]=q-D>>11;k[b+72>>2]=B+n>>11;k[b+192>>2]=n-B>>11;k[b+96>>2]=y+u>>11;k[b+168>>2]=u-y>>11;k[b+120>>2]=C+v>>11;k[b+144>>2]=v-C>>11;a=a+1|0;if((a|0)==6)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+5|0;c=e+1|0;l=e+4|0;a=e+2|0;C=e+3|0;v=0;y=g;while(1){g=k[d+(v<<2)>>2]|0;u=(k[y>>2]<<13)+134348800|0;B=(k[y+16>>2]|0)*5793|0;n=u+B|0;D=u-B-B|0;B=(k[y+8>>2]|0)*10033|0;u=n+B|0;q=n-B|0;B=k[y+4>>2]|0;n=k[y+12>>2]|0;p=k[y+20>>2]|0;t=(p+B|0)*2998|0;z=t+(n+B<<13)|0;m=t+(p-n<<13)|0;t=B-n-p<<13;i[g+e>>0]=i[h+(((z+u|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((u-z|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((t+D|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((D-t|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((m+q|0)>>>18&1023)+-384)>>0]|0;i[g+C>>0]=i[h+(((q-m|0)>>>18&1023)+-384)>>0]|0;v=v+1|0;if((v|0)==12)break;else y=y+24|0}r=f;return}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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;f=r;r=r+208|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;o=(n*9373|0)+m|0;p=m+(ha(n,-3580)|0)|0;q=m+(ha(n,-11586)|0)>>11;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;m=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;s=(m+n|0)*6810|0;t=s+(n*4209|0)|0;n=s+(ha(m,-17828)|0)|0;m=t+o|0;s=o-t|0;t=n+p|0;o=p-n|0;n=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;p=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;u=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;v=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;w=v+p|0;x=p-v|0;v=x*2531|0;p=u<<13;y=w*7791|0;z=v+p|0;A=y+(n*11443|0)+z|0;B=(n*1812|0)-y+z|0;z=w*4815|0;w=p-v-(x<<12)|0;v=n-u-x<<2;x=(n*10323|0)-z-w|0;u=w+((n*5260|0)-z)|0;k[b>>2]=A+m>>11;k[b+180>>2]=m-A>>11;k[b+20>>2]=x+t>>11;k[b+160>>2]=t-x>>11;k[b+40>>2]=v+q;k[b+140>>2]=q-v;k[b+60>>2]=u+o>>11;k[b+120>>2]=o-u>>11;k[b+80>>2]=B+s>>11;k[b+100>>2]=s-B>>11;a=a+1|0;if((a|0)==5)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+4|0;c=e+1|0;l=e+3|0;a=e+2|0;B=0;s=g;while(1){g=k[d+(B<<2)>>2]|0;u=(k[s>>2]<<13)+134348800|0;o=k[s+8>>2]|0;v=k[s+16>>2]|0;q=(v+o|0)*6476|0;x=o-v|0;v=(x*2896|0)+u|0;o=v+q|0;t=v-q|0;q=u+(ha(x,-11584)|0)|0;x=k[s+4>>2]|0;u=k[s+12>>2]|0;v=(u+x|0)*6810|0;A=v+(x*4209|0)|0;x=v+(ha(u,-17828)|0)|0;i[g+e>>0]=i[h+(((A+o|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((o-A|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((x+t|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((t-x|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+((q>>>18&1023)+-384)>>0]|0;B=B+1|0;if((B|0)==10)break;else s=s+20|0}r=f;return}function Ip(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=r;r=r+128|0;g=f;h=k[a+336>>2]|0;a=4;l=c;c=k[b+84>>2]|0;b=g;while(1){m=j[l+16>>1]|0;n=j[l+32>>1]|0;if(!((m|n)<<16>>16))if(((((j[l+48>>1]|0)==0?(j[l+64>>1]|0)==0:0)?(j[l+80>>1]|0)==0:0)?(j[l+96>>1]|0)==0:0)?(j[l+112>>1]|0)==0:0){o=ha(k[c>>2]<<2,j[l>>1]|0)|0;k[b>>2]=o;k[b+16>>2]=o;k[b+32>>2]=o;k[b+48>>2]=o;k[b+64>>2]=o;k[b+80>>2]=o;k[b+96>>2]=o;k[b+112>>2]=o}else{p=0;q=10}else{p=n;q=10}if((q|0)==10){q=0;n=ha(p<<16>>16,k[c+64>>2]|0)|0;o=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;s=(o+n|0)*4433|0;t=s+(n*6270|0)|0;n=s+(ha(o,-15137)|0)|0;o=ha(k[c+128>>2]<<13,j[l+64>>1]|0)|0;s=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;u=o+s|0;v=s-o|0;o=u+t|0;s=u-t|0;t=v+n|0;u=v-n|0;n=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;v=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;w=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;x=ha(m<<16>>16,k[c+32>>2]|0)|0;m=w+n|0;y=x+v|0;z=(y+m|0)*9633|0;A=z+(ha(m,-16069)|0)|0;m=z+(ha(y,-3196)|0)|0;y=ha(x+n|0,-7373)|0;z=y+(n*2446|0)+A|0;n=y+(x*12299|0)+m|0;x=ha(w+v|0,-20995)|0;y=x+(v*16819|0)+m|0;m=x+(w*25172|0)+A|0;k[b>>2]=n+o>>11;k[b+112>>2]=o-n>>11;k[b+16>>2]=m+t>>11;k[b+96>>2]=t-m>>11;k[b+32>>2]=y+u>>11;k[b+80>>2]=u-y>>11;k[b+48>>2]=z+s>>11;k[b+64>>2]=s-z>>11}if((a|0)>1){a=a+-1|0;l=l+2|0;c=c+4|0;b=b+4|0}else break}b=e+3|0;c=e+1|0;l=e+2|0;a=0;p=g;while(1){g=k[d+(a<<2)>>2]|0;q=(k[p>>2]|0)+16400|0;z=k[p+8>>2]|0;s=q+z<<13;y=q-z<<13;z=k[p+4>>2]|0;q=k[p+12>>2]|0;u=(q+z|0)*4433|0;m=u+(z*6270|0)|0;z=u+(ha(q,-15137)|0)|0;i[g+e>>0]=i[h+(((m+s|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((s-m|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((z+y|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((y-z|0)>>>18&1023)+-384)>>0]|0;a=a+1|0;if((a|0)==8)break;else p=p+16|0}r=f;return}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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;f=r;r=r+80|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha((k[c+128>>2]|0)*5793|0,j[l+64>>1]|0)|0;o=n+m|0;p=(ha(n,-2)|0)+m>>11;m=ha((k[c+64>>2]|0)*10033|0,j[l+32>>1]|0)|0;n=m+o|0;q=o-m|0;m=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;o=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;s=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;t=(s+m|0)*2998|0;u=t+(o+m<<13)|0;v=t+(s-o<<13)|0;t=m-o-s<<2;k[b>>2]=u+n>>11;k[b+60>>2]=n-u>>11;k[b+12>>2]=t+p;k[b+48>>2]=p-t;k[b+24>>2]=v+q>>11;k[b+36>>2]=q-v>>11;a=a+1|0;if((a|0)==3)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+2|0;c=e+1|0;l=0;a=g;while(1){g=k[d+(l<<2)>>2]|0;v=(k[a>>2]<<13)+134348800|0;q=k[a+8>>2]|0;t=v+(q*5793|0)|0;p=(ha(q,-11586)|0)+v|0;v=(k[a+4>>2]|0)*10033|0;i[g+e>>0]=i[h+(((t+v|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((t-v|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+((p>>>18&1023)+-384)>>0]|0;l=l+1|0;if((l|0)==6)break;else a=a+12|0}r=f;return}function Kp(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0;f=r;r=r+32|0;g=f;h=k[a+336>>2]|0;a=k[b+84>>2]|0;b=ha(j[c>>1]|0,k[a>>2]|0)|0;l=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;m=l+b<<13;n=b-l<<13;l=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;b=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;o=(b+l|0)*4433|0;p=o+(l*6270|0)|0;l=o+(ha(b,-15137)|0)|0;b=p+m|0;k[g>>2]=b;k[g+24>>2]=m-p;p=l+n|0;k[g+8>>2]=p;m=n-l|0;k[g+16>>2]=m;l=ha(j[c+2>>1]|0,k[a+4>>2]|0)|0;n=ha(j[c+34>>1]|0,k[a+68>>2]|0)|0;o=n+l<<13;q=l-n<<13;n=ha(j[c+18>>1]|0,k[a+36>>2]|0)|0;l=ha(j[c+50>>1]|0,k[a+100>>2]|0)|0;a=(l+n|0)*4433|0;c=a+(n*6270|0)|0;n=a+(ha(l,-15137)|0)|0;l=c+o|0;k[g+4>>2]=l;a=o-c|0;k[g+28>>2]=a;c=n+q|0;k[g+12>>2]=c;o=q-n|0;k[g+20>>2]=o;n=e+1|0;q=k[d>>2]|0;s=b+33587200|0;i[q+e>>0]=i[h+(((s+l|0)>>>16&1023)+-384)>>0]|0;i[q+n>>0]=i[h+(((s-l|0)>>>16&1023)+-384)>>0]|0;l=k[d+4>>2]|0;s=p+33587200|0;i[l+e>>0]=i[h+(((s+c|0)>>>16&1023)+-384)>>0]|0;i[l+n>>0]=i[h+(((s-c|0)>>>16&1023)+-384)>>0]|0;c=k[d+8>>2]|0;s=m+33587200|0;i[c+e>>0]=i[h+(((s+o|0)>>>16&1023)+-384)>>0]|0;i[c+n>>0]=i[h+(((s-o|0)>>>16&1023)+-384)>>0]|0;o=k[d+12>>2]|0;d=(k[g+24>>2]|0)+33587200|0;i[o+e>>0]=i[h+(((d+a|0)>>>16&1023)+-384)>>0]|0;i[o+n>>0]=i[h+(((d-a|0)>>>16&1023)+-384)>>0]|0;r=f;return}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;f=k[a+336>>2]|0;a=k[b+84>>2]|0;b=(ha(j[c>>1]|0,k[a>>2]|0)|0)+4100|0;g=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;i[(k[d>>2]|0)+e>>0]=i[f+(((g+b|0)>>>3&1023)+-384)>>0]|0;i[(k[d+4>>2]|0)+e>>0]=i[f+(((b-g|0)>>>3&1023)+-384)>>0]|0;return}function Mp(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Np(){var a=0,b=0;if(!(k[30648]|0)){a=122848;return a|0}b=(Wa()|0)+60|0;a=k[b>>2]|0;return a|0}function Op(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=0;while(1){if((l[161247+b>>0]|0)==(a|0)){c=b;d=2;break}b=b+1|0;if((b|0)==87){e=87;f=161335;break}}if((d|0)==2)if(!c){g=161335;return g|0}else{e=c;f=161335}while(1){c=f;while(1){d=c+1|0;if(!(i[c>>0]|0)){h=d;break}else c=d}e=e+-1|0;if(!e){g=h;break}else f=h}return g|0}function Pp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=r;r=r+32|0;e=d;f=d+16|0;k[f>>2]=c;c=(k[f>>2]|0)+(4-1)&~(4-1);g=k[c>>2]|0;k[f>>2]=c+4;k[e>>2]=a;k[e+4>>2]=b|32768;k[e+8>>2]=g;g=Vp(eb(5,e|0)|0)|0;r=d;return g|0}function Qp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0.0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0.0,V=0,X=0.0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0.0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0.0,qa=0,ra=0.0,sa=0.0,ta=0,ua=0.0,va=0,wa=0.0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0.0,Ha=0,Ia=0,Ja=0,Ka=0,La=0.0,Ma=0,Na=0,Oa=0,Pa=0.0,Qa=0.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,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,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,_b=0,$b=0,ac=0,bc=0.0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0.0,bd=0.0,cd=0.0,dd=0.0,ed=0.0,fd=0.0,gd=0.0,hd=0,id=0,jd=0.0,kd=0,ld=0.0;d=r;r=r+512|0;e=d;switch(b|0){case 0:{f=24;g=-149;break}case 1:{f=53;g=-1074;break}case 2:{f=53;g=-1074;break}default:{h=0.0;r=d;return +h}}b=a+4|0;j=a+100|0;do{m=k[b>>2]|0;if(m>>>0<(k[j>>2]|0)>>>0){k[b>>2]=m+1;n=l[m>>0]|0}else n=Up(a)|0}while((Mp(n)|0)!=0);o=n;a:do switch(o|0){case 43:case 45:{n=1-(((o|0)==45&1)<<1)|0;m=k[b>>2]|0;if(m>>>0<(k[j>>2]|0)>>>0){k[b>>2]=m+1;p=l[m>>0]|0;q=n;break a}else{p=Up(a)|0;q=n;break a}break}default:{p=o;q=1}}while(0);o=p;p=0;while(1){if((o|32|0)!=(i[163139+p>>0]|0)){s=o;t=p;break}do if(p>>>0<7){n=k[b>>2]|0;if(n>>>0<(k[j>>2]|0)>>>0){k[b>>2]=n+1;u=l[n>>0]|0;break}else{u=Up(a)|0;break}}else u=o;while(0);n=p+1|0;if(n>>>0<8){o=u;p=n}else{s=u;t=n;break}}b:do switch(t|0){case 8:break;case 3:{v=23;break}default:{u=(c|0)!=0;if(u&t>>>0>3)if((t|0)==8)break b;else{v=23;break b}do if(!t){if((s|32|0)==110){p=k[b>>2]|0;if(p>>>0<(k[j>>2]|0)>>>0){k[b>>2]=p+1;w=l[p>>0]|0}else w=Up(a)|0;if((w|32|0)!=97)break;p=k[b>>2]|0;if(p>>>0<(k[j>>2]|0)>>>0){k[b>>2]=p+1;x=l[p>>0]|0}else x=Up(a)|0;if((x|32|0)!=110)break;p=k[b>>2]|0;if(p>>>0<(k[j>>2]|0)>>>0){k[b>>2]=p+1;y=l[p>>0]|0}else y=Up(a)|0;if((y|0)==40)z=1;else{if(!(k[j>>2]|0)){h=A;r=d;return +h}k[b>>2]=(k[b>>2]|0)+-1;h=A;r=d;return +h}while(1){p=k[b>>2]|0;if(p>>>0<(k[j>>2]|0)>>>0){k[b>>2]=p+1;C=l[p>>0]|0}else C=Up(a)|0;if(!((C+-48|0)>>>0<10|(C+-65|0)>>>0<26)?!((C|0)==95|(C+-97|0)>>>0<26):0){D=C;E=z;break}z=z+1|0}if((D|0)==41){h=A;r=d;return +h}p=(k[j>>2]|0)==0;if(!p)k[b>>2]=(k[b>>2]|0)+-1;if(!u){o=Np()|0;k[o>>2]=22;Tp(a,0);h=0.0;r=d;return +h}if(!E){h=A;r=d;return +h}else F=E;do{F=F+-1|0;if(!p)k[b>>2]=(k[b>>2]|0)+-1}while((F|0)!=0);h=A;r=d;return +h}do if((s|0)==48){p=k[b>>2]|0;if(p>>>0<(k[j>>2]|0)>>>0){k[b>>2]=p+1;G=l[p>>0]|0}else G=Up(a)|0;if((G|32|0)!=120){if(!(k[j>>2]|0)){H=48;break}k[b>>2]=(k[b>>2]|0)+-1;H=48;break}p=k[b>>2]|0;if(p>>>0<(k[j>>2]|0)>>>0){k[b>>2]=p+1;I=l[p>>0]|0;J=0}else{I=Up(a)|0;J=0}c:while(1){switch(I|0){case 46:{K=J;v=72;break c;break}case 48:break;default:{M=0;N=0;O=0;P=0;Q=I;R=J;S=0;T=0;U=1.0;V=0;X=0.0;break c}}p=k[b>>2]|0;if(p>>>0<(k[j>>2]|0)>>>0){k[b>>2]=p+1;I=l[p>>0]|0;J=1;continue}else{I=Up(a)|0;J=1;continue}}if((v|0)==72){p=k[b>>2]|0;if(p>>>0<(k[j>>2]|0)>>>0){k[b>>2]=p+1;Y=l[p>>0]|0}else Y=Up(a)|0;if((Y|0)==48){p=0;o=0;while(1){n=k[b>>2]|0;if(n>>>0<(k[j>>2]|0)>>>0){k[b>>2]=n+1;Z=l[n>>0]|0}else Z=Up(a)|0;n=sr(p|0,o|0,-1,-1)|0;m=L;if((Z|0)==48){p=n;o=m}else{M=0;N=0;O=n;P=m;Q=Z;R=1;S=1;T=0;U=1.0;V=0;X=0.0;break}}}else{M=0;N=0;O=0;P=0;Q=Y;R=K;S=1;T=0;U=1.0;V=0;X=0.0}}while(1){o=Q+-48|0;p=Q|32;if(o>>>0>=10){m=(Q|0)==46;if(!(m|(p+-97|0)>>>0<6)){_=N;$=O;aa=M;ba=P;ca=Q;da=R;ea=S;fa=V;ga=X;break}if(m)if(!S){ia=N;ja=M;ka=N;la=M;ma=R;na=1;oa=T;pa=U;qa=V;ra=X}else{_=N;$=O;aa=M;ba=P;ca=46;da=R;ea=S;fa=V;ga=X;break}else v=84}else v=84;if((v|0)==84){v=0;m=(Q|0)>57?p+-87|0:o;do if(!((M|0)<0|(M|0)==0&N>>>0<8)){if((M|0)<0|(M|0)==0&N>>>0<14){sa=U*.0625;ta=T;ua=sa;va=V;wa=X+sa*+(m|0);break}if((T|0)!=0|(m|0)==0){ta=T;ua=U;va=V;wa=X}else{ta=1;ua=U;va=V;wa=X+U*.5}}else{ta=T;ua=U;va=m+(V<<4)|0;wa=X}while(0);m=sr(N|0,M|0,1,0)|0;ia=O;ja=P;ka=m;la=L;ma=1;na=S;oa=ta;pa=ua;qa=va;ra=wa}m=k[b>>2]|0;if(m>>>0<(k[j>>2]|0)>>>0){k[b>>2]=m+1;M=la;N=ka;O=ia;P=ja;Q=l[m>>0]|0;R=ma;S=na;T=oa;U=pa;V=qa;X=ra;continue}else{M=la;N=ka;O=ia;P=ja;Q=Up(a)|0;R=ma;S=na;T=oa;U=pa;V=qa;X=ra;continue}}if(!da){m=(k[j>>2]|0)==0;if(!m)k[b>>2]=(k[b>>2]|0)+-1;if(c){if(!m?(m=k[b>>2]|0,k[b>>2]=m+-1,(ea|0)!=0):0)k[b>>2]=m+-2}else Tp(a,0);h=+(q|0)*0.0;r=d;return +h}m=(ea|0)==0;o=m?_:$;p=m?aa:ba;if((aa|0)<0|(aa|0)==0&_>>>0<8){m=_;n=aa;xa=fa;while(1){ya=xa<<4;m=sr(m|0,n|0,1,0)|0;n=L;if(!((n|0)<0|(n|0)==0&m>>>0<8)){za=ya;break}else xa=ya}}else za=fa;do if((ca|32|0)==112){xa=Xq(a,c)|0;m=L;if((xa|0)==0&(m|0)==-2147483648)if(!c){Tp(a,0);h=0.0;r=d;return +h}else{if(!(k[j>>2]|0)){Aa=0;Ba=0;break}k[b>>2]=(k[b>>2]|0)+-1;Aa=0;Ba=0;break}else{Aa=xa;Ba=m}}else if(!(k[j>>2]|0)){Aa=0;Ba=0}else{k[b>>2]=(k[b>>2]|0)+-1;Aa=0;Ba=0}while(0);m=rr(o|0,p|0,2)|0;xa=sr(m|0,L|0,-32,-1)|0;m=sr(xa|0,L|0,Aa|0,Ba|0)|0;xa=L;if(!za){h=+(q|0)*0.0;r=d;return +h}if((xa|0)>0|(xa|0)==0&m>>>0>(0-g|0)>>>0){n=Np()|0;k[n>>2]=34;h=+(q|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;r=d;return +h}n=g+-106|0;ya=((n|0)<0)<<31>>31;if((xa|0)<(ya|0)|(xa|0)==(ya|0)&m>>>0<n>>>0){n=Np()|0;k[n>>2]=34;h=+(q|0)*2.2250738585072014e-308*2.2250738585072014e-308;r=d;return +h}if((za|0)>-1){n=m;ya=xa;Ca=za;sa=ga;while(1){Da=!(sa>=.5);Ea=Da&1|Ca<<1;Fa=Ea^1;Ga=sa+(Da?sa:sa+-1.0);Da=sr(n|0,ya|0,-1,-1)|0;Ha=L;if((Ea|0)>-1){n=Da;ya=Ha;Ca=Fa;sa=Ga}else{Ia=Da;Ja=Ha;Ka=Fa;La=Ga;break}}}else{Ia=m;Ja=xa;Ka=za;La=ga}Ca=pr(32,0,g|0,((g|0)<0)<<31>>31|0)|0;ya=sr(Ia|0,Ja|0,Ca|0,L|0)|0;Ca=L;if(0>(Ca|0)|0==(Ca|0)&f>>>0>ya>>>0)if((ya|0)<0){Ma=0;v=125}else{Na=ya;v=123}else{Na=f;v=123}if((v|0)==123)if((Na|0)<53){Ma=Na;v=125}else{Oa=Na;Pa=+(q|0);Qa=0.0}if((v|0)==125){sa=+(q|0);Oa=Ma;Pa=sa;Qa=+Xp(+aq(1.0,84-Ma|0),sa)}ya=(Ka&1|0)==0&(La!=0.0&(Oa|0)<32);sa=Pa*(ya?0.0:La)+(Qa+Pa*+(((ya&1)+Ka|0)>>>0))-Qa;if(!(sa!=0.0)){ya=Np()|0;k[ya>>2]=34}h=+bq(sa,Ia);r=d;return +h}else H=s;while(0);ya=g+f|0;Ca=0-ya|0;n=H;p=0;d:while(1){switch(n|0){case 46:{Ra=p;v=136;break d;break}case 48:break;default:{Sa=n;Ta=0;Ua=0;Va=p;Wa=0;break d}}o=k[b>>2]|0;if(o>>>0<(k[j>>2]|0)>>>0){k[b>>2]=o+1;n=l[o>>0]|0;p=1;continue}else{n=Up(a)|0;p=1;continue}}if((v|0)==136){p=k[b>>2]|0;if(p>>>0<(k[j>>2]|0)>>>0){k[b>>2]=p+1;Xa=l[p>>0]|0}else Xa=Up(a)|0;if((Xa|0)==48){p=0;n=0;while(1){o=sr(p|0,n|0,-1,-1)|0;Fa=L;Ha=k[b>>2]|0;if(Ha>>>0<(k[j>>2]|0)>>>0){k[b>>2]=Ha+1;Ya=l[Ha>>0]|0}else Ya=Up(a)|0;if((Ya|0)==48){p=o;n=Fa}else{Sa=Ya;Ta=o;Ua=Fa;Va=1;Wa=1;break}}}else{Sa=Xa;Ta=0;Ua=0;Va=Ra;Wa=1}}k[e>>2]=0;n=Sa+-48|0;p=(Sa|0)==46;e:do if(p|n>>>0<10){Fa=e+496|0;o=Sa;Ha=0;Da=0;Ea=p;Za=n;_a=Ta;$a=Ua;ab=Va;bb=Wa;cb=0;db=0;eb=0;f:while(1){do if(Ea)if(!bb){fb=Ha;gb=Da;hb=Ha;ib=Da;jb=ab;kb=1;lb=cb;mb=db;nb=eb}else{ob=_a;pb=$a;qb=Ha;rb=Da;sb=ab;tb=cb;ub=db;vb=eb;break f}else{wb=sr(Ha|0,Da|0,1,0)|0;xb=L;yb=(o|0)!=48;if((db|0)>=125){if(!yb){fb=_a;gb=$a;hb=wb;ib=xb;jb=ab;kb=bb;lb=cb;mb=db;nb=eb;break}k[Fa>>2]=k[Fa>>2]|1;fb=_a;gb=$a;hb=wb;ib=xb;jb=ab;kb=bb;lb=cb;mb=db;nb=eb;break}zb=e+(db<<2)|0;if(!cb)Ab=Za;else Ab=o+-48+((k[zb>>2]|0)*10|0)|0;k[zb>>2]=Ab;zb=cb+1|0;Bb=(zb|0)==9;fb=_a;gb=$a;hb=wb;ib=xb;jb=1;kb=bb;lb=Bb?0:zb;mb=(Bb&1)+db|0;nb=yb?wb:eb}while(0);wb=k[b>>2]|0;if(wb>>>0<(k[j>>2]|0)>>>0){k[b>>2]=wb+1;Cb=l[wb>>0]|0}else Cb=Up(a)|0;Za=Cb+-48|0;Ea=(Cb|0)==46;if(!(Ea|Za>>>0<10)){Db=Cb;Eb=hb;Fb=fb;Gb=ib;Hb=gb;Ib=jb;Jb=kb;Kb=lb;Lb=mb;Mb=nb;v=159;break e}else{o=Cb;Ha=hb;Da=ib;_a=fb;$a=gb;ab=jb;bb=kb;cb=lb;db=mb;eb=nb}}Nb=qb;Ob=rb;Pb=ob;Qb=pb;Rb=(sb|0)!=0;Sb=tb;Tb=ub;Ub=vb;v=167}else{Db=Sa;Eb=0;Fb=Ta;Gb=0;Hb=Ua;Ib=Va;Jb=Wa;Kb=0;Lb=0;Mb=0;v=159}while(0);do if((v|0)==159){n=(Jb|0)==0;p=n?Eb:Fb;eb=n?Gb:Hb;n=(Ib|0)!=0;if(!((Db|32|0)==101&n))if((Db|0)>-1){Nb=Eb;Ob=Gb;Pb=p;Qb=eb;Rb=n;Sb=Kb;Tb=Lb;Ub=Mb;v=167;break}else{Vb=Eb;Wb=Gb;Xb=n;Yb=p;Zb=eb;_b=Kb;$b=Lb;ac=Mb;v=169;break}n=Xq(a,c)|0;db=L;if((n|0)==0&(db|0)==-2147483648){if(!c){Tp(a,0);bc=0.0;break}if(!(k[j>>2]|0)){cc=0;dc=0}else{k[b>>2]=(k[b>>2]|0)+-1;cc=0;dc=0}}else{cc=n;dc=db}db=sr(cc|0,dc|0,p|0,eb|0)|0;ec=db;fc=Eb;gc=L;hc=Gb;ic=Kb;jc=Lb;kc=Mb;v=171}while(0);if((v|0)==167)if(k[j>>2]|0){k[b>>2]=(k[b>>2]|0)+-1;if(Rb){ec=Pb;fc=Nb;gc=Qb;hc=Ob;ic=Sb;jc=Tb;kc=Ub;v=171}else v=170}else{Vb=Nb;Wb=Ob;Xb=Rb;Yb=Pb;Zb=Qb;_b=Sb;$b=Tb;ac=Ub;v=169}if((v|0)==169)if(Xb){ec=Yb;fc=Vb;gc=Zb;hc=Wb;ic=_b;jc=$b;kc=ac;v=171}else v=170;do if((v|0)==170){db=Np()|0;k[db>>2]=22;Tp(a,0);bc=0.0}else if((v|0)==171){db=k[e>>2]|0;if(!db){bc=+(q|0)*0.0;break}if(((hc|0)<0|(hc|0)==0&fc>>>0<10)&((ec|0)==(fc|0)&(gc|0)==(hc|0))?f>>>0>30|(db>>>f|0)==0:0){bc=+(q|0)*+(db>>>0);break}db=(g|0)/-2|0;eb=((db|0)<0)<<31>>31;if((gc|0)>(eb|0)|(gc|0)==(eb|0)&ec>>>0>db>>>0){db=Np()|0;k[db>>2]=34;bc=+(q|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}db=g+-106|0;eb=((db|0)<0)<<31>>31;if((gc|0)<(eb|0)|(gc|0)==(eb|0)&ec>>>0<db>>>0){db=Np()|0;k[db>>2]=34;bc=+(q|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(!ic)lc=jc;else{if((ic|0)<9){db=e+(jc<<2)|0;eb=k[db>>2]|0;p=ic;while(1){n=eb*10|0;p=p+1|0;if((p|0)==9){mc=n;break}else eb=n}k[db>>2]=mc}lc=jc+1|0}if((kc|0)<9?(kc|0)<=(ec|0)&(ec|0)<18:0){if((ec|0)==9){bc=+(q|0)*+((k[e>>2]|0)>>>0);break}if((ec|0)<9){bc=+(q|0)*+((k[e>>2]|0)>>>0)/+(k[122852+(8-ec<<2)>>2]|0);break}eb=f+27+(ha(ec,-3)|0)|0;p=k[e>>2]|0;if((eb|0)>30|(p>>>eb|0)==0){bc=+(q|0)*+(p>>>0)*+(k[122852+(ec+-10<<2)>>2]|0);break}}p=(ec|0)%9|0;if(!p){nc=0;oc=0;pc=ec;qc=lc}else{eb=(ec|0)>-1?p:p+9|0;p=k[122852+(8-eb<<2)>>2]|0;if(lc){n=1e9/(p|0)|0;cb=0;bb=0;ab=0;$a=ec;while(1){_a=e+(ab<<2)|0;Da=k[_a>>2]|0;Ha=((Da>>>0)/(p>>>0)|0)+bb|0;k[_a>>2]=Ha;_a=ha((Da>>>0)%(p>>>0)|0,n)|0;Da=(ab|0)==(cb|0)&(Ha|0)==0;ab=ab+1|0;Ha=Da?$a+-9|0:$a;o=Da?ab&127:cb;if((ab|0)==(lc|0)){rc=_a;sc=o;tc=Ha;break}else{cb=o;bb=_a;$a=Ha}}if(!rc){uc=sc;vc=tc;wc=lc}else{k[e+(lc<<2)>>2]=rc;uc=sc;vc=tc;wc=lc+1|0}}else{uc=0;vc=ec;wc=0}nc=uc;oc=0;pc=9-eb+vc|0;qc=wc}g:while(1){$a=(pc|0)<18;bb=(pc|0)==18;cb=e+(nc<<2)|0;ab=oc;n=qc;while(1){if(!$a){if(!bb){xc=nc;yc=ab;zc=pc;Ac=n;break g}if((k[cb>>2]|0)>>>0>=9007199){xc=nc;yc=ab;zc=18;Ac=n;break g}}p=0;db=n+127|0;Ha=n;while(1){_a=db&127;o=e+(_a<<2)|0;Da=rr(k[o>>2]|0,0,29)|0;Za=sr(Da|0,L|0,p|0,0)|0;Da=L;if(Da>>>0>0|(Da|0)==0&Za>>>0>1e9){Ea=Er(Za|0,Da|0,1e9,0)|0;Fa=Fr(Za|0,Da|0,1e9,0)|0;Bc=Fa;Cc=Ea}else{Bc=Za;Cc=0}k[o>>2]=Bc;o=(_a|0)==(nc|0);Za=(_a|0)!=(Ha+127&127|0)|o?Ha:(Bc|0)==0?_a:Ha;if(o){Dc=Cc;Ec=Za;break}else{p=Cc;db=_a+-1|0;Ha=Za}}Ha=ab+-29|0;if(!Dc){ab=Ha;n=Ec}else{Fc=Ha;Gc=Dc;Hc=Ec;break}}n=nc+127&127;if((n|0)==(Hc|0)){ab=Hc+127&127;cb=e+((Hc+126&127)<<2)|0;k[cb>>2]=k[cb>>2]|k[e+(ab<<2)>>2];Ic=ab}else Ic=Hc;k[e+(n<<2)>>2]=Gc;nc=n;oc=Fc;pc=pc+9|0;qc=Ic}h:while(1){Jc=Ac+1&127;eb=e+((Ac+127&127)<<2)|0;n=xc;ab=yc;cb=zc;while(1){bb=(cb|0)==18;$a=(cb|0)>27?9:1;Ha=bb^1;Kc=n;Lc=ab;while(1){Mc=Kc&127;Nc=(Mc|0)==(Ac|0);do if(!Nc){db=k[e+(Mc<<2)>>2]|0;if(db>>>0<9007199){v=217;break}if(db>>>0>9007199)break;db=Kc+1&127;if((db|0)==(Ac|0)){v=217;break}p=k[e+(db<<2)>>2]|0;if(p>>>0<254740991){v=217;break}if(!(p>>>0>254740991|Ha)){Oc=Mc;Pc=Kc;Qc=Lc;Rc=Ac;break h}}else v=217;while(0);if((v|0)==217?(v=0,bb):0){v=218;break h}p=Lc+$a|0;if((Kc|0)==(Ac|0)){Kc=Ac;Lc=p}else{Sc=p;Tc=Kc;break}}bb=(1<<$a)+-1|0;Ha=1e9>>>$a;p=Tc;db=0;Za=Tc;_a=cb;while(1){o=e+(Za<<2)|0;Ea=k[o>>2]|0;Fa=(Ea>>>$a)+db|0;k[o>>2]=Fa;o=ha(Ea&bb,Ha)|0;Ea=(Za|0)==(p|0)&(Fa|0)==0;Za=Za+1&127;Fa=Ea?_a+-9|0:_a;Da=Ea?Za:p;if((Za|0)==(Ac|0)){Uc=o;Vc=Da;Wc=Fa;break}else{p=Da;db=o;_a=Fa}}if(!Uc){n=Vc;ab=Sc;cb=Wc;continue}if((Jc|0)!=(Vc|0)){Xc=Sc;Yc=Uc;Zc=Vc;_c=Wc;break}k[eb>>2]=k[eb>>2]|1;n=Vc;ab=Sc;cb=Wc}k[e+(Ac<<2)>>2]=Yc;xc=Zc;yc=Xc;zc=_c;Ac=Jc}if((v|0)==218)if(Nc){k[e+(Jc+-1<<2)>>2]=0;Oc=Ac;Pc=Kc;Qc=Lc;Rc=Jc}else{Oc=Mc;Pc=Kc;Qc=Lc;Rc=Ac}sa=+((k[e+(Oc<<2)>>2]|0)>>>0);cb=Pc+1&127;if((cb|0)==(Rc|0)){ab=Pc+2&127;k[e+(ab+-1<<2)>>2]=0;$c=ab}else $c=Rc;Ga=+(q|0);ad=Ga*(sa*1.0e9+ +((k[e+(cb<<2)>>2]|0)>>>0));cb=Qc+53|0;ab=cb-g|0;n=(ab|0)<(f|0);eb=n&1;_a=n?((ab|0)<0?0:ab):f;if((_a|0)<53){sa=+Xp(+aq(1.0,105-_a|0),ad);bd=+Zp(ad,+aq(1.0,53-_a|0));cd=sa;dd=bd;ed=sa+(ad-bd)}else{cd=0.0;dd=0.0;ed=ad}db=Pc+2&127;do if((db|0)==($c|0))fd=dd;else{p=k[e+(db<<2)>>2]|0;do if(p>>>0>=5e8){if(p>>>0>5e8){gd=Ga*.75+dd;break}if((Pc+3&127|0)==($c|0)){gd=Ga*.5+dd;break}else{gd=Ga*.75+dd;break}}else{if((p|0)==0?(Pc+3&127|0)==($c|0):0){gd=dd;break}gd=Ga*.25+dd}while(0);if((53-_a|0)<=1){fd=gd;break}if(+Zp(gd,1.0)!=0.0){fd=gd;break}fd=gd+1.0}while(0);Ga=ed+fd-cd;do if((cb&2147483647|0)>(-2-ya|0)){if(!(+W(+Ga)>=9007199254740992.0)){hd=eb;id=Qc;jd=Ga}else{hd=n&(_a|0)==(ab|0)?0:eb;id=Qc+1|0;jd=Ga*.5}if((id+50|0)<=(Ca|0)?!(fd!=0.0&(hd|0)!=0):0){kd=id;ld=jd;break}db=Np()|0;k[db>>2]=34;kd=id;ld=jd}else{kd=Qc;ld=Ga}while(0);bc=+bq(ld,kd)}while(0);h=bc;r=d;return +h}while(0);if(k[j>>2]|0)k[b>>2]=(k[b>>2]|0)+-1;u=Np()|0;k[u>>2]=22;Tp(a,0);h=0.0;r=d;return +h}}while(0);if((v|0)==23){v=(k[j>>2]|0)==0;if(!v)k[b>>2]=(k[b>>2]|0)+-1;if((c|0)!=0&t>>>0>3){c=t;do{if(!v)k[b>>2]=(k[b>>2]|0)+-1;c=c+-1|0}while(c>>>0>3)}}h=+(q|0)*B;r=d;return +h}function Rp(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,j=0,m=0,n=0,o=0,p=0,q=0,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,M=0,N=0,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,ia=0,ja=0,ka=0,la=0;if(b>>>0>36){f=Np()|0;k[f>>2]=22;g=0;h=0;L=g;return h|0}f=a+4|0;j=a+100|0;do{m=k[f>>2]|0;if(m>>>0<(k[j>>2]|0)>>>0){k[f>>2]=m+1;n=l[m>>0]|0}else n=Up(a)|0}while((Mp(n)|0)!=0);o=n;a:do switch(o|0){case 43:case 45:{n=((o|0)==45)<<31>>31;m=k[f>>2]|0;if(m>>>0<(k[j>>2]|0)>>>0){k[f>>2]=m+1;p=l[m>>0]|0;q=n;break a}else{p=Up(a)|0;q=n;break a}break}default:{p=o;q=0}}while(0);o=(b|0)==0;do if((b&-17|0)==0&(p|0)==48){n=k[f>>2]|0;if(n>>>0<(k[j>>2]|0)>>>0){k[f>>2]=n+1;r=l[n>>0]|0}else r=Up(a)|0;if((r|32|0)!=120)if(o){s=8;t=r;u=46;break}else{v=b;w=r;u=32;break}n=k[f>>2]|0;if(n>>>0<(k[j>>2]|0)>>>0){k[f>>2]=n+1;x=l[n>>0]|0}else x=Up(a)|0;if((l[163148+(x+1)>>0]|0)>15){n=(k[j>>2]|0)==0;if(!n)k[f>>2]=(k[f>>2]|0)+-1;if(!c){Tp(a,0);g=0;h=0;L=g;return h|0}if(n){g=0;h=0;L=g;return h|0}k[f>>2]=(k[f>>2]|0)+-1;g=0;h=0;L=g;return h|0}else{s=16;t=x;u=46}}else{n=o?10:b;if((l[163148+(p+1)>>0]|0)>>>0<n>>>0){v=n;w=p;u=32}else{if(k[j>>2]|0)k[f>>2]=(k[f>>2]|0)+-1;Tp(a,0);n=Np()|0;k[n>>2]=22;g=0;h=0;L=g;return h|0}}while(0);if((u|0)==32)if((v|0)==10){p=w+-48|0;if(p>>>0<10){b=p;p=0;while(1){o=(p*10|0)+b|0;x=k[f>>2]|0;if(x>>>0<(k[j>>2]|0)>>>0){k[f>>2]=x+1;y=l[x>>0]|0}else y=Up(a)|0;b=y+-48|0;if(!(b>>>0<10&o>>>0<429496729)){z=o;A=y;break}else p=o}B=z;C=0;D=A}else{B=0;C=0;D=w}A=D+-48|0;if(A>>>0<10){z=B;p=C;y=A;A=D;while(1){D=Dr(z|0,p|0,10,0)|0;b=L;o=((y|0)<0)<<31>>31;x=~o;if(b>>>0>x>>>0|(b|0)==(x|0)&D>>>0>~y>>>0){E=y;F=z;G=p;H=A;break}x=sr(D|0,b|0,y|0,o|0)|0;o=L;b=k[f>>2]|0;if(b>>>0<(k[j>>2]|0)>>>0){k[f>>2]=b+1;I=l[b>>0]|0}else I=Up(a)|0;b=I+-48|0;if(b>>>0<10&(o>>>0<429496729|(o|0)==429496729&x>>>0<2576980378)){z=x;p=o;y=b;A=I}else{E=b;F=x;G=o;H=I;break}}if(E>>>0>9){J=G;K=F;M=q}else{N=10;O=F;P=G;Q=H;u=72}}else{J=C;K=B;M=q}}else{s=v;t=w;u=46}b:do if((u|0)==46){if(!(s+-1&s)){w=i[163405+((s*23|0)>>>5&7)>>0]|0;v=i[163148+(t+1)>>0]|0;B=v&255;if(B>>>0<s>>>0){C=B;B=0;while(1){H=C|B<<w;G=k[f>>2]|0;if(G>>>0<(k[j>>2]|0)>>>0){k[f>>2]=G+1;R=l[G>>0]|0}else R=Up(a)|0;G=i[163148+(R+1)>>0]|0;C=G&255;if(!(H>>>0<134217728&C>>>0<s>>>0)){S=H;T=G;U=R;break}else B=H}V=T;W=0;X=S;Y=U}else{V=v;W=0;X=0;Y=t}B=ur(-1,-1,w|0)|0;C=L;if((V&255)>>>0>=s>>>0|(W>>>0>C>>>0|(W|0)==(C|0)&X>>>0>B>>>0)){N=s;O=X;P=W;Q=Y;u=72;break}else{Z=X;_=W;$=V}while(1){H=rr(Z|0,_|0,w|0)|0;G=L;F=$&255|H;H=k[f>>2]|0;if(H>>>0<(k[j>>2]|0)>>>0){k[f>>2]=H+1;aa=l[H>>0]|0}else aa=Up(a)|0;$=i[163148+(aa+1)>>0]|0;if(($&255)>>>0>=s>>>0|(G>>>0>C>>>0|(G|0)==(C|0)&F>>>0>B>>>0)){N=s;O=F;P=G;Q=aa;u=72;break b}else{Z=F;_=G}}}B=i[163148+(t+1)>>0]|0;C=B&255;if(C>>>0<s>>>0){w=C;C=0;while(1){v=w+(ha(C,s)|0)|0;G=k[f>>2]|0;if(G>>>0<(k[j>>2]|0)>>>0){k[f>>2]=G+1;ba=l[G>>0]|0}else ba=Up(a)|0;G=i[163148+(ba+1)>>0]|0;w=G&255;if(!(v>>>0<119304647&w>>>0<s>>>0)){ca=v;da=G;ea=ba;break}else C=v}fa=da;ga=ca;ia=0;ja=ea}else{fa=B;ga=0;ia=0;ja=t}if((fa&255)>>>0<s>>>0){C=Er(-1,-1,s|0,0)|0;w=L;v=ia;G=ga;F=fa;H=ja;while(1){if(v>>>0>w>>>0|(v|0)==(w|0)&G>>>0>C>>>0){N=s;O=G;P=v;Q=H;u=72;break b}E=Dr(G|0,v|0,s|0,0)|0;I=L;A=F&255;if(I>>>0>4294967295|(I|0)==-1&E>>>0>~A>>>0){N=s;O=G;P=v;Q=H;u=72;break b}y=sr(A|0,0,E|0,I|0)|0;I=L;E=k[f>>2]|0;if(E>>>0<(k[j>>2]|0)>>>0){k[f>>2]=E+1;ka=l[E>>0]|0}else ka=Up(a)|0;F=i[163148+(ka+1)>>0]|0;if((F&255)>>>0>=s>>>0){N=s;O=y;P=I;Q=ka;u=72;break}else{v=I;G=y;H=ka}}}else{N=s;O=ga;P=ia;Q=ja;u=72}}while(0);if((u|0)==72)if((l[163148+(Q+1)>>0]|0)>>>0<N>>>0){do{Q=k[f>>2]|0;if(Q>>>0<(k[j>>2]|0)>>>0){k[f>>2]=Q+1;la=l[Q>>0]|0}else la=Up(a)|0}while((l[163148+(la+1)>>0]|0)>>>0<N>>>0);N=Np()|0;k[N>>2]=34;J=e;K=d;M=(d&1|0)==0&0==0?q:0}else{J=P;K=O;M=q}if(k[j>>2]|0)k[f>>2]=(k[f>>2]|0)+-1;if(!(J>>>0<e>>>0|(J|0)==(e|0)&K>>>0<d>>>0)){if(!((d&1|0)!=0|0!=0|(M|0)!=0)){f=Np()|0;k[f>>2]=34;f=sr(d|0,e|0,-1,-1)|0;g=L;h=f;L=g;return h|0}if(J>>>0>e>>>0|(J|0)==(e|0)&K>>>0>d>>>0){f=Np()|0;k[f>>2]=34;g=e;h=d;L=g;return h|0}}d=((M|0)<0)<<31>>31;e=pr(K^M|0,J^d|0,M|0,d|0)|0;g=L;h=e;L=g;return h|0}function Sp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;i[a>>0]=47;i[a+1>>0]=112;i[a+2>>0]=114;i[a+3>>0]=111;i[a+4>>0]=99;i[a+5>>0]=47;i[a+6>>0]=115;i[a+7>>0]=101;i[a+8>>0]=108;i[a+9>>0]=102;i[a+10>>0]=47;i[a+11>>0]=102;i[a+12>>0]=100;i[a+13>>0]=47;c=a+14|0;i[c>>0]=0;if(!b){i[c>>0]=48;i[a+15>>0]=0;return}else{d=14;e=b}while(1){c=d+1|0;if(e>>>0<10){f=c;break}else{d=c;e=(e>>>0)/10|0}}i[a+f>>0]=0;e=b;b=f;while(1){b=b+-1|0;i[a+b>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return}function Tp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a+104>>2]=b;c=k[a+4>>2]|0;d=k[a+8>>2]|0;e=d-c|0;k[a+108>>2]=e;if((b|0)!=0&(e|0)>(b|0)){k[a+100>>2]=c+b;return}else{k[a+100>>2]=d;return}}function Up(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0;b=a+104|0;c=k[b>>2]|0;if(!((c|0)!=0?(k[a+108>>2]|0)>=(c|0):0))d=3;if((d|0)==3?(c=uq(a)|0,(c|0)>=0):0){e=k[b>>2]|0;b=a+8|0;if(e){f=k[b>>2]|0;g=k[a+4>>2]|0;h=f;j=e-(k[a+108>>2]|0)+-1|0;if((h-g|0)>(j|0)){k[a+100>>2]=g+j;m=f}else{n=h;o=f;d=9}}else{f=k[b>>2]|0;n=f;o=f;d=9}if((d|0)==9){k[a+100>>2]=n;m=o}o=k[a+4>>2]|0;if(m){n=a+108|0;k[n>>2]=m+1-o+(k[n>>2]|0)}n=o+-1|0;if((l[n>>0]|0|0)==(c|0)){p=c;return p|0}i[n>>0]=c;p=c;return p|0}k[a+100>>2]=0;p=-1;return p|0}function Vp(a){a=a|0;var b=0,c=0;if(a>>>0<=4294963200){b=a;return b|0}c=Np()|0;k[c>>2]=0-a;b=-1;return b|0}function Wp(a,b){a=+a;b=+b;var c=0,d=0,e=0;p[t>>3]=a;c=k[t>>2]|0;d=k[t+4>>2]|0;p[t>>3]=b;e=k[t+4>>2]&-2147483648|d&2147483647;k[t>>2]=c;k[t+4>>2]=e;return +(+p[t>>3])}function Xp(a,b){a=+a;b=+b;return +(+Wp(a,b))}function Yp(a,b){a=+a;b=+b;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,q=0,r=0,s=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.0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0.0;p[t>>3]=a;c=k[t>>2]|0;d=k[t+4>>2]|0;p[t>>3]=b;e=k[t>>2]|0;f=k[t+4>>2]|0;g=ur(c|0,d|0,52)|0;h=g&2047;g=ur(e|0,f|0,52)|0;i=g&2047;g=d&-2147483648;j=rr(e|0,f|0,1)|0;l=L;if(!((j|0)==0&(l|0)==0)?(m=f&2147483647,!(m>>>0>2146435072|(m|0)==2146435072&e>>>0>0|(h|0)==2047)):0){m=rr(c|0,d|0,1)|0;n=L;if(!(n>>>0>l>>>0|(n|0)==(l|0)&m>>>0>j>>>0))return +((m|0)==(j|0)&(n|0)==(l|0)?a*0.0:a);if(!h){l=rr(c|0,d|0,12)|0;n=L;if((n|0)>-1|(n|0)==-1&l>>>0>4294967295){j=l;l=n;n=0;while(1){m=n+-1|0;j=rr(j|0,l|0,1)|0;l=L;if(!((l|0)>-1|(l|0)==-1&j>>>0>4294967295)){o=m;break}else n=m}}else o=0;n=rr(c|0,d|0,1-o|0)|0;q=n;r=L;s=o}else{q=c;r=d&1048575|1048576;s=h}if(!i){h=rr(e|0,f|0,12)|0;d=L;if((d|0)>-1|(d|0)==-1&h>>>0>4294967295){c=h;h=d;d=0;while(1){o=d+-1|0;c=rr(c|0,h|0,1)|0;h=L;if(!((h|0)>-1|(h|0)==-1&c>>>0>4294967295)){u=o;break}else d=o}}else u=0;d=rr(e|0,f|0,1-u|0)|0;v=d;w=L;x=u}else{v=e;w=f&1048575|1048576;x=i}i=pr(q|0,r|0,v|0,w|0)|0;f=L;e=(f|0)>-1|(f|0)==-1&i>>>0>4294967295;a:do if((s|0)>(x|0)){u=e;d=i;c=f;h=q;o=r;n=s;while(1){if(u)if((h|0)==(v|0)&(o|0)==(w|0))break;else{y=d;z=c}else{y=h;z=o}j=rr(y|0,z|0,1)|0;l=L;m=n+-1|0;A=pr(j|0,l|0,v|0,w|0)|0;B=L;C=(B|0)>-1|(B|0)==-1&A>>>0>4294967295;if((m|0)>(x|0)){u=C;d=A;c=B;h=j;o=l;n=m}else{D=C;E=j;F=l;G=A;H=B;I=m;break a}}J=a*0.0;return +J}else{D=e;E=q;F=r;G=i;H=f;I=s}while(0);if(D)if((E|0)==(v|0)&(F|0)==(w|0)){J=a*0.0;return +J}else{K=H;M=G}else{K=F;M=E}if(K>>>0<1048576|(K|0)==1048576&M>>>0<0){E=M;F=K;G=I;while(1){H=rr(E|0,F|0,1)|0;w=L;v=G+-1|0;if(w>>>0<1048576|(w|0)==1048576&H>>>0<0){E=H;F=w;G=v}else{N=H;O=w;P=v;break}}}else{N=M;O=K;P=I}if((P|0)>0){I=sr(N|0,O|0,0,-1048576)|0;K=L;M=rr(P|0,0,52)|0;Q=K|L;R=I|M}else{M=ur(N|0,O|0,1-P|0)|0;Q=L;R=M}k[t>>2]=R;k[t+4>>2]=Q|g;J=+p[t>>3];return +J}S=a*b;J=S/S;return +J}function Zp(a,b){a=+a;b=+b;return +(+Yp(a,b))}function _p(a,b){a=+a;b=b|0;var c=0,d=0,e=0,f=0,g=0.0,h=0.0,i=0,j=0.0;p[t>>3]=a;c=k[t>>2]|0;d=k[t+4>>2]|0;e=ur(c|0,d|0,52)|0;f=e&2047;switch(f|0){case 0:{if(a!=0.0){g=+_p(a*18446744073709551616.0,b);h=g;i=(k[b>>2]|0)+-64|0}else{h=a;i=0}k[b>>2]=i;j=h;return +j}case 2047:{j=a;return +j}default:{k[b>>2]=f+-1022;k[t>>2]=c;k[t+4>>2]=d&-2146435073|1071644672;j=+p[t>>3];return +j}}return +(0.0)}function $p(a,b){a=+a;b=b|0;return +(+_p(a,b))}function aq(a,b){a=+a;b=b|0;var c=0.0,d=0,e=0,f=0,g=0.0;if((b|0)>1023){c=a*8988465674311579538646525.0e283;d=b+-1023|0;if((d|0)>1023){e=b+-2046|0;f=(e|0)>1023?1023:e;g=c*8988465674311579538646525.0e283}else{f=d;g=c}}else if((b|0)<-1022){c=a*2.2250738585072014e-308;d=b+1022|0;if((d|0)<-1022){e=b+2044|0;f=(e|0)<-1022?-1022:e;g=c*2.2250738585072014e-308}else{f=d;g=c}}else{f=b;g=a}b=rr(f+1023|0,0,52)|0;f=L;k[t>>2]=b;k[t+4>>2]=f;return +(g*+p[t>>3])}function bq(a,b){a=+a;b=b|0;return +(+aq(a,b))}function cq(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=r;r=r+32|0;h=g;if(!((f&4095|0)==0&(((f|0)<0)<<31>>31&-4096|0)==0)){i=Np()|0;k[i>>2]=22;j=-1;r=g;return j|0}if(b>>>0>2147483646){i=Np()|0;k[i>>2]=12;j=-1;r=g;return j|0}i=(d&16|0)!=0;if(i)cr(-1);k[h>>2]=a;k[h+4>>2]=b;k[h+8>>2]=c;k[h+12>>2]=d;k[h+16>>2]=e;k[h+20>>2]=f>>12;f=Vp(Pa(192,h|0)|0)|0;if(!i){j=f;r=g;return j|0}dr();j=f;r=g;return j|0}function dq(a,b){a=a|0;b=b|0;var c=0,d=0;c=r;r=r+16|0;d=c;cr(-1);k[d>>2]=a;k[d+4>>2]=b;b=Vp(Ma(91,d|0)|0)|0;dr();r=c;return b|0}function eq(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,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=r;r=r+16|0;f=e;g=(d|0)==0?122884:d;d=k[g>>2]|0;a:do if(!b){if(!d){h=0;r=e;return h|0}}else{j=(a|0)==0?f:a;if(!c){h=-2;r=e;return h|0}do if(!d){l=i[b>>0]|0;m=l&255;if(l<<24>>24<=-1){n=m+-194|0;if(n>>>0>50)break a;o=k[122636+(n<<2)>>2]|0;n=c+-1|0;if(!n){p=o;break}else{q=n;s=o;t=b+1|0;u=9;break}}else{k[j>>2]=m;h=l<<24>>24!=0&1;r=e;return h|0}}else{q=c;s=d;t=b;u=9}while(0);b:do if((u|0)==9){l=i[t>>0]|0;m=(l&255)>>>3;if((m+-16|m+(s>>26))>>>0>7)break a;else{v=q;w=l;x=s;y=t}while(1){y=y+1|0;x=(w&255)+-128|x<<6;v=v+-1|0;if((x|0)>=0){z=x;A=v;break}if(!v){p=x;break b}w=i[y>>0]|0;if((w&-64)<<24>>24!=-128)break a}k[g>>2]=0;k[j>>2]=z;h=c-A|0;r=e;return h|0}while(0);k[g>>2]=p;h=-2;r=e;return h|0}while(0);k[g>>2]=0;g=Np()|0;k[g>>2]=84;h=-1;r=e;return h|0}function fq(a){a=a|0;var b=0;if(!a)b=1;else b=(k[a>>2]|0)==0;return b&1|0}function gq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!a){d=1;return d|0}if(b>>>0<128){i[a>>0]=b;d=1;return d|0}if(b>>>0<2048){i[a>>0]=b>>>6|192;i[a+1>>0]=b&63|128;d=2;return d|0}if(b>>>0<55296|(b&-8192|0)==57344){i[a>>0]=b>>>12|224;i[a+1>>0]=b>>>6&63|128;i[a+2>>0]=b&63|128;d=3;return d|0}if((b+-65536|0)>>>0<1048576){i[a>>0]=b>>>18|240;i[a+1>>0]=b>>>12&63|128;i[a+2>>0]=b>>>6&63|128;i[a+3>>0]=b&63|128;d=4;return d|0}else{b=Np()|0;k[b>>2]=84;d=-1;return d|0}return 0}function hq(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=gq(a,b,0)|0;return c|0}function iq(){var a=0,b=0,c=0;a=72;b=Dr(k[a>>2]|0,k[a+4>>2]|0,1284865837,1481765933)|0;a=sr(b|0,L|0,1,0)|0;b=L;c=72;k[c>>2]=a;k[c+4>>2]=b;c=ur(a|0,b|0,33)|0;return c|0}function jq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=r;r=r+64|0;d=c+16|0;e=c+8|0;f=c;g=c+24|0;k[f>>2]=a;k[f+4>>2]=b;h=Qa(197,f|0)|0;if((h|0)==-9?(k[e>>2]=a,k[e+4>>2]=1,(Ua(221,e|0)|0)>=0):0){Sp(g,a);k[d>>2]=g;k[d+4>>2]=b;i=Vp(Ta(195,d|0)|0)|0;r=c;return i|0}i=Vp(h)|0;r=c;return i|0}function kq(a){a=a|0;return 0}function lq(a){a=a|0;return}function mq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;c=r;r=r+16|0;d=c;e=b&255;i[d>>0]=e;f=a+16|0;g=k[f>>2]|0;do if(!g)if(!(tq(a)|0)){h=k[f>>2]|0;break}else{j=-1;r=c;return j|0}else h=g;while(0);g=a+20|0;f=k[g>>2]|0;if(f>>>0<h>>>0?(h=b&255,(h|0)!=(i[a+75>>0]|0)):0){k[g>>2]=f+1;i[f>>0]=e;j=h;r=c;return j|0}if((nb[k[a+36>>2]&63](a,d,1)|0)!=1){j=-1;r=c;return j|0}j=l[d>>0]|0;r=c;return j|0}function nq(a){a=a|0;var b=0,c=0;b=r;r=r+16|0;c=b;k[c>>2]=k[a+60>>2];a=Vp(Ga(6,c|0)|0)|0;r=b;return a|0}function oq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=r;r=r+32|0;e=d;f=d+20|0;k[e>>2]=k[a+60>>2];k[e+4>>2]=0;k[e+8>>2]=b;k[e+12>>2]=f;k[e+16>>2]=c;if((Vp(ib(140,e|0)|0)|0)<0){k[f>>2]=-1;g=-1;r=d;return g|0}else{g=k[f>>2]|0;r=d;return g|0}return 0}function pq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;d=r;r=r+48|0;e=d+16|0;f=d;g=d+32|0;h=a+28|0;i=k[h>>2]|0;k[g>>2]=i;j=a+20|0;l=(k[j>>2]|0)-i|0;k[g+4>>2]=l;k[g+8>>2]=b;k[g+12>>2]=c;b=a+60|0;i=a+44|0;m=g;g=2;n=l+c|0;while(1){if(!(k[30648]|0)){k[e>>2]=k[b>>2];k[e+4>>2]=m;k[e+8>>2]=g;o=Vp(kb(146,e|0)|0)|0}else{Fa(71,a|0);k[f>>2]=k[b>>2];k[f+4>>2]=m;k[f+8>>2]=g;l=Vp(kb(146,f|0)|0)|0;Aa(0);o=l}if((n|0)==(o|0)){p=6;break}if((o|0)<0){q=m;s=g;break}l=n-o|0;t=k[m+4>>2]|0;if(o>>>0<=t>>>0)if((g|0)==2){k[h>>2]=(k[h>>2]|0)+o;u=t;v=o;w=m;x=2}else{u=t;v=o;w=m;x=g}else{y=k[i>>2]|0;k[h>>2]=y;k[j>>2]=y;u=k[m+12>>2]|0;v=o-t|0;w=m+8|0;x=g+-1|0}k[w>>2]=(k[w>>2]|0)+v;k[w+4>>2]=u-v;m=w;g=x;n=l}if((p|0)==6){p=k[i>>2]|0;k[a+16>>2]=p+(k[a+48>>2]|0);i=p;k[h>>2]=i;k[j>>2]=i;z=c;r=d;return z|0}k[a+16>>2]=0;k[h>>2]=0;k[j>>2]=0;k[a>>2]=k[a>>2]|32;if((s|0)==2){z=0;r=d;return z|0}z=c-(k[q+4>>2]|0)|0;r=d;return z|0}function qq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+80|0;e=d;k[a+36>>2]=2;if((k[a>>2]&64|0)==0?(k[e>>2]=k[a+60>>2],k[e+4>>2]=21505,k[e+8>>2]=d+12,(Ea(54,e|0)|0)!=0):0)i[a+75>>0]=-1;e=pq(a,b,c)|0;r=d;return e|0}function rq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=a+84|0;e=k[d>>2]|0;f=c+256|0;g=Kq(e,0,f)|0;h=(g|0)==0?f:g-e|0;g=h>>>0<c>>>0?h:c;wr(b|0,e|0,g|0)|0;k[a+4>>2]=e+g;b=e+h|0;k[a+8>>2]=b;k[d>>2]=b;return g|0}function sq(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;c=a+20|0;b=a+44|0;if((k[c>>2]|0)>>>0>(k[b>>2]|0)>>>0)nb[k[a+36>>2]&63](a,0,0)|0;k[a+16>>2]=0;k[a+28>>2]=0;k[c>>2]=0;c=k[a>>2]|0;if(!(c&20)){d=k[b>>2]|0;k[a+8>>2]=d;k[a+4>>2]=d;e=0;return e|0}if(!(c&4)){e=-1;return e|0}k[a>>2]=c|32;e=-1;return e|0}function tq(a){a=a|0;var b=0,c=0,d=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;c=k[a>>2]|0;if(!(c&8)){k[a+8>>2]=0;k[a+4>>2]=0;b=k[a+44>>2]|0;k[a+28>>2]=b;k[a+20>>2]=b;k[a+16>>2]=b+(k[a+48>>2]|0);d=0;return d|0}else{k[a>>2]=c|32;d=-1;return d|0}return 0}function uq(a){a=a|0;var b=0,c=0,d=0;b=r;r=r+16|0;c=b;if((k[a+8>>2]|0)==0?(sq(a)|0)!=0:0)d=-1;else if((nb[k[a+32>>2]&63](a,c,1)|0)==1)d=l[c>>0]|0;else d=-1;r=b;return d|0}function vq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;if(a){if((k[a+76>>2]|0)<=-1){b=Zq(a)|0;return b|0}c=(kq(a)|0)==0;d=Zq(a)|0;if(c){b=d;return b|0}lq(a);b=d;return b|0}if(!(k[30711]|0))e=0;else e=vq(k[30711]|0)|0;cb(122620);d=k[30654]|0;if(!d)f=e;else{a=d;d=e;while(1){if((k[a+76>>2]|0)>-1)g=kq(a)|0;else g=0;if((k[a+20>>2]|0)>>>0>(k[a+28>>2]|0)>>>0)h=Zq(a)|0|d;else h=d;if(g)lq(a);a=k[a+56>>2]|0;if(!a){f=h;break}else d=h}}_a(122620);b=f;return b|0}function wq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=Dq(a,b,e)|0;r=d;return c|0}function xq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;if((k[b+76>>2]|0)>=0?(kq(b)|0)!=0:0){if((i[b+75>>0]|0)!=(a|0)?(c=b+20|0,d=k[c>>2]|0,d>>>0<(k[b+16>>2]|0)>>>0):0){k[c>>2]=d+1;i[d>>0]=a;e=a&255}else e=mq(b,a)|0;lq(b);f=e;return f|0}if((i[b+75>>0]|0)!=(a|0)?(e=b+20|0,d=k[e>>2]|0,d>>>0<(k[b+16>>2]|0)>>>0):0){k[e>>2]=d+1;i[d>>0]=a;f=a&255;return f|0}f=mq(b,a)|0;return f|0}function yq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;d=c+16|0;e=k[d>>2]|0;do if(!e)if(!(tq(c)|0)){f=k[d>>2]|0;break}else{g=0;return g|0}else f=e;while(0);e=c+20|0;d=k[e>>2]|0;if((f-d|0)>>>0<b>>>0){g=nb[k[c+36>>2]&63](c,a,b)|0;return g|0}a:do if((i[c+75>>0]|0)>-1){f=b;while(1){if(!f){h=b;j=a;l=d;m=0;break a}n=f+-1|0;if((i[a+n>>0]|0)==10){o=f;break}else f=n}if((nb[k[c+36>>2]&63](c,a,o)|0)>>>0<o>>>0){g=o;return g|0}else{h=b-o|0;j=a+o|0;l=k[e>>2]|0;m=o;break}}else{h=b;j=a;l=d;m=0}while(0);wr(l|0,j|0,h|0)|0;k[e>>2]=(k[e>>2]|0)+h;g=m+h|0;return g|0}function zq(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;e=ha(c,b)|0;if((k[d+76>>2]|0)>-1){f=(kq(d)|0)==0;g=yq(a,e,d)|0;if(f)h=g;else{lq(d);h=g}}else h=yq(a,e,d)|0;if((h|0)==(e|0)){i=c;return i|0}i=(h>>>0)/(b>>>0)|0;return i|0}function Aq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e;k[f>>2]=d;d=Fq(a,b,c,f)|0;r=e;return d|0}function Bq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=Gq(a,b,e)|0;r=d;return c|0}function Cq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=Hq(a,b,e)|0;r=d;return c|0}function Dq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;d=r;r=r+224|0;e=d+80|0;f=d+96|0;g=d;h=d+136|0;j=f;l=j+40|0;do{k[j>>2]=0;j=j+4|0}while((j|0)<(l|0));k[e>>2]=k[c>>2];if((_q(0,b,e,g,f)|0)<0){m=-1;r=d;return m|0}if((k[a+76>>2]|0)>-1)n=kq(a)|0;else n=0;c=k[a>>2]|0;j=c&32;if((i[a+74>>0]|0)<1)k[a>>2]=c&-33;c=a+48|0;if(!(k[c>>2]|0)){l=a+44|0;o=k[l>>2]|0;k[l>>2]=h;p=a+28|0;k[p>>2]=h;q=a+20|0;k[q>>2]=h;k[c>>2]=80;s=a+16|0;k[s>>2]=h+80;h=_q(a,b,e,g,f)|0;if(!o)t=h;else{nb[k[a+36>>2]&63](a,0,0)|0;u=(k[q>>2]|0)==0?-1:h;k[l>>2]=o;k[c>>2]=0;k[s>>2]=0;k[p>>2]=0;k[q>>2]=0;t=u}}else t=_q(a,b,e,g,f)|0;f=k[a>>2]|0;k[a>>2]=f|j;if(n)lq(a);m=(f&32|0)==0?t:-1;r=d;return m|0}function Eq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,m=0,n=0,q=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,M=0,N=0,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.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;d=r;r=r+304|0;e=d+16|0;f=d+8|0;g=d+33|0;h=d;m=d+32|0;if((k[a+76>>2]|0)>-1)n=kq(a)|0;else n=0;q=i[b>>0]|0;a:do if(q<<24>>24){s=a+4|0;t=a+100|0;u=a+108|0;v=a+8|0;w=g+10|0;x=g+33|0;y=f+4|0;z=g+46|0;A=g+94|0;B=q;C=0;D=b;E=0;F=0;G=0;b:while(1){c:do if(!(Mp(B&255)|0)){H=(i[D>>0]|0)==37;d:do if(H){I=D+1|0;J=i[I>>0]|0;e:do switch(J<<24>>24){case 37:{break d;break}case 42:{K=0;M=D+2|0;break}default:{N=(J&255)+-48|0;if(N>>>0<10?(i[D+2>>0]|0)==36:0){k[e>>2]=k[c>>2];O=N;while(1){N=(k[e>>2]|0)+(4-1)&~(4-1);P=k[N>>2]|0;k[e>>2]=N+4;if(O>>>0>1)O=O+-1|0;else{Q=P;break}}K=Q;M=D+3|0;break e}O=(k[c>>2]|0)+(4-1)&~(4-1);P=k[O>>2]|0;k[c>>2]=O+4;K=P;M=I}}while(0);I=i[M>>0]|0;J=I&255;if((J+-48|0)>>>0<10){P=J;J=M;O=0;while(1){N=(O*10|0)+-48+P|0;R=J+1|0;S=i[R>>0]|0;P=S&255;if((P+-48|0)>>>0>=10){T=S;U=R;V=N;break}else{J=R;O=N}}}else{T=I;U=M;V=0}if(T<<24>>24==109){O=U+1|0;W=i[O>>0]|0;X=(K|0)!=0&1;Y=O;Z=0;_=0}else{W=T;X=0;Y=U;Z=F;_=G}O=Y+1|0;switch(W&255|0){case 104:{J=(i[O>>0]|0)==104;$=J?Y+2|0:O;aa=J?-2:-1;break}case 108:{J=(i[O>>0]|0)==108;$=J?Y+2|0:O;aa=J?3:1;break}case 106:{$=O;aa=3;break}case 116:case 122:{$=O;aa=1;break}case 76:{$=O;aa=2;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{$=Y;aa=0;break}default:{ba=X;ca=C;da=Z;ea=_;fa=152;break b}}O=l[$>>0]|0;J=(O&47|0)==3;P=J?O|32:O;O=J?1:aa;switch(P|0){case 99:{ga=E;ha=(V|0)<1?1:V;break}case 91:{ga=E;ha=V;break}case 110:{if(!K){ia=C;ja=$;ka=E;la=Z;ma=_;break c}switch(O|0){case -2:{i[K>>0]=E;ia=C;ja=$;ka=E;la=Z;ma=_;break c;break}case -1:{j[K>>1]=E;ia=C;ja=$;ka=E;la=Z;ma=_;break c;break}case 0:{k[K>>2]=E;ia=C;ja=$;ka=E;la=Z;ma=_;break c;break}case 1:{k[K>>2]=E;ia=C;ja=$;ka=E;la=Z;ma=_;break c;break}case 3:{J=K;k[J>>2]=E;k[J+4>>2]=((E|0)<0)<<31>>31;ia=C;ja=$;ka=E;la=Z;ma=_;break c;break}default:{ia=C;ja=$;ka=E;la=Z;ma=_;break c}}break}default:{Tp(a,0);do{J=k[s>>2]|0;if(J>>>0<(k[t>>2]|0)>>>0){k[s>>2]=J+1;na=l[J>>0]|0}else na=Up(a)|0}while((Mp(na)|0)!=0);I=k[s>>2]|0;if(!(k[t>>2]|0))oa=I;else{J=I+-1|0;k[s>>2]=J;oa=J}ga=(k[u>>2]|0)+E+oa-(k[v>>2]|0)|0;ha=V}}Tp(a,ha);J=k[s>>2]|0;I=k[t>>2]|0;if(J>>>0<I>>>0){k[s>>2]=J+1;pa=I}else{if((Up(a)|0)<0){ba=X;ca=C;da=Z;ea=_;fa=152;break b}pa=k[t>>2]|0}if(pa)k[s>>2]=(k[s>>2]|0)+-1;f:do switch(P|0){case 91:case 99:case 115:{I=(P|0)==99;g:do if((P&239|0)==99){qr(g|0,-1,257)|0;i[g>>0]=0;if((P|0)==115){i[x>>0]=0;i[w>>0]=0;i[w+1>>0]=0;i[w+2>>0]=0;i[w+3>>0]=0;i[w+4>>0]=0;qa=$}else qa=$}else{J=$+1|0;N=(i[J>>0]|0)==94;R=N&1;S=N?J:$;ra=N?$+2|0:J;qr(g|0,N&1|0,257)|0;i[g>>0]=0;switch(i[ra>>0]|0){case 45:{N=(R^1)&255;i[z>>0]=N;sa=N;ta=S+2|0;break}case 93:{N=(R^1)&255;i[A>>0]=N;sa=N;ta=S+2|0;break}default:{sa=(R^1)&255;ta=ra}}ra=ta;while(1){R=i[ra>>0]|0;h:do switch(R<<24>>24){case 0:{ba=X;ca=C;da=Z;ea=_;fa=152;break b;break}case 93:{qa=ra;break g;break}case 45:{S=ra+1|0;N=i[S>>0]|0;switch(N<<24>>24){case 93:case 0:{ua=45;va=ra;break h;break}default:{}}J=i[ra+-1>>0]|0;if((J&255)<(N&255)){wa=J&255;do{wa=wa+1|0;i[g+wa>>0]=sa;J=i[S>>0]|0}while((wa|0)<(J&255|0));ua=J;va=S}else{ua=N;va=S}break}default:{ua=R;va=ra}}while(0);i[g+((ua&255)+1)>>0]=sa;ra=va+1|0}}while(0);ra=I?ha+1|0:31;R=(O|0)==1;wa=(X|0)!=0;i:do if(R){if(wa){J=jr(ra<<2)|0;if(!J){ba=X;ca=C;da=0;ea=J;fa=152;break b}else xa=J}else xa=K;k[f>>2]=0;k[y>>2]=0;J=0;ya=ra;za=xa;j:while(1){Aa=(za|0)==0;Ba=J;while(1){k:while(1){Ca=k[s>>2]|0;if(Ca>>>0<(k[t>>2]|0)>>>0){k[s>>2]=Ca+1;Da=l[Ca>>0]|0}else Da=Up(a)|0;if(!(i[g+(Da+1)>>0]|0)){Ea=Ba;Fa=za;break j}i[m>>0]=Da;switch(eq(h,m,1,f)|0){case -1:{ba=X;ca=C;da=0;ea=za;fa=152;break b;break}case -2:break;default:break k}}if(Aa)Ga=Ba;else{k[za+(Ba<<2)>>2]=k[h>>2];Ga=Ba+1|0}if(wa&(Ga|0)==(ya|0))break;else Ba=Ga}Ba=ya<<1|1;Aa=lr(za,Ba<<2)|0;if(!Aa){ba=X;ca=C;da=0;ea=za;fa=152;break b}S=ya;ya=Ba;za=Aa;J=S}if(!(fq(f)|0)){ba=X;ca=C;da=0;ea=Fa;fa=152;break b}else{Ha=Ea;Ia=0;Ja=Fa}}else{if(wa){J=jr(ra)|0;if(!J){ba=X;ca=C;da=0;ea=0;fa=152;break b}else{Ka=0;La=ra;Ma=J}while(1){J=Ka;do{za=k[s>>2]|0;if(za>>>0<(k[t>>2]|0)>>>0){k[s>>2]=za+1;Na=l[za>>0]|0}else Na=Up(a)|0;if(!(i[g+(Na+1)>>0]|0)){Ha=J;Ia=Ma;Ja=0;break i}i[Ma+J>>0]=Na;J=J+1|0}while((J|0)!=(La|0));J=La<<1|1;za=lr(Ma,J)|0;if(!za){ba=X;ca=C;da=Ma;ea=0;fa=152;break b}else{ya=La;La=J;Ma=za;Ka=ya}}}if(!K){ya=pa;while(1){za=k[s>>2]|0;if(za>>>0<ya>>>0){k[s>>2]=za+1;Oa=l[za>>0]|0}else Oa=Up(a)|0;if(!(i[g+(Oa+1)>>0]|0)){Ha=0;Ia=0;Ja=0;break i}ya=k[t>>2]|0}}else{ya=pa;za=0;while(1){J=k[s>>2]|0;if(J>>>0<ya>>>0){k[s>>2]=J+1;Pa=l[J>>0]|0}else Pa=Up(a)|0;if(!(i[g+(Pa+1)>>0]|0)){Ha=za;Ia=K;Ja=0;break i}i[K+za>>0]=Pa;ya=k[t>>2]|0;za=za+1|0}}}while(0);ra=k[s>>2]|0;if(!(k[t>>2]|0))Qa=ra;else{za=ra+-1|0;k[s>>2]=za;Qa=za}za=Qa-(k[v>>2]|0)+(k[u>>2]|0)|0;if(!za){Ra=X;Sa=C;Ta=Ia;Ua=Ja;break b}if(!((za|0)==(ha|0)|I^1)){Ra=X;Sa=C;Ta=Ia;Ua=Ja;break b}do if(wa)if(R){k[K>>2]=Ja;break}else{k[K>>2]=Ia;break}while(0);if(I){Va=qa;Wa=Ia;Xa=Ja}else{if(Ja)k[Ja+(Ha<<2)>>2]=0;if(!Ia){Va=qa;Wa=0;Xa=Ja;break f}i[Ia+Ha>>0]=0;Va=qa;Wa=Ia;Xa=Ja}break}case 120:case 88:case 112:{Ya=16;fa=134;break}case 111:{Ya=8;fa=134;break}case 117:case 100:{Ya=10;fa=134;break}case 105:{Ya=0;fa=134;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{Za=+Qp(a,O,0);if((k[u>>2]|0)==((k[v>>2]|0)-(k[s>>2]|0)|0)){Ra=X;Sa=C;Ta=Z;Ua=_;break b}if(!K){Va=$;Wa=Z;Xa=_}else switch(O|0){case 0:{o[K>>2]=Za;Va=$;Wa=Z;Xa=_;break f;break}case 1:{p[K>>3]=Za;Va=$;Wa=Z;Xa=_;break f;break}case 2:{p[K>>3]=Za;Va=$;Wa=Z;Xa=_;break f;break}default:{Va=$;Wa=Z;Xa=_;break f}}break}default:{Va=$;Wa=Z;Xa=_}}while(0);l:do if((fa|0)==134){fa=0;R=Rp(a,Ya,0,-1,-1)|0;if((k[u>>2]|0)==((k[v>>2]|0)-(k[s>>2]|0)|0)){Ra=X;Sa=C;Ta=Z;Ua=_;break b}if((K|0)!=0&(P|0)==112){k[K>>2]=R;Va=$;Wa=Z;Xa=_;break}if(!K){Va=$;Wa=Z;Xa=_}else switch(O|0){case -2:{i[K>>0]=R;Va=$;Wa=Z;Xa=_;break l;break}case -1:{j[K>>1]=R;Va=$;Wa=Z;Xa=_;break l;break}case 0:{k[K>>2]=R;Va=$;Wa=Z;Xa=_;break l;break}case 1:{k[K>>2]=R;Va=$;Wa=Z;Xa=_;break l;break}case 3:{wa=K;k[wa>>2]=R;k[wa+4>>2]=L;Va=$;Wa=Z;Xa=_;break l;break}default:{Va=$;Wa=Z;Xa=_;break l}}}while(0);ia=((K|0)!=0&1)+C|0;ja=Va;ka=(k[u>>2]|0)+ga+(k[s>>2]|0)-(k[v>>2]|0)|0;la=Wa;ma=Xa;break c}while(0);O=D+(H&1)|0;Tp(a,0);P=k[s>>2]|0;if(P>>>0<(k[t>>2]|0)>>>0){k[s>>2]=P+1;_a=l[P>>0]|0}else _a=Up(a)|0;if((_a|0)!=(l[O>>0]|0)){$a=_a;ab=C;bb=F;cb=G;fa=21;break b}ia=C;ja=O;ka=E+1|0;la=F;ma=G}else{O=D;while(1){P=O+1|0;if(!(Mp(l[P>>0]|0)|0)){db=O;break}else O=P}Tp(a,0);do{O=k[s>>2]|0;if(O>>>0<(k[t>>2]|0)>>>0){k[s>>2]=O+1;eb=l[O>>0]|0}else eb=Up(a)|0}while((Mp(eb)|0)!=0);O=k[s>>2]|0;if(!(k[t>>2]|0))fb=O;else{H=O+-1|0;k[s>>2]=H;fb=H}ia=C;ja=db;ka=(k[u>>2]|0)+E+fb-(k[v>>2]|0)|0;la=F;ma=G}while(0);D=ja+1|0;B=i[D>>0]|0;if(!(B<<24>>24)){gb=ia;break a}else{C=ia;E=ka;F=la;G=ma}}if((fa|0)==21){if(k[t>>2]|0)k[s>>2]=(k[s>>2]|0)+-1;if((ab|0)!=0|($a|0)>-1){gb=ab;break}else{hb=0;ib=bb;jb=cb;fa=153}}else if((fa|0)==152)if(!ca){hb=ba;ib=da;jb=ea;fa=153}else{Ra=ba;Sa=ca;Ta=da;Ua=ea}if((fa|0)==153){Ra=hb;Sa=-1;Ta=ib;Ua=jb}if(!Ra)gb=Sa;else{kr(Ta);kr(Ua);gb=Sa}}else gb=0;while(0);if(!n){r=d;return gb|0}lq(a);r=d;return gb|0}function Fq(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,j=0,l=0,m=0,n=0,o=0;e=r;r=r+128|0;f=e+112|0;g=e;h=g;j=122888;l=h+112|0;do{k[h>>2]=k[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(l|0));if((b+-1|0)>>>0>2147483646)if(!b){m=f;n=1}else{f=Np()|0;k[f>>2]=75;o=-1;r=e;return o|0}else{m=a;n=b}b=-2-m|0;a=n>>>0>b>>>0?b:n;k[g+48>>2]=a;n=g+20|0;k[n>>2]=m;k[g+44>>2]=m;b=m+a|0;m=g+16|0;k[m>>2]=b;k[g+28>>2]=b;b=Dq(g,c,d)|0;if(!a){o=b;r=e;return o|0}a=k[n>>2]|0;i[a+(((a|0)==(k[m>>2]|0))<<31>>31)>>0]=0;o=b;r=e;return o|0}function Gq(a,b,c){a=a|0;b=b|0;c=c|0;return Fq(a,2147483647,b,c)|0}function Hq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=r;r=r+112|0;e=d;f=e;g=f+112|0;do{k[f>>2]=0;f=f+4|0}while((f|0)<(g|0));k[e+32>>2]=32;k[e+44>>2]=a;k[e+76>>2]=-1;k[e+84>>2]=a;a=Eq(e,b,c)|0;r=d;return a|0}function Iq(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;if(!c){f=0;return f|0}else{g=b;h=c}while(1){c=h>>>1;b=g+(ha(c,d)|0)|0;i=yb[e&127](a,b)|0;if(!i){f=b;j=5;break}if((h|0)==1){f=0;j=5;break}k=(i|0)<0;h=k?c:h-c|0;if(!h){f=0;j=5;break}else g=k?g:b}if((j|0)==5)return f|0;return 0}function Jq(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,l=0,m=0,n=0,o=0,p=0,q=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;e=r;r=r+208|0;f=e+8|0;g=e;h=ha(c,b)|0;b=g;k[b>>2]=1;k[b+4>>2]=0;if(!h){r=e;return}b=h-c|0;k[f+4>>2]=c;k[f>>2]=c;i=c;j=c;l=2;while(1){m=j+c+i|0;k[f+(l<<2)>>2]=m;if(m>>>0<h>>>0){n=i;i=m;l=l+1|0;j=n}else break}j=0-c|0;l=a+b|0;i=g+4|0;if((b|0)>0){b=l;h=1;n=a;m=1;while(1){do if((h&3|0)==3){ar(n,c,d,m,f);o=k[i>>2]|0;p=o<<30|(k[g>>2]|0)>>>2;k[g>>2]=p;k[i>>2]=o>>>2;q=p;s=m+2|0}else{p=m+-1|0;if((k[f+(p<<2)>>2]|0)>>>0<(b-n|0)>>>0)ar(n,c,d,m,f);else br(n,c,d,g,m,0,f);if((m|0)==1){o=k[g>>2]|0;k[i>>2]=o>>>31|k[i>>2]<<1;t=o<<1;k[g>>2]=t;q=t;s=0;break}if(p>>>0>31){t=k[g>>2]|0;k[i>>2]=t;k[g>>2]=0;u=m+-33|0;v=t;w=0}else{u=p;v=k[i>>2]|0;w=k[g>>2]|0}k[i>>2]=w>>>(32-u|0)|v<<u;p=w<<u;k[g>>2]=p;q=p;s=1}while(0);h=q|1;k[g>>2]=h;p=n+c|0;if(p>>>0>=l>>>0){x=p;y=s;break}else{n=p;m=s}}}else{x=a;y=1}br(x,c,d,g,y,0,f);a=g+4|0;s=k[g>>2]|0;if((y|0)==1&(s|0)==1&(k[a>>2]|0)==0){r=e;return}else{z=s;A=x;B=y}while(1){if((B|0)<2){y=z+-1|0;do if(y){if(!(y&1)){x=y;s=0;while(1){m=s+1|0;x=x>>>1;if(x&1){C=m;break}else s=m}if(C)D=C;else E=24}else E=24;if((E|0)==24){E=0;s=k[i>>2]|0;if(!s){F=64;E=30;break}if(!(s&1)){G=s;H=0}else{I=0;J=z;K=s;L=0;break}while(1){x=H+1|0;G=G>>>1;if(G&1){M=x;N=H;break}else H=x}if(!M){I=0;J=z;K=s;L=0;break}else D=N+33|0}if(D>>>0>31){F=D;E=30}else{I=D;J=z;K=k[i>>2]|0;L=D}}else{F=32;E=30}while(0);if((E|0)==30){E=0;y=k[i>>2]|0;k[g>>2]=y;k[i>>2]=0;I=F+-32|0;J=y;K=0;L=F}k[g>>2]=K<<32-I|J>>>I;k[i>>2]=K>>>I;O=A+j|0;P=L+B|0}else{y=z>>>30;x=y|k[i>>2]<<2;m=B+-2|0;k[g>>2]=(z<<1&2147483646|y<<31)^3;k[i>>2]=x>>>1;br(A+(0-((k[f+(m<<2)>>2]|0)+c))|0,c,d,g,B+-1|0,1,f);x=k[g>>2]|0;k[i>>2]=x>>>31|k[i>>2]<<1;k[g>>2]=x<<1|1;x=A+j|0;br(x,c,d,g,m,1,f);O=x;P=m}z=k[g>>2]|0;if((P|0)==1&(z|0)==1&(k[a>>2]|0)==0)break;else{A=O;B=P}}r=e;return}function Kq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;d=b&255;e=(c|0)!=0;a:do if(e&(a&3|0)!=0){f=b&255;g=c;h=a;while(1){if((i[h>>0]|0)==f<<24>>24){j=g;l=h;m=6;break a}n=h+1|0;o=g+-1|0;p=(o|0)!=0;if(p&(n&3|0)!=0){g=o;h=n}else{q=o;r=p;s=n;m=5;break}}}else{q=c;r=e;s=a;m=5}while(0);if((m|0)==5)if(r){j=q;l=s;m=6}else{t=0;u=s}b:do if((m|0)==6){s=b&255;if((i[l>>0]|0)==s<<24>>24){t=j;u=l}else{q=ha(d,16843009)|0;c:do if(j>>>0>3){r=j;a=l;while(1){e=k[a>>2]^q;if((e&-2139062144^-2139062144)&e+-16843009){v=r;w=a;break}e=a+4|0;c=r+-4|0;if(c>>>0>3){r=c;a=e}else{x=c;y=e;m=11;break c}}z=v;A=w}else{x=j;y=l;m=11}while(0);if((m|0)==11)if(!x){t=0;u=y;break}else{z=x;A=y}while(1){if((i[A>>0]|0)==s<<24>>24){t=z;u=A;break b}q=A+1|0;z=z+-1|0;if(!z){t=0;u=q;break}else A=q}}}while(0);return ((t|0)!=0?u:0)|0}function Lq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;if(!c){d=0;return d|0}else{e=c;f=a;g=b}while(1){b=i[f>>0]|0;a=i[g>>0]|0;if(b<<24>>24!=a<<24>>24){h=b;j=a;break}e=e+-1|0;if(!e){d=0;k=5;break}else{f=f+1|0;g=g+1|0}}if((k|0)==5)return d|0;d=(h&255)-(j&255)|0;return d|0}function Mq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;c=b;if(!((c^a)&3)){a:do if(!(c&3)){d=b;e=a}else{f=a;g=b;while(1){h=i[g>>0]|0;i[f>>0]=h;if(!(h<<24>>24)){j=f;break}h=g+1|0;l=f+1|0;if(!(h&3)){d=h;e=l;break a}else{f=l;g=h}}return j|0}while(0);c=k[d>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009)){g=c;c=e;f=d;while(1){h=f+4|0;l=c+4|0;k[c>>2]=g;g=k[h>>2]|0;if((g&-2139062144^-2139062144)&g+-16843009){m=l;n=h;break}else{c=l;f=h}}}else{m=e;n=d}o=n;p=m}else{o=b;p=a}a=i[o>>0]|0;i[p>>0]=a;if(!(a<<24>>24)){j=p;return j|0}else{q=p;r=o}while(1){r=r+1|0;o=q+1|0;p=i[r>>0]|0;i[o>>0]=p;if(!(p<<24>>24)){j=o;break}else q=o}return j|0}function Nq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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=b;if(!((d^a)&3)){e=(c|0)!=0;a:do if(e&(d&3|0)!=0){f=c;g=b;h=a;while(1){j=i[g>>0]|0;i[h>>0]=j;if(!(j<<24>>24)){l=f;m=g;n=h;break a}j=f+-1|0;o=g+1|0;p=h+1|0;q=(j|0)!=0;if(q&(o&3|0)!=0){f=j;g=o;h=p}else{r=j;s=o;t=p;u=q;v=5;break}}}else{r=c;s=b;t=a;u=e;v=5}while(0);if((v|0)==5)if(u){l=r;m=s;n=t}else{w=t;x=0;qr(w|0,0,x|0)|0;return w|0}if(!(i[m>>0]|0)){w=n;x=l;qr(w|0,0,x|0)|0;return w|0}b:do if(l>>>0>3){t=l;s=n;r=m;while(1){u=k[r>>2]|0;if((u&-2139062144^-2139062144)&u+-16843009){y=t;z=s;A=r;break b}k[s>>2]=u;u=t+-4|0;e=r+4|0;d=s+4|0;if(u>>>0>3){t=u;s=d;r=e}else{y=u;z=d;A=e;break}}}else{y=l;z=n;A=m}while(0);B=A;C=z;D=y}else{B=b;C=a;D=c}if(!D){w=C;x=0;qr(w|0,0,x|0)|0;return w|0}else{E=B;F=C;G=D}while(1){D=i[E>>0]|0;i[F>>0]=D;if(!(D<<24>>24)){w=F;x=G;v=14;break}G=G+-1|0;D=F+1|0;if(!G){w=D;x=0;v=14;break}else{E=E+1|0;F=D}}if((v|0)==14){qr(w|0,0,x|0)|0;return w|0}return 0}function Oq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=i[a>>0]|0;d=i[b>>0]|0;if(c<<24>>24==0?1:c<<24>>24!=d<<24>>24){e=c;f=d}else{d=a;a=b;do{d=d+1|0;a=a+1|0;b=i[d>>0]|0;c=i[a>>0]|0}while(!(b<<24>>24==0?1:b<<24>>24!=c<<24>>24));e=b;f=c}return (e&255)-(f&255)|0}function Pq(a,b){a=a|0;b=b|0;Mq(a,b)|0;return a|0}function Qq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;b=a;a:do if(!(b&3))c=a;else{d=a;e=b;while(1){if(!(i[d>>0]|0)){f=e;break}g=d+1|0;e=g;if(!(e&3)){c=g;break a}else d=g}h=f-b|0;return h|0}while(0);a=c;while(1){c=k[a>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009))a=a+4|0;else{j=c;l=a;break}}if(!((j&255)<<24>>24))m=l;else{j=l;while(1){l=j+1|0;if(!(i[l>>0]|0)){m=l;break}else j=l}}f=m;h=f-b|0;return h|0}function Rq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0;if(!c){d=0;return d|0}e=i[a>>0]|0;a:do if(!(e<<24>>24)){f=0;g=b}else{h=c;j=e;k=a;m=b;while(1){h=h+-1|0;n=i[m>>0]|0;if(!(j<<24>>24==n<<24>>24&((h|0)!=0&n<<24>>24!=0))){f=j;g=m;break a}k=k+1|0;n=m+1|0;j=i[k>>0]|0;if(!(j<<24>>24)){f=0;g=n;break}else m=n}}while(0);d=(f&255)-(l[g>>0]|0)|0;return d|0}function Sq(a,b,c){a=a|0;b=b|0;c=c|0;Nq(a,b,c)|0;return a|0}function Tq(a){a=a|0;var b=0,c=0;b=r;r=r+16|0;c=b;k[c>>2]=a;a=Ga(6,c|0)|0;c=Vp((a|0)==-4?-115:a)|0;r=b;return c|0}function Uq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=r;r=r+32|0;e=d;f=d+20|0;k[e>>2]=a;k[e+4>>2]=0;k[e+8>>2]=b;k[e+12>>2]=f;k[e+16>>2]=c;c=(Vp(ib(140,e|0)|0)|0)!=0;r=d;return (c?-1:k[f>>2]|0)|0}function Vq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=a;k[e+4>>2]=b;k[e+8>>2]=c;c=Vp(ab(3,e|0)|0)|0;r=d;return c|0}function Wq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=a;k[e+4>>2]=b;k[e+8>>2]=c;c=Vp(fb(4,e|0)|0)|0;r=d;return c|0}function Xq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;c=a+4|0;d=k[c>>2]|0;e=a+100|0;if(d>>>0<(k[e>>2]|0)>>>0){k[c>>2]=d+1;f=l[d>>0]|0}else f=Up(a)|0;switch(f|0){case 43:case 45:{d=(f|0)==45&1;g=k[c>>2]|0;if(g>>>0<(k[e>>2]|0)>>>0){k[c>>2]=g+1;h=l[g>>0]|0}else h=Up(a)|0;if((b|0)!=0&(h+-48|0)>>>0>9?(k[e>>2]|0)!=0:0){k[c>>2]=(k[c>>2]|0)+-1;i=h;j=d}else{i=h;j=d}break}default:{i=f;j=0}}if((i+-48|0)>>>0>9){if(!(k[e>>2]|0)){m=-2147483648;n=0;L=m;return n|0}k[c>>2]=(k[c>>2]|0)+-1;m=-2147483648;n=0;L=m;return n|0}else{o=i;p=0}while(1){i=o+-48+(p*10|0)|0;f=k[c>>2]|0;if(f>>>0<(k[e>>2]|0)>>>0){k[c>>2]=f+1;q=l[f>>0]|0}else q=Up(a)|0;if((q+-48|0)>>>0<10&(i|0)<214748364){o=q;p=i}else{r=i;s=q;break}}q=((r|0)<0)<<31>>31;if((s+-48|0)>>>0<10){p=r;o=q;i=s;while(1){f=Dr(p|0,o|0,10,0)|0;d=L;h=sr(i|0,((i|0)<0)<<31>>31|0,-48,-1)|0;b=sr(h|0,L|0,f|0,d|0)|0;d=L;f=k[c>>2]|0;if(f>>>0<(k[e>>2]|0)>>>0){k[c>>2]=f+1;t=l[f>>0]|0}else t=Up(a)|0;if((t+-48|0)>>>0<10&((d|0)<21474836|(d|0)==21474836&b>>>0<2061584302)){p=b;o=d;i=t}else{u=b;v=d;w=t;break}}}else{u=r;v=q;w=s}if((w+-48|0)>>>0<10)do{w=k[c>>2]|0;if(w>>>0<(k[e>>2]|0)>>>0){k[c>>2]=w+1;x=l[w>>0]|0}else x=Up(a)|0}while((x+-48|0)>>>0<10);if(k[e>>2]|0)k[c>>2]=(k[c>>2]|0)+-1;c=(j|0)!=0;j=pr(0,0,u|0,v|0)|0;m=c?L:v;n=c?j:u;L=m;return n|0}function Yq(a){a=a|0;if(k[a+68>>2]|0)return;lq(a);return}function Zq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;c=a+28|0;if((k[b>>2]|0)>>>0>(k[c>>2]|0)>>>0?(nb[k[a+36>>2]&63](a,0,0)|0,(k[b>>2]|0)==0):0){d=-1;return d|0}e=a+4|0;f=k[e>>2]|0;g=a+8|0;h=k[g>>2]|0;if(f>>>0<h>>>0)nb[k[a+40>>2]&63](a,f-h|0,1)|0;k[a+16>>2]=0;k[c>>2]=0;k[b>>2]=0;k[g>>2]=0;k[e>>2]=0;d=0;return d|0}function _q(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,m=0,n=0,o=0,q=0,s=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,M=0,N=0,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,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.0,bb=0.0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0.0,ib=0.0,jb=0.0,kb=0.0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0.0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=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.0,Wb=0.0,Xb=0.0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0;f=r;r=r+624|0;g=f+24|0;h=f+16|0;m=f+588|0;n=f+576|0;o=f;q=f+536|0;s=f+8|0;u=f+528|0;v=(a|0)!=0;w=q+40|0;x=w;y=q+39|0;q=s+4|0;z=n+12|0;A=n+11|0;n=m;B=z;C=B-n|0;D=-2-n|0;E=B+2|0;F=g+288|0;G=m+9|0;H=G;I=m+8|0;J=0;K=b;b=0;M=0;a:while(1){do if((J|0)>-1)if((b|0)>(2147483647-J|0)){N=Np()|0;k[N>>2]=75;O=-1;break}else{O=b+J|0;break}else O=J;while(0);N=i[K>>0]|0;if(!(N<<24>>24)){P=O;Q=M;R=245;break}else{S=N;T=K}b:while(1){switch(S<<24>>24){case 37:{U=T;V=T;R=9;break b;break}case 0:{W=T;X=T;break b;break}default:{}}N=T+1|0;S=i[N>>0]|0;T=N}c:do if((R|0)==9)while(1){R=0;if((i[U+1>>0]|0)!=37){W=U;X=V;break c}N=V+1|0;Y=U+2|0;if((i[Y>>0]|0)==37){U=Y;V=N;R=9}else{W=Y;X=N;break}}while(0);N=X-K|0;if(v?(k[a>>2]&32|0)==0:0)yq(K,N,a)|0;if((X|0)!=(K|0)){J=O;K=W;b=N;continue}Y=W+1|0;Z=i[Y>>0]|0;_=(Z<<24>>24)+-48|0;if(_>>>0<10){$=(i[W+2>>0]|0)==36;aa=$?W+3|0:Y;ba=i[aa>>0]|0;ca=$?_:-1;da=$?1:M;ea=aa}else{ba=Z;ca=-1;da=M;ea=Y}Y=ba<<24>>24;d:do if((Y&-32|0)==32){Z=Y;aa=ba;$=0;_=ea;while(1){if(!(1<<Z+-32&75913)){fa=aa;ga=$;ia=_;break d}ja=1<<(aa<<24>>24)+-32|$;ka=_+1|0;la=i[ka>>0]|0;Z=la<<24>>24;if((Z&-32|0)!=32){fa=la;ga=ja;ia=ka;break}else{aa=la;$=ja;_=ka}}}else{fa=ba;ga=0;ia=ea}while(0);do if(fa<<24>>24==42){Y=ia+1|0;_=(i[Y>>0]|0)+-48|0;if(_>>>0<10?(i[ia+2>>0]|0)==36:0){k[e+(_<<2)>>2]=10;ma=1;na=ia+3|0;oa=k[d+((i[Y>>0]|0)+-48<<3)>>2]|0}else{if(da){pa=-1;R=252;break a}if(!v){qa=ga;ra=Y;sa=0;ta=0;break}_=(k[c>>2]|0)+(4-1)&~(4-1);$=k[_>>2]|0;k[c>>2]=_+4;ma=0;na=Y;oa=$}if((oa|0)<0){qa=ga|8192;ra=na;sa=ma;ta=0-oa|0}else{qa=ga;ra=na;sa=ma;ta=oa}}else{$=(fa<<24>>24)+-48|0;if($>>>0<10){Y=ia;_=0;aa=$;while(1){$=(_*10|0)+aa|0;Z=Y+1|0;aa=(i[Z>>0]|0)+-48|0;if(aa>>>0>=10){ua=$;va=Z;break}else{Y=Z;_=$}}if((ua|0)<0){pa=-1;R=252;break a}else{qa=ga;ra=va;sa=da;ta=ua}}else{qa=ga;ra=ia;sa=da;ta=0}}while(0);e:do if((i[ra>>0]|0)==46){_=ra+1|0;Y=i[_>>0]|0;if(Y<<24>>24!=42){aa=(Y<<24>>24)+-48|0;if(aa>>>0<10){wa=_;xa=0;ya=aa}else{za=_;Aa=0;break}while(1){_=(xa*10|0)+ya|0;aa=wa+1|0;ya=(i[aa>>0]|0)+-48|0;if(ya>>>0>=10){za=aa;Aa=_;break e}else{wa=aa;xa=_}}}_=ra+2|0;aa=(i[_>>0]|0)+-48|0;if(aa>>>0<10?(i[ra+3>>0]|0)==36:0){k[e+(aa<<2)>>2]=10;za=ra+4|0;Aa=k[d+((i[_>>0]|0)+-48<<3)>>2]|0;break}if(sa){pa=-1;R=252;break a}if(v){aa=(k[c>>2]|0)+(4-1)&~(4-1);Y=k[aa>>2]|0;k[c>>2]=aa+4;za=_;Aa=Y}else{za=_;Aa=0}}else{za=ra;Aa=-1}while(0);_=za;Y=0;while(1){aa=(i[_>>0]|0)+-65|0;if(aa>>>0>57){pa=-1;R=252;break a}$=_+1|0;Z=i[164454+(Y*58|0)+aa>>0]|0;aa=Z&255;if((aa+-1|0)>>>0<8){_=$;Y=aa}else{Ba=$;Ca=Z;Da=aa;Ea=_;Fa=Y;break}}if(!(Ca<<24>>24)){pa=-1;R=252;break}Y=(ca|0)>-1;do if(Ca<<24>>24==19)if(Y){pa=-1;R=252;break a}else R=52;else{if(Y){k[e+(ca<<2)>>2]=Da;_=d+(ca<<3)|0;aa=k[_+4>>2]|0;Z=o;k[Z>>2]=k[_>>2];k[Z+4>>2]=aa;R=52;break}if(!v){pa=0;R=252;break a}gr(o,Da,c)}while(0);if((R|0)==52?(R=0,!v):0){J=O;K=Ba;b=N;M=sa;continue}Y=i[Ea>>0]|0;aa=(Fa|0)!=0&(Y&15|0)==3?Y&-33:Y;Y=qa&-65537;Z=(qa&8192|0)==0?qa:Y;f:do switch(aa|0){case 110:{switch(Fa|0){case 0:{k[k[o>>2]>>2]=O;J=O;K=Ba;b=N;M=sa;continue a;break}case 1:{k[k[o>>2]>>2]=O;J=O;K=Ba;b=N;M=sa;continue a;break}case 2:{_=k[o>>2]|0;k[_>>2]=O;k[_+4>>2]=((O|0)<0)<<31>>31;J=O;K=Ba;b=N;M=sa;continue a;break}case 3:{j[k[o>>2]>>1]=O;J=O;K=Ba;b=N;M=sa;continue a;break}case 4:{i[k[o>>2]>>0]=O;J=O;K=Ba;b=N;M=sa;continue a;break}case 6:{k[k[o>>2]>>2]=O;J=O;K=Ba;b=N;M=sa;continue a;break}case 7:{_=k[o>>2]|0;k[_>>2]=O;k[_+4>>2]=((O|0)<0)<<31>>31;J=O;K=Ba;b=N;M=sa;continue a;break}default:{J=O;K=Ba;b=N;M=sa;continue a}}break}case 112:{Ga=Z|8;Ha=Aa>>>0>8?Aa:8;Ia=120;R=64;break}case 88:case 120:{Ga=Z;Ha=Aa;Ia=aa;R=64;break}case 111:{_=o;$=k[_>>2]|0;ka=k[_+4>>2]|0;if(($|0)==0&(ka|0)==0)Ja=w;else{_=w;ja=$;$=ka;while(1){ka=_+-1|0;i[ka>>0]=ja&7|48;ja=ur(ja|0,$|0,3)|0;$=L;if((ja|0)==0&($|0)==0){Ja=ka;break}else _=ka}}if(!(Z&8)){Ka=Ja;La=Z;Ma=Aa;Na=0;Oa=164934;R=77}else{_=x-Ja+1|0;Ka=Ja;La=Z;Ma=(Aa|0)<(_|0)?_:Aa;Na=0;Oa=164934;R=77}break}case 105:case 100:{_=o;$=k[_>>2]|0;ja=k[_+4>>2]|0;if((ja|0)<0){_=pr(0,0,$|0,ja|0)|0;ka=L;la=o;k[la>>2]=_;k[la+4>>2]=ka;Pa=_;Qa=ka;Ra=1;Sa=164934;R=76;break f}if(!(Z&2048)){ka=Z&1;Pa=$;Qa=ja;Ra=ka;Sa=(ka|0)==0?164934:164936;R=76}else{Pa=$;Qa=ja;Ra=1;Sa=164935;R=76}break}case 117:{ja=o;Pa=k[ja>>2]|0;Qa=k[ja+4>>2]|0;Ra=0;Sa=164934;R=76;break}case 99:{i[y>>0]=k[o>>2];Ta=y;Ua=Y;Va=1;Wa=0;Xa=164934;Ya=w;break}case 109:{ja=Np()|0;Za=Op(k[ja>>2]|0)|0;R=82;break}case 115:{ja=k[o>>2]|0;Za=(ja|0)!=0?ja:164944;R=82;break}case 67:{k[s>>2]=k[o>>2];k[q>>2]=0;k[o>>2]=s;_a=-1;R=86;break}case 83:{if(!Aa){ir(a,32,ta,0,Z);$a=0;R=98}else{_a=Aa;R=86}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{ab=+p[o>>3];k[h>>2]=0;p[t>>3]=ab;if((k[t+4>>2]|0)>=0)if(!(Z&2048)){ja=Z&1;bb=ab;cb=ja;db=(ja|0)==0?164952:164957}else{bb=ab;cb=1;db=164954}else{bb=-ab;cb=1;db=164951}p[t>>3]=bb;ja=k[t+4>>2]&2146435072;do if(ja>>>0<2146435072|(ja|0)==2146435072&0<0){ab=+$p(bb,h)*2.0;$=ab!=0.0;if($)k[h>>2]=(k[h>>2]|0)+-1;ka=aa|32;if((ka|0)==97){_=aa&32;la=(_|0)==0?db:db+9|0;eb=cb|2;fb=12-Aa|0;do if(!(Aa>>>0>11|(fb|0)==0)){gb=fb;hb=8.0;while(1){gb=gb+-1|0;ib=hb*16.0;if(!gb){jb=ib;break}else hb=ib}if((i[la>>0]|0)==45){kb=-(jb+(-ab-jb));break}else{kb=ab+jb-jb;break}}else kb=ab;while(0);fb=k[h>>2]|0;gb=(fb|0)<0?0-fb|0:fb;lb=hr(gb,((gb|0)<0)<<31>>31,z)|0;if((lb|0)==(z|0)){i[A>>0]=48;mb=A}else mb=lb;i[mb+-1>>0]=(fb>>31&2)+43;fb=mb+-2|0;i[fb>>0]=aa+15;lb=(Aa|0)<1;gb=(Z&8|0)==0;hb=kb;nb=m;while(1){ob=~~hb;pb=nb+1|0;i[nb>>0]=l[164918+ob>>0]|_;hb=(hb-+(ob|0))*16.0;do if((pb-n|0)==1){if(gb&(lb&hb==0.0)){qb=pb;break}i[pb>>0]=46;qb=nb+2|0}else qb=pb;while(0);if(!(hb!=0.0)){rb=qb;break}else nb=qb}nb=rb;lb=(Aa|0)!=0&(D+nb|0)<(Aa|0)?E+Aa-fb|0:C-fb+nb|0;gb=lb+eb|0;ir(a,32,ta,gb,Z);if(!(k[a>>2]&32))yq(la,eb,a)|0;ir(a,48,ta,gb,Z^65536);_=nb-n|0;if(!(k[a>>2]&32))yq(m,_,a)|0;nb=B-fb|0;ir(a,48,lb-(_+nb)|0,0,0);if(!(k[a>>2]&32))yq(fb,nb,a)|0;ir(a,32,ta,gb,Z^8192);sb=(gb|0)<(ta|0)?ta:gb;break}gb=(Aa|0)<0?6:Aa;if($){nb=(k[h>>2]|0)+-28|0;k[h>>2]=nb;tb=ab*268435456.0;ub=nb}else{tb=ab;ub=k[h>>2]|0}nb=(ub|0)<0?g:F;_=nb;hb=tb;lb=nb;while(1){pb=~~hb>>>0;k[lb>>2]=pb;ob=lb+4|0;hb=(hb-+(pb>>>0))*1.0e9;if(!(hb!=0.0)){vb=ob;break}else lb=ob}lb=k[h>>2]|0;if((lb|0)>0){$=lb;fb=nb;eb=vb;while(1){la=($|0)>29?29:$;ob=eb+-4|0;do if(ob>>>0<fb>>>0)wb=fb;else{pb=0;xb=ob;while(1){yb=rr(k[xb>>2]|0,0,la|0)|0;zb=sr(yb|0,L|0,pb|0,0)|0;yb=L;Ab=Fr(zb|0,yb|0,1e9,0)|0;k[xb>>2]=Ab;Ab=Er(zb|0,yb|0,1e9,0)|0;xb=xb+-4|0;if(xb>>>0<fb>>>0){Bb=Ab;break}else pb=Ab}if(!Bb){wb=fb;break}pb=fb+-4|0;k[pb>>2]=Bb;wb=pb}while(0);ob=eb;while(1){if(ob>>>0<=wb>>>0){Cb=ob;break}pb=ob+-4|0;if(!(k[pb>>2]|0))ob=pb;else{Cb=ob;break}}ob=(k[h>>2]|0)-la|0;k[h>>2]=ob;if((ob|0)>0){$=ob;fb=wb;eb=Cb}else{Db=ob;Eb=wb;Fb=Cb;break}}}else{Db=lb;Eb=nb;Fb=vb}if((Db|0)<0){eb=((gb+25|0)/9|0)+1|0;fb=(ka|0)==102;$=Db;ob=Eb;pb=Fb;while(1){xb=0-$|0;Ab=(xb|0)>9?9:xb;do if(ob>>>0<pb>>>0){xb=(1<<Ab)+-1|0;yb=1e9>>>Ab;zb=0;Gb=ob;while(1){Hb=k[Gb>>2]|0;k[Gb>>2]=(Hb>>>Ab)+zb;Ib=ha(Hb&xb,yb)|0;Gb=Gb+4|0;if(Gb>>>0>=pb>>>0){Jb=Ib;break}else zb=Ib}zb=(k[ob>>2]|0)==0?ob+4|0:ob;if(!Jb){Kb=zb;Lb=pb;break}k[pb>>2]=Jb;Kb=zb;Lb=pb+4|0}else{Kb=(k[ob>>2]|0)==0?ob+4|0:ob;Lb=pb}while(0);la=fb?nb:Kb;zb=(Lb-la>>2|0)>(eb|0)?la+(eb<<2)|0:Lb;$=(k[h>>2]|0)+Ab|0;k[h>>2]=$;if(($|0)>=0){Mb=Kb;Nb=zb;break}else{ob=Kb;pb=zb}}}else{Mb=Eb;Nb=Fb}do if(Mb>>>0<Nb>>>0){pb=(_-Mb>>2)*9|0;ob=k[Mb>>2]|0;if(ob>>>0<10){Ob=pb;break}else{Pb=pb;Qb=10}while(1){Qb=Qb*10|0;pb=Pb+1|0;if(ob>>>0<Qb>>>0){Ob=pb;break}else Pb=pb}}else Ob=0;while(0);ob=(ka|0)==103;Ab=(gb|0)!=0;pb=gb-((ka|0)!=102?Ob:0)+((Ab&ob)<<31>>31)|0;if((pb|0)<(((Nb-_>>2)*9|0)+-9|0)){$=pb+9216|0;pb=($|0)/9|0;eb=nb+(pb+-1023<<2)|0;fb=(($|0)%9|0)+1|0;if((fb|0)<9){$=10;lb=fb;while(1){fb=$*10|0;lb=lb+1|0;if((lb|0)==9){Rb=fb;break}else $=fb}}else Rb=10;$=k[eb>>2]|0;lb=($>>>0)%(Rb>>>0)|0;if((lb|0)==0?(nb+(pb+-1022<<2)|0)==(Nb|0):0){Sb=Mb;Tb=eb;Ub=Ob}else R=163;do if((R|0)==163){R=0;hb=((($>>>0)/(Rb>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;ka=(Rb|0)/2|0;do if(lb>>>0<ka>>>0)Vb=.5;else{if((lb|0)==(ka|0)?(nb+(pb+-1022<<2)|0)==(Nb|0):0){Vb=1.0;break}Vb=1.5}while(0);do if(!cb){Wb=hb;Xb=Vb}else{if((i[db>>0]|0)!=45){Wb=hb;Xb=Vb;break}Wb=-hb;Xb=-Vb}while(0);ka=$-lb|0;k[eb>>2]=ka;if(!(Wb+Xb!=Wb)){Sb=Mb;Tb=eb;Ub=Ob;break}fb=ka+Rb|0;k[eb>>2]=fb;if(fb>>>0>999999999){fb=Mb;ka=eb;while(1){zb=ka+-4|0;k[ka>>2]=0;if(zb>>>0<fb>>>0){la=fb+-4|0;k[la>>2]=0;Yb=la}else Yb=fb;la=(k[zb>>2]|0)+1|0;k[zb>>2]=la;if(la>>>0>999999999){fb=Yb;ka=zb}else{Zb=Yb;_b=zb;break}}}else{Zb=Mb;_b=eb}ka=(_-Zb>>2)*9|0;fb=k[Zb>>2]|0;if(fb>>>0<10){Sb=Zb;Tb=_b;Ub=ka;break}else{$b=ka;ac=10}while(1){ac=ac*10|0;ka=$b+1|0;if(fb>>>0<ac>>>0){Sb=Zb;Tb=_b;Ub=ka;break}else $b=ka}}while(0);eb=Tb+4|0;bc=Sb;cc=Ub;dc=Nb>>>0>eb>>>0?eb:Nb}else{bc=Mb;cc=Ob;dc=Nb}eb=0-cc|0;lb=dc;while(1){if(lb>>>0<=bc>>>0){ec=0;fc=lb;break}$=lb+-4|0;if(!(k[$>>2]|0))lb=$;else{ec=1;fc=lb;break}}do if(ob){lb=(Ab&1^1)+gb|0;if((lb|0)>(cc|0)&(cc|0)>-5){gc=aa+-1|0;hc=lb+-1-cc|0}else{gc=aa+-2|0;hc=lb+-1|0}lb=Z&8;if(lb){ic=gc;jc=hc;kc=lb;break}do if(ec){lb=k[fc+-4>>2]|0;if(!lb){lc=9;break}if(!((lb>>>0)%10|0)){mc=10;nc=0}else{lc=0;break}while(1){mc=mc*10|0;$=nc+1|0;if((lb>>>0)%(mc>>>0)|0){lc=$;break}else nc=$}}else lc=9;while(0);lb=((fc-_>>2)*9|0)+-9|0;if((gc|32|0)==102){$=lb-lc|0;pb=($|0)<0?0:$;ic=gc;jc=(hc|0)<(pb|0)?hc:pb;kc=0;break}else{pb=lb+cc-lc|0;lb=(pb|0)<0?0:pb;ic=gc;jc=(hc|0)<(lb|0)?hc:lb;kc=0;break}}else{ic=aa;jc=gb;kc=Z&8}while(0);gb=jc|kc;_=(gb|0)!=0&1;Ab=(ic|32|0)==102;if(Ab){oc=(cc|0)>0?cc:0;pc=0}else{ob=(cc|0)<0?eb:cc;lb=hr(ob,((ob|0)<0)<<31>>31,z)|0;if((B-lb|0)<2){ob=lb;while(1){pb=ob+-1|0;i[pb>>0]=48;if((B-pb|0)<2)ob=pb;else{qc=pb;break}}}else qc=lb;i[qc+-1>>0]=(cc>>31&2)+43;ob=qc+-2|0;i[ob>>0]=ic;oc=B-ob|0;pc=ob}ob=cb+1+jc+_+oc|0;ir(a,32,ta,ob,Z);if(!(k[a>>2]&32))yq(db,cb,a)|0;ir(a,48,ta,ob,Z^65536);do if(Ab){eb=bc>>>0>nb>>>0?nb:bc;pb=eb;while(1){$=hr(k[pb>>2]|0,0,G)|0;do if((pb|0)==(eb|0)){if(($|0)!=(G|0)){rc=$;break}i[I>>0]=48;rc=I}else{if($>>>0>m>>>0)sc=$;else{rc=$;break}while(1){fb=sc+-1|0;i[fb>>0]=48;if(fb>>>0>m>>>0)sc=fb;else{rc=fb;break}}}while(0);if(!(k[a>>2]&32))yq(rc,H-rc|0,a)|0;$=pb+4|0;if($>>>0>nb>>>0){tc=$;break}else pb=$}do if(gb){if(k[a>>2]&32)break;yq(164986,1,a)|0}while(0);if((jc|0)>0&tc>>>0<fc>>>0){pb=jc;eb=tc;while(1){$=hr(k[eb>>2]|0,0,G)|0;if($>>>0>m>>>0){fb=$;while(1){ka=fb+-1|0;i[ka>>0]=48;if(ka>>>0>m>>>0)fb=ka;else{uc=ka;break}}}else uc=$;if(!(k[a>>2]&32))yq(uc,(pb|0)>9?9:pb,a)|0;eb=eb+4|0;fb=pb+-9|0;if(!((pb|0)>9&eb>>>0<fc>>>0)){vc=fb;break}else pb=fb}}else vc=jc;ir(a,48,vc+9|0,9,0)}else{pb=ec?fc:bc+4|0;if((jc|0)>-1){eb=(kc|0)==0;fb=jc;ka=bc;while(1){zb=hr(k[ka>>2]|0,0,G)|0;if((zb|0)==(G|0)){i[I>>0]=48;wc=I}else wc=zb;do if((ka|0)==(bc|0)){zb=wc+1|0;if(!(k[a>>2]&32))yq(wc,1,a)|0;if(eb&(fb|0)<1){xc=zb;break}if(k[a>>2]&32){xc=zb;break}yq(164986,1,a)|0;xc=zb}else{if(wc>>>0>m>>>0)yc=wc;else{xc=wc;break}while(1){zb=yc+-1|0;i[zb>>0]=48;if(zb>>>0>m>>>0)yc=zb;else{xc=zb;break}}}while(0);$=H-xc|0;if(!(k[a>>2]&32))yq(xc,(fb|0)>($|0)?$:fb,a)|0;zb=fb-$|0;ka=ka+4|0;if(!(ka>>>0<pb>>>0&(zb|0)>-1)){zc=zb;break}else fb=zb}}else zc=jc;ir(a,48,zc+18|0,18,0);if(k[a>>2]&32)break;yq(pc,B-pc|0,a)|0}while(0);ir(a,32,ta,ob,Z^8192);sb=(ob|0)<(ta|0)?ta:ob}else{gb=(aa&32|0)!=0;nb=bb!=bb|0.0!=0.0;Ab=nb?0:cb;_=Ab+3|0;ir(a,32,ta,_,Y);lb=k[a>>2]|0;if(!(lb&32)){yq(db,Ab,a)|0;Ac=k[a>>2]|0}else Ac=lb;if(!(Ac&32))yq(nb?(gb?164978:164982):gb?164970:164974,3,a)|0;ir(a,32,ta,_,Z^8192);sb=(_|0)<(ta|0)?ta:_}while(0);J=O;K=Ba;b=sb;M=sa;continue a;break}default:{Ta=K;Ua=Z;Va=Aa;Wa=0;Xa=164934;Ya=w}}while(0);g:do if((R|0)==64){R=0;aa=o;N=k[aa>>2]|0;ja=k[aa+4>>2]|0;aa=Ia&32;if(!((N|0)==0&(ja|0)==0)){_=w;gb=N;N=ja;while(1){ja=_+-1|0;i[ja>>0]=l[164918+(gb&15)>>0]|aa;gb=ur(gb|0,N|0,4)|0;N=L;if((gb|0)==0&(N|0)==0){Bc=ja;break}else _=ja}_=o;if((Ga&8|0)==0|(k[_>>2]|0)==0&(k[_+4>>2]|0)==0){Ka=Bc;La=Ga;Ma=Ha;Na=0;Oa=164934;R=77}else{Ka=Bc;La=Ga;Ma=Ha;Na=2;Oa=164934+(Ia>>4)|0;R=77}}else{Ka=w;La=Ga;Ma=Ha;Na=0;Oa=164934;R=77}}else if((R|0)==76){R=0;Ka=hr(Pa,Qa,w)|0;La=Z;Ma=Aa;Na=Ra;Oa=Sa;R=77}else if((R|0)==82){R=0;_=Kq(Za,0,Aa)|0;N=(_|0)==0;Ta=Za;Ua=Y;Va=N?Aa:_-Za|0;Wa=0;Xa=164934;Ya=N?Za+Aa|0:_}else if((R|0)==86){R=0;_=0;N=0;gb=k[o>>2]|0;while(1){aa=k[gb>>2]|0;if(!aa){Cc=_;Dc=N;break}ja=hq(u,aa)|0;if((ja|0)<0|ja>>>0>(_a-_|0)>>>0){Cc=_;Dc=ja;break}aa=ja+_|0;if(_a>>>0>aa>>>0){_=aa;N=ja;gb=gb+4|0}else{Cc=aa;Dc=ja;break}}if((Dc|0)<0){pa=-1;R=252;break a}ir(a,32,ta,Cc,Z);if(!Cc){$a=0;R=98}else{gb=0;N=k[o>>2]|0;while(1){_=k[N>>2]|0;if(!_){$a=Cc;R=98;break g}ja=hq(u,_)|0;gb=ja+gb|0;if((gb|0)>(Cc|0)){$a=Cc;R=98;break g}if(!(k[a>>2]&32))yq(u,ja,a)|0;if(gb>>>0>=Cc>>>0){$a=Cc;R=98;break}else N=N+4|0}}}while(0);if((R|0)==98){R=0;ir(a,32,ta,$a,Z^8192);J=O;K=Ba;b=(ta|0)>($a|0)?ta:$a;M=sa;continue}if((R|0)==77){R=0;Y=(Ma|0)>-1?La&-65537:La;N=o;gb=(k[N>>2]|0)!=0|(k[N+4>>2]|0)!=0;if((Ma|0)!=0|gb){N=(gb&1^1)+(x-Ka)|0;Ta=Ka;Ua=Y;Va=(Ma|0)>(N|0)?Ma:N;Wa=Na;Xa=Oa;Ya=w}else{Ta=w;Ua=Y;Va=0;Wa=Na;Xa=Oa;Ya=w}}Y=Ya-Ta|0;N=(Va|0)<(Y|0)?Y:Va;gb=Wa+N|0;ja=(ta|0)<(gb|0)?gb:ta;ir(a,32,ja,gb,Ua);if(!(k[a>>2]&32))yq(Xa,Wa,a)|0;ir(a,48,ja,gb,Ua^65536);ir(a,48,N,Y,0);if(!(k[a>>2]&32))yq(Ta,Y,a)|0;ir(a,32,ja,gb,Ua^8192);J=O;K=Ba;b=ja;M=sa}if((R|0)==245){if(a){pa=P;r=f;return pa|0}if(!Q){pa=0;r=f;return pa|0}Q=k[e+4>>2]|0;if(Q){gr(d+8|0,Q,c);Q=k[e+8>>2]|0;if(Q){gr(d+16|0,Q,c);Q=k[e+12>>2]|0;if(Q){gr(d+24|0,Q,c);Q=k[e+16>>2]|0;if(Q){gr(d+32|0,Q,c);Q=k[e+20>>2]|0;if(Q){gr(d+40|0,Q,c);Q=k[e+24>>2]|0;if(Q){gr(d+48|0,Q,c);Q=k[e+28>>2]|0;if(Q){gr(d+56|0,Q,c);Q=k[e+32>>2]|0;if(Q){gr(d+64|0,Q,c);Q=k[e+36>>2]|0;if(!Q)Ec=9;else{gr(d+72|0,Q,c);pa=1;r=f;return pa|0}}else Ec=8}else Ec=7}else Ec=6}else Ec=5}else Ec=4}else Ec=3}else Ec=2}else Ec=1;while(1){if(k[e+(Ec<<2)>>2]|0){pa=-1;R=252;break}Ec=Ec+1|0;if((Ec|0)>=10){pa=1;R=252;break}}if((R|0)==252){r=f;return pa|0}}else if((R|0)==252){r=f;return pa|0}return 0}function $q(a,b,c){a=a|0;b=b|0;c=c|0;return rq(a,b,c)|0}function ar(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;f=r;r=r+240|0;g=f;k[g>>2]=a;if((d|0)<=1){h=1;er(b,g,h);r=f;return}i=0-b|0;j=d;d=a;l=a;a=1;while(1){m=d+i|0;n=j+-2|0;o=d+(0-((k[e+(n<<2)>>2]|0)+b))|0;if((yb[c&127](l,o)|0)>-1?(yb[c&127](l,m)|0)>-1:0){h=a;p=10;break}q=a+1|0;s=g+(a<<2)|0;if((yb[c&127](o,m)|0)>-1){k[s>>2]=o;t=o;u=j+-1|0}else{k[s>>2]=m;t=m;u=n}if((u|0)<=1){h=q;p=10;break}j=u;d=t;l=k[g>>2]|0;a=q}if((p|0)==10){er(b,g,h);r=f;return}}function br(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,l=0,m=0,n=0,o=0,p=0,q=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;h=r;r=r+240|0;i=h;j=k[d>>2]|0;l=k[d+4>>2]|0;k[i>>2]=a;d=0-b|0;a:do if((l|0)!=0|(j|0)!=1?(m=a+(0-(k[g+(e<<2)>>2]|0))|0,(yb[c&127](m,a)|0)>=1):0){n=a;o=e;p=(f|0)==0;q=m;m=j;s=l;t=1;while(1){if(p&(o|0)>1){u=k[g+(o+-2<<2)>>2]|0;if((yb[c&127](n+d|0,q)|0)>-1){v=n;w=o;x=t;break a}if((yb[c&127](n+(0-(u+b))|0,q)|0)>-1){v=n;w=o;x=t;break a}}u=t+1|0;k[i+(t<<2)>>2]=q;y=m+-1|0;do if(y){if(!(y&1)){z=y;A=0;while(1){B=A+1|0;z=z>>>1;if(z&1){C=B;break}else A=B}if(C)D=C;else E=11}else E=11;if((E|0)==11){E=0;if(!s){F=64;E=16;break}if(!(s&1)){G=s;H=0}else{I=0;J=m;K=s;L=0;break}while(1){A=H+1|0;G=G>>>1;if(G&1){M=A;N=H;break}else H=A}if(!M){I=0;J=m;K=s;L=0;break}else D=N+33|0}if(D>>>0>31){F=D;E=16}else{I=D;J=m;K=s;L=D}}else{F=32;E=16}while(0);if((E|0)==16){E=0;I=F+-32|0;J=s;K=0;L=F}m=K<<32-I|J>>>I;s=K>>>I;y=L+o|0;if(!((s|0)!=0|(m|0)!=1)){v=q;w=y;x=u;break a}A=q+(0-(k[g+(y<<2)>>2]|0))|0;if((yb[c&127](A,k[i>>2]|0)|0)<1){O=q;P=y;Q=0;R=u;E=19;break}else{z=q;o=y;p=1;q=A;t=u;n=z}}}else{O=a;P=e;Q=f;R=1;E=19}while(0);if((E|0)==19)if(!Q){v=O;w=P;x=R}else{r=h;return}er(b,i,x);ar(v,b,c,w,g);r=h;return}function cr(a){a=a|0;return}function dr(){return}function er(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=r;r=r+256|0;e=d;if((c|0)<2){r=d;return}f=b+(c<<2)|0;k[f>>2]=e;if(!a){r=d;return}else{g=a;h=e}while(1){e=g>>>0>256?256:g;wr(h|0,k[b>>2]|0,e|0)|0;a=0;do{i=b+(a<<2)|0;a=a+1|0;wr(k[i>>2]|0,k[b+(a<<2)>>2]|0,e|0)|0;k[i>>2]=(k[i>>2]|0)+e}while((a|0)!=(c|0));if((g|0)==(e|0))break;g=g-e|0;h=k[f>>2]|0}r=d;return}function fr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=a+20|0;e=k[d>>2]|0;f=(k[a+16>>2]|0)-e|0;a=f>>>0>c>>>0?c:f;wr(e|0,b|0,a|0)|0;k[d>>2]=(k[d>>2]|0)+a;return c|0}function gr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0.0;if(b>>>0>20)return;do switch(b|0){case 9:{d=(k[c>>2]|0)+(4-1)&~(4-1);e=k[d>>2]|0;k[c>>2]=d+4;k[a>>2]=e;return}case 10:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;return}case 11:{d=(k[c>>2]|0)+(4-1)&~(4-1);e=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=e;k[d+4>>2]=0;return}case 12:{d=(k[c>>2]|0)+(8-1)&~(8-1);e=d;f=k[e>>2]|0;g=k[e+4>>2]|0;k[c>>2]=d+8;d=a;k[d>>2]=f;k[d+4>>2]=g;return}case 13:{g=(k[c>>2]|0)+(4-1)&~(4-1);d=k[g>>2]|0;k[c>>2]=g+4;g=(d&65535)<<16>>16;d=a;k[d>>2]=g;k[d+4>>2]=((g|0)<0)<<31>>31;return}case 14:{g=(k[c>>2]|0)+(4-1)&~(4-1);d=k[g>>2]|0;k[c>>2]=g+4;g=a;k[g>>2]=d&65535;k[g+4>>2]=0;return}case 15:{g=(k[c>>2]|0)+(4-1)&~(4-1);d=k[g>>2]|0;k[c>>2]=g+4;g=(d&255)<<24>>24;d=a;k[d>>2]=g;k[d+4>>2]=((g|0)<0)<<31>>31;return}case 16:{g=(k[c>>2]|0)+(4-1)&~(4-1);d=k[g>>2]|0;k[c>>2]=g+4;g=a;k[g>>2]=d&255;k[g+4>>2]=0;return}case 17:{g=(k[c>>2]|0)+(8-1)&~(8-1);h=+p[g>>3];k[c>>2]=g+8;p[a>>3]=h;return}case 18:{g=(k[c>>2]|0)+(8-1)&~(8-1);h=+p[g>>3];k[c>>2]=g+8;p[a>>3]=h;return}default:return}while(0)}function hr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;if(b>>>0>0|(b|0)==0&a>>>0>4294967295){d=c;e=a;f=b;while(1){b=Fr(e|0,f|0,10,0)|0;g=d+-1|0;i[g>>0]=b|48;b=Er(e|0,f|0,10,0)|0;if(f>>>0>9|(f|0)==9&e>>>0>4294967295){d=g;e=b;f=L}else{h=g;j=b;break}}k=h;l=j}else{k=c;l=a}if(!l){m=k;return m|0}else{n=k;o=l}while(1){l=n+-1|0;i[l>>0]=(o>>>0)%10|0|48;if(o>>>0<10){m=l;break}else{n=l;o=(o>>>0)/10|0}}return m|0}function ir(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,l=0;f=r;r=r+256|0;g=f;if(!((c|0)>(d|0)&(e&73728|0)==0)){r=f;return}e=c-d|0;qr(g|0,b|0,(e>>>0>256?256:e)|0)|0;b=k[a>>2]|0;h=(b&32|0)==0;if(e>>>0>255){i=c-d|0;d=e;c=b;b=h;while(1){if(b){yq(g,256,a)|0;j=k[a>>2]|0}else j=c;d=d+-256|0;b=(j&32|0)==0;if(d>>>0<=255)break;else c=j}if(b)l=i&255;else{r=f;return}}else if(h)l=e;else{r=f;return}yq(g,l,a)|0;r=f;return}
function Vn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,28)|0;d=a+480|0;k[d>>2]=c;k[c>>2]=67;e=a+40|0;switch(k[e>>2]|0){case 1:{if((k[a+36>>2]|0)!=1){f=k[a>>2]|0;k[f+20>>2]=11;qb[k[f>>2]&127](a)}break}case 7:case 6:case 3:case 2:{if((k[a+36>>2]|0)!=3){f=k[a>>2]|0;k[f+20>>2]=11;qb[k[f>>2]&127](a)}break}case 5:case 4:{if((k[a+36>>2]|0)!=4){f=k[a>>2]|0;k[f+20>>2]=11;qb[k[f>>2]&127](a)}break}default:if((k[a+36>>2]|0)<1){f=k[a>>2]|0;k[f+20>>2]=11;qb[k[f>>2]&127](a)}}f=a+304|0;a:do if(k[f>>2]|0){switch(k[e>>2]|0){case 6:case 2:{break a;break}default:{}}g=k[a>>2]|0;k[g+20>>2]=28;qb[k[g>>2]&127](a)}while(0);g=k[a+44>>2]|0;b:do switch(g|0){case 1:{k[a+120>>2]=1;switch(k[e>>2]|0){case 7:case 3:case 1:{k[c+4>>2]=9;h=k[a+36>>2]|0;if((h|0)<=1)break b;i=k[a+216>>2]|0;j=1;do{k[i+(j*88|0)+52>>2]=0;j=j+1|0}while((j|0)<(h|0));break}case 2:{switch(k[f>>2]|0){case 0:{k[c+4>>2]=10;break}case 1:{k[c+4>>2]=11;break}default:{h=k[a>>2]|0;k[h+20>>2]=28;qb[k[h>>2]&127](a)}}h=k[d>>2]|0;j=nb[k[k[b>>2]>>2]&63](a,1,3072)|0;k[h+24>>2]=j;h=0;do{k[j+(h<<2)>>2]=h*19595;k[j+(h+256<<2)>>2]=h*38470;k[j+(h+512<<2)>>2]=(h*7471|0)+32768;h=h+1|0}while((h|0)!=256);break}default:{h=k[a>>2]|0;k[h+20>>2]=28;qb[k[h>>2]&127](a);break b}}break}case 2:{k[a+120>>2]=3;switch(k[e>>2]|0){case 1:{k[c+4>>2]=12;break b;break}case 3:{k[c+4>>2]=13;h=k[d>>2]|0;j=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;i=h+8|0;k[i>>2]=j;j=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;l=h+12|0;k[l>>2]=j;j=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;m=h+16|0;k[m>>2]=j;j=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;k[h+20>>2]=j;h=k[i>>2]|0;i=k[l>>2]|0;l=k[m>>2]|0;m=0;n=-128;while(1){k[h+(m<<2)>>2]=(n*91881|0)+32768>>16;k[i+(m<<2)>>2]=(n*116130|0)+32768>>16;o=ha(n,-46802)|0;k[l+(m<<2)>>2]=o;o=(ha(n,-22553)|0)+32768|0;k[j+(m<<2)>>2]=o;m=m+1|0;if((m|0)==256)break;else n=n+1|0}break}case 7:{k[c+4>>2]=13;n=k[d>>2]|0;m=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;j=n+8|0;k[j>>2]=m;m=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;l=n+12|0;k[l>>2]=m;m=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;i=n+16|0;k[i>>2]=m;m=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;k[n+20>>2]=m;n=k[j>>2]|0;j=k[l>>2]|0;l=k[i>>2]|0;i=0;h=-128;while(1){k[n+(i<<2)>>2]=(h*183763|0)+32768>>16;k[j+(i<<2)>>2]=(h*232260|0)+32768>>16;o=ha(h,-93603)|0;k[l+(i<<2)>>2]=o;o=(ha(h,-45107)|0)+32768|0;k[m+(i<<2)>>2]=o;i=i+1|0;if((i|0)==256)break;else h=h+1|0}break}case 2:{switch(k[f>>2]|0){case 0:{k[c+4>>2]=14;break b;break}case 1:{k[c+4>>2]=15;break b;break}default:{h=k[a>>2]|0;k[h+20>>2]=28;qb[k[h>>2]&127](a);break b}}break}default:{h=k[a>>2]|0;k[h+20>>2]=28;qb[k[h>>2]&127](a);break b}}break}case 6:{k[a+120>>2]=3;if((k[e>>2]|0)!=6){h=k[a>>2]|0;k[h+20>>2]=28;qb[k[h>>2]&127](a);break b}switch(k[f>>2]|0){case 0:{k[c+4>>2]=14;break b;break}case 1:{k[c+4>>2]=15;break b;break}default:{h=k[a>>2]|0;k[h+20>>2]=28;qb[k[h>>2]&127](a);break b}}break}case 4:{k[a+120>>2]=4;switch(k[e>>2]|0){case 5:{k[c+4>>2]=16;h=k[d>>2]|0;i=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;m=h+8|0;k[m>>2]=i;i=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;l=h+12|0;k[l>>2]=i;i=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;j=h+16|0;k[j>>2]=i;i=nb[k[k[b>>2]>>2]&63](a,1,1024)|0;k[h+20>>2]=i;h=k[m>>2]|0;m=k[l>>2]|0;l=k[j>>2]|0;j=0;n=-128;while(1){k[h+(j<<2)>>2]=(n*91881|0)+32768>>16;k[m+(j<<2)>>2]=(n*116130|0)+32768>>16;o=ha(n,-46802)|0;k[l+(j<<2)>>2]=o;o=(ha(n,-22553)|0)+32768|0;k[i+(j<<2)>>2]=o;j=j+1|0;if((j|0)==256)break;else n=n+1|0}break}case 4:{k[c+4>>2]=17;break b;break}default:{n=k[a>>2]|0;k[n+20>>2]=28;qb[k[n>>2]&127](a);break b}}break}default:if((g|0)==(k[e>>2]|0)){k[a+120>>2]=k[a+36>>2];k[c+4>>2]=17;break b}else{n=k[a>>2]|0;k[n+20>>2]=28;qb[k[n>>2]&127](a);break b}}while(0);if(k[a+84>>2]|0){p=1;q=a+124|0;k[q>>2]=p;return}p=k[a+120>>2]|0;q=a+124|0;k[q>>2]=p;return}function Wn(a){a=a|0;return}function Xn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;rm(k[b>>2]|0,c,d,0,e,k[a+112>>2]|0);return}function Yn(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,j=0,m=0,n=0,o=0,p=0,q=0;f=k[(k[a+480>>2]|0)+24>>2]|0;g=k[a+112>>2]|0;if((e|0)<=0)return;a=b+4|0;h=b+8|0;if(!g)return;else{j=d;m=c;n=e}do{e=n;n=n+-1|0;c=k[(k[b>>2]|0)+(m<<2)>>2]|0;d=k[(k[a>>2]|0)+(m<<2)>>2]|0;o=k[(k[h>>2]|0)+(m<<2)>>2]|0;m=m+1|0;p=k[j>>2]|0;j=j+4|0;q=0;do{i[p+q>>0]=((k[f+((l[d+q>>0]|0|256)<<2)>>2]|0)+(k[f+((l[c+q>>0]|0)<<2)>>2]|0)+(k[f+((l[o+q>>0]|0|512)<<2)>>2]|0)|0)>>>16;q=q+1|0}while((q|0)!=(g|0))}while((e|0)>1);return}function Zn(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0;f=k[(k[a+480>>2]|0)+24>>2]|0;g=k[a+112>>2]|0;if((e|0)<=0)return;a=b+4|0;h=b+8|0;if(!g)return;else{j=d;m=c;n=e}do{e=n;n=n+-1|0;c=k[(k[b>>2]|0)+(m<<2)>>2]|0;d=k[(k[a>>2]|0)+(m<<2)>>2]|0;o=k[(k[h>>2]|0)+(m<<2)>>2]|0;m=m+1|0;p=k[j>>2]|0;j=j+4|0;q=0;do{r=l[d+q>>0]|0;i[p+q>>0]=((k[f+((r|256)<<2)>>2]|0)+(k[f+(((l[c+q>>0]|0)+128+r&255)<<2)>>2]|0)+(k[f+((r+128+(l[o+q>>0]|0)&255|512)<<2)>>2]|0)|0)>>>16;q=q+1|0}while((q|0)!=(g|0))}while((e|0)>1);return}function _n(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,j=0,l=0;f=k[a+112>>2]|0;if((e|0)<1|(f|0)==0)return;else{g=d;h=c;j=e}do{e=j;j=j+-1|0;c=k[(k[b>>2]|0)+(h<<2)>>2]|0;h=h+1|0;d=0;a=k[g>>2]|0;g=g+4|0;while(1){l=i[c+d>>0]|0;i[a+2>>0]=l;i[a+1>>0]=l;i[a>>0]=l;d=d+1|0;if((d|0)==(f|0))break;else a=a+3|0}}while((e|0)>1);return}function $n(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;f=k[a+480>>2]|0;g=k[a+112>>2]|0;h=k[a+336>>2]|0;a=k[f+8>>2]|0;j=k[f+12>>2]|0;m=k[f+16>>2]|0;n=k[f+20>>2]|0;if((e|0)<=0)return;f=b+4|0;o=b+8|0;if(!g)return;else{p=d;q=c;r=e}do{e=r;r=r+-1|0;c=k[(k[b>>2]|0)+(q<<2)>>2]|0;d=k[(k[f>>2]|0)+(q<<2)>>2]|0;s=k[(k[o>>2]|0)+(q<<2)>>2]|0;q=q+1|0;t=0;u=k[p>>2]|0;p=p+4|0;while(1){v=l[c+t>>0]|0;w=l[d+t>>0]|0;x=l[s+t>>0]|0;i[u>>0]=i[h+((k[a+(x<<2)>>2]|0)+v)>>0]|0;i[u+1>>0]=i[h+(((k[m+(x<<2)>>2]|0)+(k[n+(w<<2)>>2]|0)>>16)+v)>>0]|0;i[u+2>>0]=i[h+((k[j+(w<<2)>>2]|0)+v)>>0]|0;t=t+1|0;if((t|0)==(g|0))break;else u=u+3|0}}while((e|0)>1);return}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,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0;f=k[a+112>>2]|0;if((e|0)<=0)return;a=b+4|0;g=b+8|0;h=(f|0)==0;j=d;d=c;c=e;do{e=c;c=c+-1|0;l=k[(k[b>>2]|0)+(d<<2)>>2]|0;m=k[(k[a>>2]|0)+(d<<2)>>2]|0;n=k[(k[g>>2]|0)+(d<<2)>>2]|0;d=d+1|0;if(!h){o=0;p=k[j>>2]|0;while(1){i[p>>0]=i[l+o>>0]|0;i[p+1>>0]=i[m+o>>0]|0;i[p+2>>0]=i[n+o>>0]|0;o=o+1|0;if((o|0)==(f|0))break;else p=p+3|0}}j=j+4|0}while((e|0)>1);return}function bo(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,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=k[a+112>>2]|0;if((e|0)<=0)return;a=b+4|0;g=b+8|0;h=(f|0)==0;j=d;d=c;c=e;do{e=c;c=c+-1|0;m=k[(k[b>>2]|0)+(d<<2)>>2]|0;n=k[(k[a>>2]|0)+(d<<2)>>2]|0;o=k[(k[g>>2]|0)+(d<<2)>>2]|0;d=d+1|0;if(!h){p=0;q=k[j>>2]|0;while(1){r=i[n+p>>0]|0;s=r&255;t=l[o+p>>0]|0;i[q>>0]=(l[m+p>>0]|0)+128+s;i[q+1>>0]=r;i[q+2>>0]=s+128+t;p=p+1|0;if((p|0)==(f|0))break;else q=q+3|0}}j=j+4|0}while((e|0)>1);return}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,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=k[a+480>>2]|0;g=k[a+112>>2]|0;h=k[a+336>>2]|0;a=k[f+8>>2]|0;j=k[f+12>>2]|0;m=k[f+16>>2]|0;n=k[f+20>>2]|0;if((e|0)<=0)return;f=b+4|0;o=b+8|0;p=b+12|0;q=(g|0)==0;r=d;d=c;c=e;do{e=c;c=c+-1|0;s=k[(k[b>>2]|0)+(d<<2)>>2]|0;t=k[(k[f>>2]|0)+(d<<2)>>2]|0;u=k[(k[o>>2]|0)+(d<<2)>>2]|0;v=k[(k[p>>2]|0)+(d<<2)>>2]|0;d=d+1|0;if(!q){w=0;x=k[r>>2]|0;while(1){y=l[t+w>>0]|0;z=l[u+w>>0]|0;A=(l[s+w>>0]|0)^255;i[x>>0]=i[h+(A-(k[a+(z<<2)>>2]|0))>>0]|0;i[x+1>>0]=i[h+(A-((k[m+(z<<2)>>2]|0)+(k[n+(y<<2)>>2]|0)>>16))>>0]|0;i[x+2>>0]=i[h+(A-(k[j+(y<<2)>>2]|0))>>0]|0;i[x+3>>0]=i[v+w>>0]|0;w=w+1|0;if((w|0)==(g|0))break;else x=x+4|0}}r=r+4|0}while((e|0)>1);return}function eo(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,j=0,l=0,m=0,n=0,o=0;f=k[a+36>>2]|0;g=k[a+112>>2]|0;if((e|0)<=0)return;a=(f|0)>0;h=(g|0)==0;j=c;c=d;d=e;while(1){e=d;d=d+-1|0;if(a){l=0;do{if(!h){m=0;n=k[(k[b+(l<<2)>>2]|0)+(j<<2)>>2]|0;o=(k[c>>2]|0)+l|0;while(1){i[o>>0]=i[n>>0]|0;m=m+1|0;if((m|0)==(g|0))break;else{n=n+1|0;o=o+f|0}}}l=l+1|0}while((l|0)!=(f|0))}if((e|0)<=1)break;else{j=j+1|0;c=c+4|0}}return}function fo(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,84)|0;k[a+472>>2]=c;k[c>>2]=68;d=a+36|0;if((k[d>>2]|0)<=0)return;e=c+44|0;c=0;f=k[a+216>>2]|0;while(1){g=nb[k[k[b>>2]>>2]&63](a,1,256)|0;k[f+84>>2]=g;qr(g|0,0,256)|0;k[e+(c<<2)>>2]=-1;c=c+1|0;if((c|0)>=(k[d>>2]|0))break;else f=f+88|0}return}function go(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,q=0,r=0,s=0,t=0.0,u=0,v=0;b=k[a+472>>2]|0;c=a+36|0;if((k[c>>2]|0)<=0)return;d=a+72|0;e=0;f=k[a+216>>2]|0;g=0;h=0;while(1){i=k[f+36>>2]|0;l=f+40|0;a:do switch((i<<8)+(k[l>>2]|0)|0){case 257:{n=0;q=18;break}case 514:{n=0;q=19;break}case 771:{n=0;q=20;break}case 1028:{n=0;q=21;break}case 1285:{n=0;q=22;break}case 1542:{n=0;q=23;break}case 1799:{n=0;q=24;break}case 2313:{n=0;q=25;break}case 2570:{n=0;q=26;break}case 2827:{n=0;q=27;break}case 3084:{n=0;q=28;break}case 3341:{n=0;q=29;break}case 3598:{n=0;q=30;break}case 3855:{n=0;q=31;break}case 4112:{n=0;q=32;break}case 4104:{n=0;q=33;break}case 3591:{n=0;q=34;break}case 3078:{n=0;q=35;break}case 2565:{n=0;q=36;break}case 2052:{n=0;q=37;break}case 1539:{n=0;q=38;break}case 1026:{n=0;q=39;break}case 513:{n=0;q=40;break}case 2064:{n=0;q=41;break}case 1806:{n=0;q=42;break}case 1548:{n=0;q=43;break}case 1290:{n=0;q=44;break}case 1032:{n=0;q=45;break}case 774:{n=0;q=46;break}case 516:{n=0;q=47;break}case 258:{n=0;q=48;break}case 2056:{r=k[d>>2]|0;switch(r|0){case 0:{n=0;q=49;break a;break}case 1:{n=r;q=50;break a;break}case 2:{n=r;q=51;break a;break}default:{r=k[a>>2]|0;k[r+20>>2]=49;qb[k[r>>2]&127](a);n=g;q=h;break a}}break}default:{r=k[a>>2]|0;k[r+20>>2]=7;k[r+24>>2]=i;k[r+28>>2]=k[l>>2];qb[k[r>>2]&127](a);n=g;q=h}}while(0);k[b+4+(e<<2)>>2]=q;b:do if(((k[f+52>>2]|0)!=0?(l=b+44+(e<<2)|0,(k[l>>2]|0)!=(n|0)):0)?(i=k[f+80>>2]|0,(i|0)!=0):0){k[l>>2]=n;switch(n|0){case 0:{l=k[f+84>>2]|0;r=0;do{k[l+(r<<2)>>2]=m[i+(r<<1)>>1];r=r+1|0}while((r|0)!=64);break}case 1:{r=k[f+84>>2]|0;l=0;do{s=(ha(j[128808+(l<<1)>>1]|0,m[i+(l<<1)>>1]|0)|0)+2048>>12;k[r+(l<<2)>>2]=s;l=l+1|0}while((l|0)!=64);break}case 2:{l=k[f+84>>2]|0;r=0;s=0;while(1){t=+p[8+(s<<3)>>3];o[l+(r<<2)>>2]=+(m[i+(r<<1)>>1]|0)*t*.125;u=r|1;o[l+(u<<2)>>2]=+(m[i+(u<<1)>>1]|0)*t*1.387039845*.125;v=u+1|0;o[l+(v<<2)>>2]=+(m[i+(v<<1)>>1]|0)*t*1.306562965*.125;v=r|3;o[l+(v<<2)>>2]=+(m[i+(v<<1)>>1]|0)*t*1.175875602*.125;u=v+1|0;o[l+(u<<2)>>2]=+(m[i+(u<<1)>>1]|0)*t*.125;u=v+2|0;o[l+(u<<2)>>2]=+(m[i+(u<<1)>>1]|0)*t*.785694958*.125;u=v+3|0;o[l+(u<<2)>>2]=+(m[i+(u<<1)>>1]|0)*t*.5411961*.125;u=r|7;o[l+(u<<2)>>2]=+(m[i+(u<<1)>>1]|0)*t*.275899379*.125;s=s+1|0;if((s|0)==8)break;else r=r+8|0}break}default:{r=k[a>>2]|0;k[r+20>>2]=49;qb[k[r>>2]&127](a);break b}}}while(0);e=e+1|0;if((e|0)>=(k[c>>2]|0))break;else{f=f+88|0;g=n;h=q}}return}function ho(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+4|0;c=nb[k[k[b>>2]>>2]&63](a,1,220)|0;k[a+468>>2]=c;k[c>>2]=69;k[c+8>>2]=70;if(!(k[a+224>>2]|0)){k[c+84>>2]=0;k[c+68>>2]=0;k[c+88>>2]=0;k[c+72>>2]=0;k[c+92>>2]=0;k[c+76>>2]=0;k[c+96>>2]=0;k[c+80>>2]=0;return}d=a+36|0;e=nb[k[k[b>>2]>>2]&63](a,1,k[d>>2]<<8)|0;k[a+160>>2]=e;if((k[d>>2]|0)>0){a=0;do{qr(e+(a<<8)|0,-1,256)|0;a=a+1|0}while((a|0)<(k[d>>2]|0))}d=c+48|0;k[d>>2]=0;k[d+4>>2]=0;k[d+8>>2]=0;k[d+12>>2]=0;return}function io(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=k[a+468>>2]|0;c=a+412|0;d=k[c>>2]|0;e=(d|0)==0;if(!(k[a+224>>2]|0)){if((e?(k[a+420>>2]|0)==0:0)?(k[a+424>>2]|0)==0:0){f=k[a+416>>2]|0;if((k[a+220>>2]|0)!=0|(f|0)<64?(f|0)!=(k[a+436>>2]|0):0)g=44}else g=44;if((g|0)==44){f=k[a>>2]|0;k[f+20>>2]=125;rb[k[f+4>>2]&31](a,-1)}f=a+436|0;k[b+4>>2]=(k[f>>2]|0)==63?68:69;h=a+340|0;if((k[h>>2]|0)>0){i=0;do{j=k[a+344+(i<<2)>>2]|0;l=k[j+20>>2]|0;oo(a,1,l,b+68+(l<<2)|0);if(k[f>>2]|0){l=k[j+24>>2]|0;oo(a,0,l,b+84+(l<<2)|0)}k[b+24+(i<<2)>>2]=0;i=i+1|0}while((i|0)<(k[h>>2]|0))}h=a+368|0;if((k[h>>2]|0)>0)m=0;else{n=b+16|0;k[n>>2]=0;o=b+12|0;k[o>>2]=0;p=b+40|0;k[p>>2]=0;q=a+280|0;r=k[q>>2]|0;s=b+44|0;k[s>>2]=r;return}do{i=k[a+344+(k[a+372+(m<<2)>>2]<<2)>>2]|0;k[b+100+(m<<2)>>2]=k[b+68+(k[i+20>>2]<<2)>>2];k[b+140+(m<<2)>>2]=k[b+84+(k[i+24>>2]<<2)>>2];a:do if(!(k[i+52>>2]|0))k[b+180+(m<<2)>>2]=0;else{l=k[i+40>>2]|0;j=k[i+36>>2]|0;switch(k[f>>2]|0){case 0:{k[b+180+(m<<2)>>2]=1;break a;break}case 3:{t=l+-1|0;u=j+-1|0;k[b+180+(m<<2)>>2]=(k[121260+((t>>>0>1?1:t)<<3)+((u>>>0>1?1:u)<<2)>>2]|0)+1;break a;break}case 8:{u=l+-1|0;t=j+-1|0;k[b+180+(m<<2)>>2]=(k[121276+((u>>>0>2?2:u)*12|0)+((t>>>0>2?2:t)<<2)>>2]|0)+1;break a;break}case 15:{t=l+-1|0;u=j+-1|0;k[b+180+(m<<2)>>2]=(k[121312+((t>>>0>3?3:t)<<4)+((u>>>0>3?3:u)<<2)>>2]|0)+1;break a;break}case 24:{u=l+-1|0;t=j+-1|0;k[b+180+(m<<2)>>2]=(k[121376+((u>>>0>4?4:u)*20|0)+((t>>>0>4?4:t)<<2)>>2]|0)+1;break a;break}case 35:{t=l+-1|0;u=j+-1|0;k[b+180+(m<<2)>>2]=(k[121476+((t>>>0>5?5:t)*24|0)+((u>>>0>5?5:u)<<2)>>2]|0)+1;break a;break}case 48:{u=l+-1|0;t=j+-1|0;k[b+180+(m<<2)>>2]=(k[121620+((u>>>0>6?6:u)*28|0)+((t>>>0>6?6:t)<<2)>>2]|0)+1;break a;break}default:{t=l+-1|0;l=j+-1|0;k[b+180+(m<<2)>>2]=(k[121816+((t>>>0>7?7:t)<<5)+((l>>>0>7?7:l)<<2)>>2]|0)+1;break a}}}while(0);m=m+1|0}while((m|0)<(k[h>>2]|0));n=b+16|0;k[n>>2]=0;o=b+12|0;k[o>>2]=0;p=b+40|0;k[p>>2]=0;q=a+280|0;r=k[q>>2]|0;s=b+44|0;k[s>>2]=r;return}h=a+416|0;m=k[h>>2]|0;if(e)if(!m)g=7;else g=11;else if(((m|0)>=(d|0)?(m|0)<=(k[a+436>>2]|0):0)?(k[a+340>>2]|0)==1:0)g=7;else g=11;do if((g|0)==7){m=k[a+420>>2]|0;if(m){e=m+-1|0;if((e|0)==(k[a+424>>2]|0))v=e;else{g=11;break}}else v=k[a+424>>2]|0;if((v|0)>13)g=11}while(0);if((g|0)==11){g=k[a>>2]|0;k[g+20>>2]=17;k[g+24>>2]=d;k[g+28>>2]=k[h>>2];k[g+32>>2]=k[a+420>>2];k[g+36>>2]=k[a+424>>2];qb[k[g>>2]&127](a)}g=a+340|0;d=k[g>>2]|0;if((d|0)>0){v=a+160|0;e=a+420|0;m=a+424|0;f=0;do{i=k[(k[a+344+(f<<2)>>2]|0)+4>>2]|0;l=k[v>>2]|0;t=k[c>>2]|0;if(t)if((k[l+(i<<8)>>2]|0)<0){j=k[a>>2]|0;k[j+20>>2]=118;k[j+24>>2]=i;k[j+28>>2]=0;rb[k[j+4>>2]&31](a,-1);w=k[c>>2]|0}else w=t;else w=0;if((w|0)<=(k[h>>2]|0)){t=w;while(1){j=l+(i<<8)+(t<<2)|0;u=k[j>>2]|0;if((k[e>>2]|0)!=(((u|0)<0?0:u)|0)){u=k[a>>2]|0;k[u+20>>2]=118;k[u+24>>2]=i;k[u+28>>2]=t;rb[k[u+4>>2]&31](a,-1)}k[j>>2]=k[m>>2];if((t|0)<(k[h>>2]|0))t=t+1|0;else break}}f=f+1|0;t=k[g>>2]|0}while((f|0)<(t|0));x=e;y=t}else{x=a+420|0;y=d}d=k[c>>2]|0;e=(d|0)==0;f=b+4|0;do if(!(k[x>>2]|0))if(e){k[f>>2]=64;break}else{k[f>>2]=65;break}else if(e){k[f>>2]=66;break}else{k[f>>2]=67;break}while(0);b:do if((y|0)>0){f=b+64|0;e=d;h=0;while(1){m=k[a+344+(h<<2)>>2]|0;if(!e){if(!(k[x>>2]|0)){w=k[m+20>>2]|0;oo(a,1,w,b+48+(w<<2)|0)}}else{w=k[m+24>>2]|0;m=b+48+(w<<2)|0;oo(a,0,w,m);k[f>>2]=k[m>>2]}k[b+24+(h<<2)>>2]=0;m=h+1|0;if((m|0)>=(k[g>>2]|0))break b;e=k[c>>2]|0;h=m}}while(0);k[b+20>>2]=0;n=b+16|0;k[n>>2]=0;o=b+12|0;k[o>>2]=0;p=b+40|0;k[p>>2]=0;q=a+280|0;r=k[q>>2]|0;s=b+44|0;k[s>>2]=r;return}function jo(a){a=a|0;var b=0,c=0;b=(k[a+468>>2]|0)+16|0;c=(k[a+464>>2]|0)+24|0;k[c>>2]=(k[c>>2]|0)+((k[b>>2]|0)/8|0);k[b>>2]=0;return}function ko(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=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;c=r;r=r+48|0;d=c+20|0;e=c;f=k[a+468>>2]|0;g=k[a+424>>2]|0;h=a+280|0;if((k[h>>2]|0)!=0?(i=f+44|0,(k[i>>2]|0)==0):0){m=f+16|0;n=k[a+464>>2]|0;o=n+24|0;k[o>>2]=(k[o>>2]|0)+((k[m>>2]|0)/8|0);k[m>>2]=0;if(!(ub[k[n+8>>2]&63](a)|0)){p=0;r=c;return p|0}n=a+340|0;if((k[n>>2]|0)>0){m=0;do{k[f+24+(m<<2)>>2]=0;m=m+1|0}while((m|0)<(k[n>>2]|0))}k[f+20>>2]=0;k[i>>2]=k[h>>2];if(!(k[a+440>>2]|0))k[f+40>>2]=0}if(!(k[f+40>>2]|0)){k[d+16>>2]=a;h=a+24|0;i=k[h>>2]|0;n=k[i>>2]|0;k[d>>2]=n;m=k[i+4>>2]|0;o=d+4|0;k[o>>2]=m;q=f+12|0;s=k[q>>2]|0;t=f+16|0;u=k[t>>2]|0;v=f+20|0;k[e>>2]=k[v>>2];k[e+4>>2]=k[v+4>>2];k[e+8>>2]=k[v+8>>2];k[e+12>>2]=k[v+12>>2];k[e+16>>2]=k[v+16>>2];w=a+368|0;do if((k[w>>2]|0)>0){x=d+8|0;y=d+12|0;z=u;A=0;B=s;while(1){C=k[b+(A<<2)>>2]|0;D=k[a+372+(A<<2)>>2]|0;E=k[f+48+(k[(k[a+344+(D<<2)>>2]|0)+20>>2]<<2)>>2]|0;if((z|0)<8){if(!(ro(d,B,z,0)|0)){p=0;F=27;break}G=k[x>>2]|0;H=k[y>>2]|0;if((H|0)<8){I=H;J=G;K=1;F=16}else{L=H;M=G;F=14}}else{L=z;M=B;F=14}if((F|0)==14){F=0;G=M>>L+-8&255;H=k[E+144+(G<<2)>>2]|0;if(!H){I=L;J=M;K=9;F=16}else{N=L-H|0;O=M;P=l[E+1168+G>>0]|0}}if((F|0)==16){F=0;G=so(d,J,I,E,K)|0;if((G|0)<0){p=0;F=27;break}N=k[y>>2]|0;O=k[x>>2]|0;P=G}if(!P){Q=N;R=O;S=0}else{if((N|0)<(P|0)){if(!(ro(d,O,N,P)|0)){p=0;F=27;break}T=k[y>>2]|0;U=k[x>>2]|0}else{T=N;U=O}G=T-P|0;E=k[122072+(P<<2)>>2]|0;H=U>>G&E;Q=G;R=U;S=H-((H|0)>(k[122072+(P+-1<<2)>>2]|0)?0:E)|0}E=e+4+(D<<2)|0;D=(k[E>>2]|0)+S|0;k[E>>2]=D;j[C>>1]=D<<g;A=A+1|0;if((A|0)>=(k[w>>2]|0)){V=Q;W=R;F=24;break}else{z=Q;B=R}}if((F|0)==24){X=k[h>>2]|0;Y=k[d>>2]|0;Z=k[o>>2]|0;_=V;$=W;break}else if((F|0)==27){r=c;return p|0}}else{X=i;Y=n;Z=m;_=u;$=s}while(0);k[X>>2]=Y;k[X+4>>2]=Z;k[q>>2]=$;k[t>>2]=_;k[v>>2]=k[e>>2];k[v+4>>2]=k[e+4>>2];k[v+8>>2]=k[e+8>>2];k[v+12>>2]=k[e+12>>2];k[v+16>>2]=k[e+16>>2]}e=f+44|0;k[e>>2]=(k[e>>2]|0)+-1;p=1;r=c;return p|0}function lo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=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;c=r;r=r+32|0;d=c;e=k[a+468>>2]|0;f=a+280|0;if((k[f>>2]|0)!=0?(g=e+44|0,(k[g>>2]|0)==0):0){h=e+16|0;i=k[a+464>>2]|0;m=i+24|0;k[m>>2]=(k[m>>2]|0)+((k[h>>2]|0)/8|0);k[h>>2]=0;if(!(ub[k[i+8>>2]&63](a)|0)){n=0;r=c;return n|0}i=a+340|0;if((k[i>>2]|0)>0){h=0;do{k[e+24+(h<<2)>>2]=0;h=h+1|0}while((h|0)<(k[i>>2]|0))}k[e+20>>2]=0;k[g>>2]=k[f>>2];if(!(k[a+440>>2]|0))k[e+40>>2]=0}if(!(k[e+40>>2]|0)){f=k[a+416>>2]|0;g=k[a+424>>2]|0;i=k[a+432>>2]|0;h=e+20|0;m=k[h>>2]|0;if(!m){k[d+16>>2]=a;o=a+24|0;p=k[o>>2]|0;k[d>>2]=k[p>>2];q=d+4|0;k[q>>2]=k[p+4>>2];p=e+12|0;s=k[p>>2]|0;t=e+16|0;u=k[t>>2]|0;v=k[b>>2]|0;b=k[e+64>>2]|0;w=k[a+412>>2]|0;a:do if((w|0)<=(f|0)){a=d+8|0;x=d+12|0;y=u;z=s;A=w;b:while(1){if((y|0)<8){if(!(ro(d,z,y,0)|0)){n=0;B=35;break}C=k[a>>2]|0;D=k[x>>2]|0;if((D|0)<8){E=D;F=C;G=1;B=18}else{H=D;I=C;B=16}}else{H=y;I=z;B=16}if((B|0)==16){B=0;C=I>>H+-8&255;D=k[b+144+(C<<2)>>2]|0;if(!D){E=H;F=I;G=9;B=18}else{J=H-D|0;K=I;L=l[b+1168+C>>0]|0}}if((B|0)==18){B=0;C=so(d,F,E,b,G)|0;if((C|0)<0){n=0;B=35;break}J=k[x>>2]|0;K=k[a>>2]|0;L=C}C=L>>4;D=L&15;if(!D){switch(C|0){case 0:{M=0;N=J;O=K;break a;break}case 15:break;default:{P=C;Q=J;R=K;B=26;break b}}S=J;T=K;U=A+15|0}else{V=C+A|0;if((J|0)<(D|0)){if(!(ro(d,K,J,D)|0)){n=0;B=35;break}W=k[x>>2]|0;X=k[a>>2]|0}else{W=J;X=K}C=W-D|0;Y=k[122072+(D<<2)>>2]|0;Z=X>>C&Y;j[v+(k[i+(V<<2)>>2]<<1)>>1]=Z-((Z|0)>(k[122072+(D+-1<<2)>>2]|0)?0:Y)<<g;S=C;T=X;U=V}if((U|0)<(f|0)){y=S;z=T;A=U+1|0}else{M=0;N=S;O=T;break a}}if((B|0)==26){A=1<<P;do if((Q|0)<(P|0))if(!(ro(d,R,Q,P)|0)){n=0;r=c;return n|0}else{_=k[x>>2]|0;$=k[a>>2]|0;break}else{_=Q;$=R}while(0);a=_-P|0;M=A+-1+($>>a&k[122072+(P<<2)>>2])|0;N=a;O=$;break}else if((B|0)==35){r=c;return n|0}}else{M=0;N=u;O=s}while(0);s=k[o>>2]|0;k[s>>2]=k[d>>2];k[s+4>>2]=k[q>>2];k[p>>2]=O;k[t>>2]=N;aa=M}else aa=m+-1|0;k[h>>2]=aa}aa=e+44|0;k[aa>>2]=(k[aa>>2]|0)+-1;n=1;r=c;return n|0}function mo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=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;c=r;r=r+32|0;d=c;e=k[a+468>>2]|0;f=a+280|0;if((k[f>>2]|0)!=0?(g=e+44|0,(k[g>>2]|0)==0):0){h=e+16|0;i=k[a+464>>2]|0;l=i+24|0;k[l>>2]=(k[l>>2]|0)+((k[h>>2]|0)/8|0);k[h>>2]=0;if(!(ub[k[i+8>>2]&63](a)|0)){n=0;r=c;return n|0}i=a+340|0;if((k[i>>2]|0)>0){h=0;do{k[e+24+(h<<2)>>2]=0;h=h+1|0}while((h|0)<(k[i>>2]|0))}k[e+20>>2]=0;k[g>>2]=k[f>>2];if(!(k[a+440>>2]|0))k[e+40>>2]=0}k[d+16>>2]=a;f=a+24|0;g=k[f>>2]|0;i=k[g>>2]|0;k[d>>2]=i;h=k[g+4>>2]|0;l=d+4|0;k[l>>2]=h;o=e+12|0;p=k[o>>2]|0;q=e+16|0;s=k[q>>2]|0;t=1<<k[a+424>>2];u=a+368|0;do if((k[u>>2]|0)>0){a=d+8|0;v=d+12|0;w=s;x=0;y=p;while(1){if((w|0)<1){if(!(ro(d,y,w,1)|0)){n=0;z=18;break}A=k[v>>2]|0;B=k[a>>2]|0}else{A=w;B=y}C=A+-1|0;if(1<<C&B){D=k[b+(x<<2)>>2]|0;j[D>>1]=m[D>>1]|0|t}x=x+1|0;if((x|0)>=(k[u>>2]|0)){E=C;F=B;z=16;break}else{w=C;y=B}}if((z|0)==16){G=k[f>>2]|0;H=k[d>>2]|0;I=k[l>>2]|0;J=E;K=F;break}else if((z|0)==18){r=c;return n|0}}else{G=g;H=i;I=h;J=s;K=p}while(0);k[G>>2]=H;k[G+4>>2]=I;k[o>>2]=K;k[q>>2]=J;J=e+44|0;k[J>>2]=(k[J>>2]|0)+-1;n=1;r=c;return n|0}function no(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=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;c=r;r=r+288|0;d=c;e=c+24|0;f=k[a+468>>2]|0;g=a+280|0;if((k[g>>2]|0)!=0?(h=f+44|0,(k[h>>2]|0)==0):0){i=f+16|0;m=k[a+464>>2]|0;n=m+24|0;k[n>>2]=(k[n>>2]|0)+((k[i>>2]|0)/8|0);k[i>>2]=0;if(!(ub[k[m+8>>2]&63](a)|0)){o=0;r=c;return o|0}m=a+340|0;if((k[m>>2]|0)>0){i=0;do{k[f+24+(i<<2)>>2]=0;i=i+1|0}while((i|0)<(k[m>>2]|0))}k[f+20>>2]=0;k[h>>2]=k[g>>2];if(!(k[a+440>>2]|0))k[f+40>>2]=0}do if(!(k[f+40>>2]|0)){g=k[a+416>>2]|0;h=k[a+424>>2]|0;m=1<<h;i=-1<<h;h=k[a+432>>2]|0;k[d+16>>2]=a;n=a+24|0;p=k[n>>2]|0;k[d>>2]=k[p>>2];q=d+4|0;k[q>>2]=k[p+4>>2];p=f+12|0;s=k[p>>2]|0;t=f+16|0;u=k[t>>2]|0;v=f+20|0;w=k[v>>2]|0;x=k[b>>2]|0;y=k[f+64>>2]|0;z=k[a+412>>2]|0;A=d+8|0;B=d+12|0;a:do if(!w){C=u;D=s;E=z;F=0;b:while(1){if((C|0)<8){if(!(ro(d,D,C,0)|0)){G=F;break a}H=k[A>>2]|0;I=k[B>>2]|0;if((I|0)<8){J=I;K=H;L=1;M=17}else{N=I;O=H;M=15}}else{N=C;O=D;M=15}if((M|0)==15){M=0;H=O>>N+-8&255;I=k[y+144+(H<<2)>>2]|0;if(!I){J=N;K=O;L=9;M=17}else{P=N-I|0;Q=O;R=l[y+1168+H>>0]|0}}if((M|0)==17){M=0;H=so(d,K,J,y,L)|0;if((H|0)<0){G=F;break a}P=k[B>>2]|0;Q=k[A>>2]|0;R=H}H=R>>4;switch(R&15|0){case 0:{if((H|0)==15){S=P;T=Q;U=15;V=0}else{W=H;X=P;Y=Q;Z=E;_=F;break b}break}case 1:{M=21;break}default:{I=k[a>>2]|0;k[I+20>>2]=121;rb[k[I+4>>2]&31](a,-1);M=21}}if((M|0)==21){M=0;if((P|0)<1){if(!(ro(d,Q,P,1)|0)){G=F;break a}$=k[B>>2]|0;aa=k[A>>2]|0}else{$=P;aa=Q}I=$+-1|0;S=I;T=aa;U=H;V=(1<<I&aa|0)==0?i:m}I=S;H=T;ba=E;ca=U;c:while(1){da=x+(k[h+(ba<<2)>>2]<<1)|0;do if(!(j[da>>1]|0))if((ca|0)<1){ea=I;fa=H;ga=ba;break c}else{ha=I;ia=H;ja=ca+-1|0}else{if((I|0)<1){if(!(ro(d,H,I,1)|0)){G=F;break a}ka=k[B>>2]|0;la=k[A>>2]|0}else{ka=I;la=H}ma=ka+-1|0;if((1<<ma&la|0)!=0?(na=j[da>>1]|0,oa=na<<16>>16,(oa&m|0)==0):0)if(na<<16>>16>-1){j[da>>1]=oa+m;ha=ma;ia=la;ja=ca;break}else{j[da>>1]=oa+i;ha=ma;ia=la;ja=ca;break}else{ha=ma;ia=la;ja=ca}}while(0);da=ba+1|0;if((ba|0)<(g|0)){I=ha;H=ia;ba=da;ca=ja}else{ea=ha;fa=ia;ga=da;break}}if(!V)pa=F;else{ca=k[h+(ga<<2)>>2]|0;j[x+(ca<<1)>>1]=V;k[e+(F<<2)>>2]=ca;pa=F+1|0}if((ga|0)<(g|0)){C=ea;D=fa;E=ga+1|0;F=pa}else{qa=0;ra=ea;sa=fa;M=58;break a}}F=1<<W;if(W){if((X|0)<(W|0)){if(!(ro(d,Y,X,W)|0)){G=_;break}ta=k[B>>2]|0;ua=k[A>>2]|0}else{ta=X;ua=Y}E=ta-W|0;D=(ua>>E&k[122072+(W<<2)>>2])+F|0;if(!D){qa=0;ra=E;sa=ua;M=58}else{va=D;wa=E;xa=ua;ya=Z;za=_;M=46}}else{va=F;wa=X;xa=Y;ya=Z;za=_;M=46}}else{va=w;wa=u;xa=s;ya=z;za=0;M=46}while(0);d:do if((M|0)==46){z=wa;s=xa;u=ya;while(1){w=x+(k[h+(u<<2)>>2]<<1)|0;do if(j[w>>1]|0){if((z|0)<1){if(!(ro(d,s,z,1)|0)){G=za;break d}Aa=k[B>>2]|0;Ba=k[A>>2]|0}else{Aa=z;Ba=s}y=Aa+-1|0;if((1<<y&Ba|0)!=0?(F=j[w>>1]|0,E=F<<16>>16,(E&m|0)==0):0)if(F<<16>>16>-1){j[w>>1]=E+m;Ca=y;Da=Ba;break}else{j[w>>1]=E+i;Ca=y;Da=Ba;break}else{Ca=y;Da=Ba}}else{Ca=z;Da=s}while(0);if((u|0)<(g|0)){z=Ca;s=Da;u=u+1|0}else{Ea=Ca;Fa=Da;break}}qa=va+-1|0;ra=Ea;sa=Fa;M=58}while(0);if((M|0)==58){g=k[n>>2]|0;k[g>>2]=k[d>>2];k[g+4>>2]=k[q>>2];k[p>>2]=sa;k[t>>2]=ra;k[v>>2]=qa;break}if(!G){o=0;r=c;return o|0}else Ga=G;do{Ga=Ga+-1|0;j[x+(k[e+(Ga<<2)>>2]<<1)>>1]=0}while((Ga|0)!=0);o=0;r=c;return o|0}while(0);Ga=f+44|0;k[Ga>>2]=(k[Ga>>2]|0)+-1;o=1;r=c;return o|0}function oo(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,j=0,m=0,n=0,o=0,p=0,q=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=r;r=r+1296|0;f=e+1028|0;g=e;if(c>>>0>3){h=k[a>>2]|0;k[h+20>>2]=52;k[h+24>>2]=c;qb[k[h>>2]&127](a)}h=(b|0)!=0;b=k[(h?a+180+(c<<2)|0:a+196+(c<<2)|0)>>2]|0;if(!b){j=k[a>>2]|0;k[j+20>>2]=52;k[j+24>>2]=c;qb[k[j>>2]&127](a)}j=k[d>>2]|0;if(!j){c=nb[k[k[a+4>>2]>>2]&63](a,1,1424)|0;k[d>>2]=c;m=a;n=c}else{m=a;n=j}k[n+140>>2]=b;j=1;c=0;while(1){d=i[b+j>>0]|0;o=d&255;p=o+c|0;if((p|0)>256){q=k[a>>2]|0;k[q+20>>2]=9;qb[k[q>>2]&127](m)}if(!(d<<24>>24))s=c;else{qr(f+c|0,j&255|0,o|0)|0;s=p}j=j+1|0;if((j|0)==17){t=s;break}else c=s}i[f+t>>0]=0;s=i[f>>0]|0;if(!(s<<24>>24)){u=1;v=0}else{c=s;j=0;p=0;o=s<<24>>24;while(1){if((c<<24>>24|0)==(o|0)){s=j;d=p;while(1){q=d+1|0;k[g+(d<<2)>>2]=s;w=s+1|0;x=i[f+q>>0]|0;if((x<<24>>24|0)==(o|0)){s=w;d=q}else{y=x;z=w;A=q;break}}}else{y=c;z=j;A=p}if((z|0)>=(1<<o|0)){d=k[a>>2]|0;k[d+20>>2]=9;qb[k[d>>2]&127](m)}if(!(y<<24>>24)){u=1;v=0;break}else{c=y;j=z<<1;p=A;o=o+1|0}}}while(1){o=b+u|0;if(!(i[o>>0]|0)){B=-1;C=v}else{k[n+72+(u<<2)>>2]=v-(k[g+(v<<2)>>2]|0);A=(l[o>>0]|0)+v|0;B=k[g+(A+-1<<2)>>2]|0;C=A}k[n+(u<<2)>>2]=B;u=u+1|0;if((u|0)==17)break;else v=C}k[n+68>>2]=1048575;qr(n+144|0,0,1024)|0;C=1;v=0;while(1){u=b+C|0;if(!(i[u>>0]|0))D=v;else{B=8-C|0;A=1<<B;o=1;p=v;while(1){z=b+17+p|0;j=A;y=k[g+(p<<2)>>2]<<B;while(1){k[n+144+(y<<2)>>2]=C;i[n+1168+y>>0]=i[z>>0]|0;if((j|0)>1){j=j+-1|0;y=y+1|0}else break}y=p+1|0;if((o|0)<(l[u>>0]|0)){o=o+1|0;p=y}else{D=y;break}}}C=C+1|0;if((C|0)==9)break;else v=D}if(h&(t|0)>0)E=0;else{r=e;return}do{if((l[b+17+E>>0]|0)>15){h=k[a>>2]|0;k[h+20>>2]=9;qb[k[h>>2]&127](m)}E=E+1|0}while((E|0)!=(t|0));r=e;return}function po(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=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;c=r;r=r+48|0;d=c+20|0;e=c;f=k[a+468>>2]|0;g=a+280|0;if((k[g>>2]|0)!=0?(h=f+44|0,(k[h>>2]|0)==0):0){i=f+16|0;m=k[a+464>>2]|0;n=m+24|0;k[n>>2]=(k[n>>2]|0)+((k[i>>2]|0)/8|0);k[i>>2]=0;if(!(ub[k[m+8>>2]&63](a)|0)){o=0;r=c;return o|0}m=a+340|0;if((k[m>>2]|0)>0){i=0;do{k[f+24+(i<<2)>>2]=0;i=i+1|0}while((i|0)<(k[m>>2]|0))}k[f+20>>2]=0;k[h>>2]=k[g>>2];if(!(k[a+440>>2]|0))k[f+40>>2]=0}if(!(k[f+40>>2]|0)){k[d+16>>2]=a;g=a+24|0;h=k[g>>2]|0;m=k[h>>2]|0;k[d>>2]=m;i=k[h+4>>2]|0;n=d+4|0;k[n>>2]=i;p=f+12|0;q=k[p>>2]|0;s=f+16|0;t=k[s>>2]|0;u=f+20|0;k[e>>2]=k[u>>2];k[e+4>>2]=k[u+4>>2];k[e+8>>2]=k[u+8>>2];k[e+12>>2]=k[u+12>>2];k[e+16>>2]=k[u+16>>2];v=a+368|0;do if((k[v>>2]|0)>0){w=d+8|0;x=d+12|0;y=t;z=0;A=q;a:while(1){B=k[b+(z<<2)>>2]|0;C=k[f+100+(z<<2)>>2]|0;if((y|0)<8){if(!(ro(d,A,y,0)|0)){o=0;D=64;break}E=k[w>>2]|0;F=k[x>>2]|0;if((F|0)<8){G=F;H=E;I=1;D=16}else{J=F;K=E;D=14}}else{J=y;K=A;D=14}if((D|0)==14){D=0;E=K>>J+-8&255;F=k[C+144+(E<<2)>>2]|0;if(!F){G=J;H=K;I=9;D=16}else{L=J-F|0;M=K;N=l[C+1168+E>>0]|0}}if((D|0)==16){D=0;E=so(d,H,G,C,I)|0;if((E|0)<0){o=0;D=64;break}L=k[x>>2]|0;M=k[w>>2]|0;N=E}E=k[f+140+(z<<2)>>2]|0;C=k[f+180+(z<<2)>>2]|0;F=(N|0)!=0;b:do if(!C)if(F){if((L|0)<(N|0)){if(!(ro(d,M,L,N)|0)){o=0;D=64;break a}O=k[x>>2]|0;P=k[w>>2]|0}else{O=L;P=M}Q=O-N|0;R=P;S=1;D=46}else{Q=L;R=M;S=1;D=46}else{if(F){if((L|0)<(N|0)){if(!(ro(d,M,L,N)|0)){o=0;D=64;break a}T=k[x>>2]|0;U=k[w>>2]|0}else{T=L;U=M}V=T-N|0;W=k[122072+(N<<2)>>2]|0;X=U>>V&W;Y=V;Z=U;_=X-((X|0)>(k[122072+(N+-1<<2)>>2]|0)?0:W)|0}else{Y=L;Z=M;_=0}W=e+4+(k[a+372+(z<<2)>>2]<<2)|0;X=(k[W>>2]|0)+_|0;k[W>>2]=X;j[B>>1]=X;if((C|0)>1){X=Y;W=Z;V=1;while(1){if((X|0)<8){if(!(ro(d,W,X,0)|0)){o=0;D=64;break a}$=k[w>>2]|0;aa=k[x>>2]|0;if((aa|0)<8){ba=aa;ca=$;da=1;D=30}else{ea=aa;fa=$;D=28}}else{ea=X;fa=W;D=28}if((D|0)==28){D=0;$=fa>>ea+-8&255;aa=k[E+144+($<<2)>>2]|0;if(!aa){ba=ea;ca=fa;da=9;D=30}else{ga=ea-aa|0;ha=fa;ia=l[E+1168+$>>0]|0}}if((D|0)==30){D=0;$=so(d,ca,ba,E,da)|0;if(($|0)<0){o=0;D=64;break a}ga=k[x>>2]|0;ha=k[w>>2]|0;ia=$}$=ia>>4;aa=ia&15;if(!aa){if(($|0)!=15){ja=ga;ka=ha;break b}la=ga;ma=ha;na=V+15|0}else{oa=$+V|0;if((ga|0)<(aa|0)){if(!(ro(d,ha,ga,aa)|0)){o=0;D=64;break a}pa=k[x>>2]|0;qa=k[w>>2]|0}else{pa=ga;qa=ha}$=pa-aa|0;ra=k[122072+(aa<<2)>>2]|0;sa=qa>>$&ra;j[B+(k[119984+(oa<<2)>>2]<<1)>>1]=sa-((sa|0)>(k[122072+(aa+-1<<2)>>2]|0)?0:ra);la=$;ma=qa;na=oa}oa=na+1|0;if((oa|0)<(C|0)){X=la;W=ma;V=oa}else{ta=oa;ua=la;va=ma;break}}if((ta|0)<64){Q=ua;R=va;S=ta;D=46}else{ja=ua;ka=va}}else{Q=Y;R=Z;S=1;D=46}}while(0);c:do if((D|0)==46)while(1){D=0;if((Q|0)<8){if(!(ro(d,R,Q,0)|0)){o=0;D=64;break a}C=k[w>>2]|0;B=k[x>>2]|0;if((B|0)<8){wa=B;xa=C;ya=1;D=51}else{za=B;Aa=C;D=49}}else{za=Q;Aa=R;D=49}if((D|0)==49){D=0;C=Aa>>za+-8&255;B=k[E+144+(C<<2)>>2]|0;if(!B){wa=za;xa=Aa;ya=9;D=51}else{Ba=za-B|0;Ca=Aa;Da=l[E+1168+C>>0]|0}}if((D|0)==51){D=0;C=so(d,xa,wa,E,ya)|0;if((C|0)<0){o=0;D=64;break a}Ba=k[x>>2]|0;Ca=k[w>>2]|0;Da=C}C=Da>>4;B=Da&15;if(!B)if((C|0)==15){Ea=15;Fa=Ba;Ga=Ca}else{ja=Ba;ka=Ca;break c}else{if((Ba|0)<(B|0)){if(!(ro(d,Ca,Ba,B)|0)){o=0;D=64;break a}Ha=k[x>>2]|0;Ia=k[w>>2]|0}else{Ha=Ba;Ia=Ca}Ea=C;Fa=Ha-B|0;Ga=Ia}S=S+1+Ea|0;if((S|0)>=64){ja=Fa;ka=Ga;break}else{Q=Fa;R=Ga;D=46}}while(0);z=z+1|0;if((z|0)>=(k[v>>2]|0)){Ja=ja;Ka=ka;D=61;break}else{y=ja;A=ka}}if((D|0)==61){La=k[g>>2]|0;Ma=k[d>>2]|0;Na=k[n>>2]|0;Oa=Ja;Pa=Ka;break}else if((D|0)==64){r=c;return o|0}}else{La=h;Ma=m;Na=i;Oa=t;Pa=q}while(0);k[La>>2]=Ma;k[La+4>>2]=Na;k[p>>2]=Pa;k[s>>2]=Oa;k[u>>2]=k[e>>2];k[u+4>>2]=k[e+4>>2];k[u+8>>2]=k[e+8>>2];k[u+12>>2]=k[e+12>>2];k[u+16>>2]=k[e+16>>2]}e=f+44|0;k[e>>2]=(k[e>>2]|0)+-1;o=1;r=c;return o|0}function qo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=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;c=r;r=r+48|0;d=c+20|0;e=c;f=k[a+468>>2]|0;g=a+280|0;if((k[g>>2]|0)!=0?(h=f+44|0,(k[h>>2]|0)==0):0){i=f+16|0;m=k[a+464>>2]|0;n=m+24|0;k[n>>2]=(k[n>>2]|0)+((k[i>>2]|0)/8|0);k[i>>2]=0;if(!(ub[k[m+8>>2]&63](a)|0)){o=0;r=c;return o|0}m=a+340|0;if((k[m>>2]|0)>0){i=0;do{k[f+24+(i<<2)>>2]=0;i=i+1|0}while((i|0)<(k[m>>2]|0))}k[f+20>>2]=0;k[h>>2]=k[g>>2];if(!(k[a+440>>2]|0))k[f+40>>2]=0}if(!(k[f+40>>2]|0)){g=k[a+432>>2]|0;h=k[a+436>>2]|0;k[d+16>>2]=a;m=a+24|0;i=k[m>>2]|0;n=k[i>>2]|0;k[d>>2]=n;p=k[i+4>>2]|0;q=d+4|0;k[q>>2]=p;s=f+12|0;t=k[s>>2]|0;u=f+16|0;v=k[u>>2]|0;w=f+20|0;k[e>>2]=k[w>>2];k[e+4>>2]=k[w+4>>2];k[e+8>>2]=k[w+8>>2];k[e+12>>2]=k[w+12>>2];k[e+16>>2]=k[w+16>>2];x=a+368|0;do if((k[x>>2]|0)>0){y=d+8|0;z=d+12|0;A=v;B=0;C=t;a:while(1){D=k[b+(B<<2)>>2]|0;E=k[f+100+(B<<2)>>2]|0;if((A|0)<8){if(!(ro(d,C,A,0)|0)){o=0;F=64;break}G=k[y>>2]|0;H=k[z>>2]|0;if((H|0)<8){I=H;J=G;K=1;F=16}else{L=H;M=G;F=14}}else{L=A;M=C;F=14}if((F|0)==14){F=0;G=M>>L+-8&255;H=k[E+144+(G<<2)>>2]|0;if(!H){I=L;J=M;K=9;F=16}else{N=L-H|0;O=M;P=l[E+1168+G>>0]|0}}if((F|0)==16){F=0;G=so(d,J,I,E,K)|0;if((G|0)<0){o=0;F=64;break}N=k[z>>2]|0;O=k[y>>2]|0;P=G}G=k[f+140+(B<<2)>>2]|0;E=k[f+180+(B<<2)>>2]|0;H=(P|0)!=0;b:do if(!E)if(H){if((N|0)<(P|0)){if(!(ro(d,O,N,P)|0)){o=0;F=64;break a}Q=k[z>>2]|0;R=k[y>>2]|0}else{Q=N;R=O}S=Q-P|0;T=R;U=1;F=45}else{S=N;T=O;U=1;F=45}else{if(H){if((N|0)<(P|0)){if(!(ro(d,O,N,P)|0)){o=0;F=64;break a}V=k[z>>2]|0;W=k[y>>2]|0}else{V=N;W=O}X=V-P|0;Y=k[122072+(P<<2)>>2]|0;Z=W>>X&Y;_=X;$=W;aa=Z-((Z|0)>(k[122072+(P+-1<<2)>>2]|0)?0:Y)|0}else{_=N;$=O;aa=0}Y=e+4+(k[a+372+(B<<2)>>2]<<2)|0;Z=(k[Y>>2]|0)+aa|0;k[Y>>2]=Z;j[D>>1]=Z;if((E|0)>1){Z=_;Y=$;X=1;while(1){if((Z|0)<8){if(!(ro(d,Y,Z,0)|0)){o=0;F=64;break a}ba=k[y>>2]|0;ca=k[z>>2]|0;if((ca|0)<8){da=ca;ea=ba;fa=1;F=30}else{ga=ca;ha=ba;F=28}}else{ga=Z;ha=Y;F=28}if((F|0)==28){F=0;ba=ha>>ga+-8&255;ca=k[G+144+(ba<<2)>>2]|0;if(!ca){da=ga;ea=ha;fa=9;F=30}else{ia=ga-ca|0;ja=ha;ka=l[G+1168+ba>>0]|0}}if((F|0)==30){F=0;ba=so(d,ea,da,G,fa)|0;if((ba|0)<0){o=0;F=64;break a}ia=k[z>>2]|0;ja=k[y>>2]|0;ka=ba}ba=ka>>4;ca=ka&15;if(!ca){if((ba|0)!=15){la=ia;ma=ja;break b}na=ia;oa=ja;pa=X+15|0}else{qa=ba+X|0;if((ia|0)<(ca|0)){if(!(ro(d,ja,ia,ca)|0)){o=0;F=64;break a}ra=k[z>>2]|0;sa=k[y>>2]|0}else{ra=ia;sa=ja}ba=ra-ca|0;ta=k[122072+(ca<<2)>>2]|0;ua=sa>>ba&ta;j[D+(k[g+(qa<<2)>>2]<<1)>>1]=ua-((ua|0)>(k[122072+(ca+-1<<2)>>2]|0)?0:ta);na=ba;oa=sa;pa=qa}qa=pa+1|0;if((qa|0)<(E|0)){Z=na;Y=oa;X=qa}else{S=na;T=oa;U=qa;F=45;break}}}else{S=_;T=$;U=1;F=45}}while(0);c:do if((F|0)==45){F=0;if((U|0)>(h|0)){la=S;ma=T}else{E=S;D=T;H=U;while(1){if((E|0)<8){if(!(ro(d,D,E,0)|0)){o=0;F=64;break a}X=k[y>>2]|0;Y=k[z>>2]|0;if((Y|0)<8){va=Y;wa=X;xa=1;F=51}else{ya=Y;za=X;F=49}}else{ya=E;za=D;F=49}if((F|0)==49){F=0;X=za>>ya+-8&255;Y=k[G+144+(X<<2)>>2]|0;if(!Y){va=ya;wa=za;xa=9;F=51}else{Aa=ya-Y|0;Ba=za;Ca=l[G+1168+X>>0]|0}}if((F|0)==51){F=0;X=so(d,wa,va,G,xa)|0;if((X|0)<0){o=0;F=64;break a}Aa=k[z>>2]|0;Ba=k[y>>2]|0;Ca=X}X=Ca>>4;Y=Ca&15;if(!Y)if((X|0)==15){Da=15;Ea=Aa;Fa=Ba}else{la=Aa;ma=Ba;break c}else{if((Aa|0)<(Y|0)){if(!(ro(d,Ba,Aa,Y)|0)){o=0;F=64;break a}Ga=k[z>>2]|0;Ha=k[y>>2]|0}else{Ga=Aa;Ha=Ba}Da=X;Ea=Ga-Y|0;Fa=Ha}H=H+1+Da|0;if((H|0)>(h|0)){la=Ea;ma=Fa;break}else{E=Ea;D=Fa}}}}while(0);B=B+1|0;if((B|0)>=(k[x>>2]|0)){Ia=la;Ja=ma;F=61;break}else{A=la;C=ma}}if((F|0)==61){Ka=k[m>>2]|0;La=k[d>>2]|0;Ma=k[q>>2]|0;Na=Ia;Oa=Ja;break}else if((F|0)==64){r=c;return o|0}}else{Ka=i;La=n;Ma=p;Na=v;Oa=t}while(0);k[Ka>>2]=La;k[Ka+4>>2]=Ma;k[s>>2]=Oa;k[u>>2]=Na;k[w>>2]=k[e>>2];k[w+4>>2]=k[e+4>>2];k[w+8>>2]=k[e+8>>2];k[w+12>>2]=k[e+12>>2];k[w+16>>2]=k[e+16>>2]}e=f+44|0;k[e>>2]=(k[e>>2]|0)+-1;o=1;r=c;return o|0}function ro(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,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;e=k[a>>2]|0;f=a+4|0;g=k[f>>2]|0;h=k[a+16>>2]|0;j=h+440|0;a:do if(!(k[j>>2]|0))if((c|0)<25){l=h+24|0;m=b;n=c;o=g;p=e;b:while(1){if(!o){if(!(ub[k[(k[l>>2]|0)+12>>2]&63](h)|0)){q=0;r=19;break}s=k[l>>2]|0;t=k[s+4>>2]|0;u=k[s>>2]|0}else{t=o;u=p}s=t+-1|0;v=u+1|0;w=i[u>>0]|0;x=w&255;c:do if(w<<24>>24==-1){y=s;z=v;while(1){if(!y){if(!(ub[k[(k[l>>2]|0)+12>>2]&63](h)|0)){q=0;r=19;break b}A=k[l>>2]|0;B=k[A+4>>2]|0;C=k[A>>2]|0}else{B=y;C=z}A=B+-1|0;D=C+1|0;E=i[C>>0]|0;switch(E<<24>>24){case 0:{F=A;G=255;H=D;break c;break}case -1:{y=A;z=D;break}default:{I=m;J=n;K=A;L=D;M=E;r=12;break b}}}}else{F=s;G=x;H=v}while(0);v=G|m<<8;x=n+8|0;if((x|0)<25){m=v;n=x;o=F;p=H}else{N=v;O=x;P=F;Q=H;break a}}if((r|0)==12){k[j>>2]=M&255;R=I;S=J;T=K;U=L;r=14;break}else if((r|0)==19)return q|0}else{N=b;O=c;P=g;Q=e}else{R=b;S=c;T=g;U=e;r=14}while(0);if((r|0)==14)if((S|0)<(d|0)){d=h+468|0;if(!(k[(k[d>>2]|0)+40>>2]|0)){r=k[h>>2]|0;k[r+20>>2]=120;rb[k[r+4>>2]&31](h,-1);k[(k[d>>2]|0)+40>>2]=1}N=R<<25-S;O=25;P=T;Q=U}else{N=R;O=S;P=T;Q=U}k[a>>2]=Q;k[f>>2]=P;k[a+8>>2]=N;k[a+12>>2]=O;q=1;return q|0}function so(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;do if((c|0)<(e|0))if(!(ro(a,b,c,e)|0)){f=-1;return f|0}else{g=k[a+8>>2]|0;h=k[a+12>>2]|0;break}else{g=b;h=c}while(0);c=h-e|0;h=g>>c&k[122072+(e<<2)>>2];b=a+8|0;i=a+12|0;a:do if((h|0)>(k[d+(e<<2)>>2]|0)){j=g;m=c;n=h;o=e;while(1){p=n<<1;if((m|0)<1){if(!(ro(a,j,m,1)|0)){f=-1;break}q=k[b>>2]|0;r=k[i>>2]|0}else{q=j;r=m}s=r+-1|0;t=q>>>s&1|p;p=o+1|0;if((t|0)>(k[d+(p<<2)>>2]|0)){j=q;m=s;n=t;o=p}else{u=q;v=s;w=t;x=p;break a}}return f|0}else{u=g;v=c;w=h;x=e}while(0);k[b>>2]=u;k[i>>2]=v;if((x|0)>16){v=k[a+16>>2]|0;a=k[v>>2]|0;k[a+20>>2]=121;rb[k[a+4>>2]&31](v,-1);f=0;return f|0}else{f=l[(k[d+72+(x<<2)>>2]|0)+w+((k[d+140>>2]|0)+17)>>0]|0;return f|0}return 0}function to(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;c=a+4|0;d=nb[k[k[c>>2]>>2]&63](a,1,80)|0;e=a+448|0;k[e>>2]=d;k[d>>2]=19;if(b){b=k[a>>2]|0;k[b+20>>2]=3;qb[k[b>>2]&127](a)}b=a+328|0;f=k[b>>2]|0;if(!(k[(k[a+476>>2]|0)+8>>2]|0)){g=a+36|0;h=g;i=k[g>>2]|0;j=f;l=f}else{if((f|0)<2){g=k[a>>2]|0;k[g+20>>2]=48;qb[k[g>>2]&127](a);m=k[b>>2]|0}else m=f;f=k[e>>2]|0;e=a+36|0;g=nb[k[k[c>>2]>>2]&63](a,1,k[e>>2]<<3)|0;n=f+56|0;k[n>>2]=g;o=k[e>>2]|0;p=f+60|0;k[p>>2]=g+(o<<2);if((o|0)>0){g=m+4|0;m=0;f=k[a+216>>2]|0;while(1){q=ha(k[f+40>>2]|0,k[f+12>>2]|0)|0;r=(q|0)/(k[b>>2]|0)|0;q=ha(r,g)|0;s=nb[k[k[c>>2]>>2]&63](a,1,q<<3)|0;k[(k[n>>2]|0)+(m<<2)>>2]=s+(r<<2);k[(k[p>>2]|0)+(m<<2)>>2]=s+(q+r<<2);m=m+1|0;r=k[e>>2]|0;if((m|0)>=(r|0)){t=r;break}else f=f+88|0}}else t=o;o=k[b>>2]|0;h=e;i=t;j=o;l=o+2|0}if((i|0)<=0)return;i=d+8|0;d=j;j=0;o=k[a+216>>2]|0;while(1){t=(ha(k[o+40>>2]|0,k[o+12>>2]|0)|0)/(d|0)|0;e=ha(k[o+36>>2]|0,k[o+28>>2]|0)|0;f=ha(t,l)|0;t=xb[k[(k[c>>2]|0)+8>>2]&63](a,1,e,f)|0;k[i+(j<<2)>>2]=t;t=j+1|0;if((t|0)>=(k[h>>2]|0))break;d=k[b>>2]|0;j=t;o=o+88|0}return}function uo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;c=k[a+448>>2]|0;switch(b|0){case 0:{b=c+4|0;if(!(k[(k[a+476>>2]|0)+8>>2]|0))k[b>>2]=27;else{k[b>>2]=26;b=k[a+328>>2]|0;d=k[a+36>>2]|0;if((d|0)>0){e=c+56|0;f=c+60|0;g=b+2|0;h=b+-2|0;i=0;j=k[a+216>>2]|0;while(1){l=(ha(k[j+40>>2]|0,k[j+12>>2]|0)|0)/(b|0)|0;m=k[(k[e>>2]|0)+(i<<2)>>2]|0;n=k[(k[f>>2]|0)+(i<<2)>>2]|0;o=k[c+8+(i<<2)>>2]|0;p=ha(l,g)|0;if((p|0)>0){q=0;do{r=k[o+(q<<2)>>2]|0;k[n+(q<<2)>>2]=r;k[m+(q<<2)>>2]=r;q=q+1|0}while((q|0)!=(p|0))}p=l<<1;if((l|0)>0){q=ha(l,b)|0;r=ha(l,h)|0;s=0;do{t=s+q|0;u=s+r|0;k[n+(u<<2)>>2]=k[o+(t<<2)>>2];k[n+(t<<2)>>2]=k[o+(u<<2)>>2];s=s+1|0}while((s|0)<(p|0));p=0;do{k[m+(p-l<<2)>>2]=k[m>>2];p=p+1|0}while((p|0)!=(l|0))}i=i+1|0;if((i|0)==(d|0))break;else j=j+88|0}}k[c+64>>2]=0;k[c+68>>2]=0;k[c+76>>2]=0}k[c+48>>2]=0;k[c+52>>2]=0;return}case 2:{k[c+4>>2]=28;return}default:{c=k[a>>2]|0;k[c+20>>2]=3;qb[k[c>>2]&127](a);return}}}function vo(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=a+448|0;f=k[e>>2]|0;g=f+48|0;do if(!(k[g>>2]|0))if(!(yb[k[(k[a+452>>2]|0)+12>>2]&127](a,k[f+56+(k[f+64>>2]<<2)>>2]|0)|0))return;else{k[g>>2]=1;h=f+76|0;k[h>>2]=(k[h>>2]|0)+1;break}while(0);h=f+68|0;switch(k[h>>2]|0){case 2:{i=f+52|0;j=f+72|0;ob[k[(k[a+456>>2]|0)+4>>2]&15](a,k[f+56+(k[f+64>>2]<<2)>>2]|0,i,k[j>>2]|0,b,c,d);if((k[i>>2]|0)>>>0<(k[j>>2]|0)>>>0)return;k[h>>2]=0;if((k[c>>2]|0)>>>0<d>>>0){l=i;m=j;n=9}else return;break}case 0:{l=f+52|0;m=f+72|0;n=9;break}case 1:{o=f+52|0;p=f+72|0;break}default:return}if((n|0)==9){k[l>>2]=0;n=k[a+328>>2]|0;k[m>>2]=n+-1;if((k[f+76>>2]|0)==(k[a+332>>2]|0)?(j=k[e>>2]|0,i=k[a+36>>2]|0,(i|0)>0):0){q=j+72|0;r=j+64|0;s=0;t=k[a+216>>2]|0;while(1){u=ha(k[t+40>>2]|0,k[t+12>>2]|0)|0;v=(u|0)/(n|0)|0;w=((k[t+48>>2]|0)>>>0)%(u>>>0)|0;x=(w|0)==0?u:w;if(!s)k[q>>2]=((x+-1|0)/(v|0)|0)+1;w=k[(k[j+56+(k[r>>2]<<2)>>2]|0)+(s<<2)>>2]|0;u=v<<1;if((v|0)>0){v=w+(x+-1<<2)|0;y=0;do{k[w+(y+x<<2)>>2]=k[v>>2];y=y+1|0}while((y|0)<(u|0))}s=s+1|0;if((s|0)==(i|0))break;else t=t+88|0}}k[h>>2]=1;o=l;p=m}m=f+64|0;ob[k[(k[a+456>>2]|0)+4>>2]&15](a,k[f+56+(k[m>>2]<<2)>>2]|0,o,k[p>>2]|0,b,c,d);if((k[o>>2]|0)>>>0<(k[p>>2]|0)>>>0)return;if((k[f+76>>2]|0)==1){f=k[e>>2]|0;e=k[a+328>>2]|0;d=k[a+36>>2]|0;if((d|0)>0){c=f+56|0;b=f+60|0;f=e+1|0;l=e+2|0;t=0;i=k[a+216>>2]|0;while(1){s=(ha(k[i+40>>2]|0,k[i+12>>2]|0)|0)/(e|0)|0;r=k[(k[c>>2]|0)+(t<<2)>>2]|0;j=k[(k[b>>2]|0)+(t<<2)>>2]|0;if((s|0)>0){q=ha(s,f)|0;n=ha(s,l)|0;u=0;do{y=u+q|0;v=u-s|0;k[r+(v<<2)>>2]=k[r+(y<<2)>>2];k[j+(v<<2)>>2]=k[j+(y<<2)>>2];y=u+n|0;k[r+(y<<2)>>2]=k[r+(u<<2)>>2];k[j+(y<<2)>>2]=k[j+(u<<2)>>2];u=u+1|0}while((u|0)!=(s|0))}t=t+1|0;if((t|0)==(d|0)){z=e;break}else i=i+88|0}}else z=e}else z=k[a+328>>2]|0;k[m>>2]=k[m>>2]^1;k[g>>2]=0;k[o>>2]=z+1;k[p>>2]=z+2;k[h>>2]=2;return}function wo(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;e=k[a+448>>2]|0;f=e+48|0;do if(!(k[f>>2]|0)){g=e+8|0;if(!(yb[k[(k[a+452>>2]|0)+12>>2]&127](a,g)|0))return;else{k[f>>2]=1;h=g;break}}else h=e+8|0;while(0);g=k[a+328>>2]|0;i=e+52|0;ob[k[(k[a+456>>2]|0)+4>>2]&15](a,h,i,g,b,c,d);if((k[i>>2]|0)>>>0<g>>>0)return;k[f>>2]=0;k[i>>2]=0;return}function xo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ob[k[(k[a+456>>2]|0)+4>>2]&15](a,0,0,0,b,c,d);return}function yo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,p=0,q=0,r=0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0;d=c+7|0;e=c+1|0;f=c+6|0;g=c+2|0;h=c+5|0;i=c+3|0;j=c+4|0;m=0;n=a;while(1){p=k[b+(m<<2)>>2]|0;q=l[p+c>>0]|0;r=l[p+d>>0]|0;s=+(r+q|0);t=q-r|0;u=+(t|0);r=l[p+e>>0]|0;q=l[p+f>>0]|0;v=+(q+r|0);w=r-q|0;q=l[p+g>>0]|0;r=l[p+h>>0]|0;x=+(r+q|0);y=q-r|0;r=l[p+i>>0]|0;q=l[p+j>>0]|0;z=+(q+r|0);A=s+z;B=s-z;z=v+x;o[n>>2]=z+A+-1024.0;o[n+16>>2]=A-z;z=(v-x+B)*.7071067690849304;o[n+8>>2]=B+z;o[n+24>>2]=B-z;z=+(y+r-q|0);B=+(w+t|0);x=(z-B)*.3826834261417389;v=z*.5411961078643799+x;z=B*1.3065630197525024+x;x=+(y+w|0)*.7071067690849304;B=u+x;A=u-x;o[n+20>>2]=A+v;o[n+12>>2]=A-v;o[n+4>>2]=B+z;o[n+28>>2]=B-z;m=m+1|0;if((m|0)==8){C=7;D=a;break}else n=n+32|0}while(1){z=+o[D>>2];n=D+224|0;B=+o[n>>2];v=z+B;A=z-B;a=D+32|0;B=+o[a>>2];m=D+192|0;z=+o[m>>2];x=B+z;u=B-z;j=D+64|0;z=+o[j>>2];i=D+160|0;B=+o[i>>2];s=z+B;E=z-B;h=D+96|0;B=+o[h>>2];g=D+128|0;z=+o[g>>2];F=B+z;G=v+F;H=v-F;F=x+s;o[D>>2]=F+G;o[g>>2]=G-F;F=(x-s+H)*.7071067690849304;o[j>>2]=H+F;o[m>>2]=H-F;F=E+(B-z);z=A+u;B=(F-z)*.3826834261417389;H=F*.5411961078643799+B;F=z*1.3065630197525024+B;B=(u+E)*.7071067690849304;E=A+B;u=A-B;o[i>>2]=u+H;o[h>>2]=u-H;o[a>>2]=E+F;o[n>>2]=E-F;if((C|0)>0){C=C+-1|0;D=D+4|0}else break}return}function zo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;d=c+7|0;e=c+1|0;f=c+6|0;g=c+2|0;h=c+5|0;i=c+3|0;j=c+4|0;m=0;n=a;while(1){o=k[b+(m<<2)>>2]|0;p=l[o+c>>0]|0;q=l[o+d>>0]|0;r=q+p|0;s=p-q|0;q=l[o+e>>0]|0;p=l[o+f>>0]|0;t=p+q|0;u=q-p|0;p=l[o+g>>0]|0;q=l[o+h>>0]|0;v=q+p|0;w=p-q|0;q=l[o+i>>0]|0;p=l[o+j>>0]|0;o=p+q|0;x=o+r|0;y=r-o|0;o=v+t|0;k[n>>2]=(o|-1024)+x;k[n+16>>2]=x-o;o=(t-v+y|0)*181>>8;k[n+8>>2]=o+y;k[n+24>>2]=y-o;o=q-p+w|0;p=u+s|0;q=(o-p|0)*98>>8;y=q+(o*139>>8)|0;o=q+(p*334>>8)|0;p=(w+u|0)*181>>8;u=p+s|0;w=s-p|0;k[n+20>>2]=y+w;k[n+12>>2]=w-y;k[n+4>>2]=o+u;k[n+28>>2]=u-o;m=m+1|0;if((m|0)==8){z=7;A=a;break}else n=n+32|0}while(1){n=k[A>>2]|0;a=A+224|0;m=k[a>>2]|0;j=m+n|0;i=n-m|0;m=A+32|0;n=k[m>>2]|0;h=A+192|0;g=k[h>>2]|0;f=g+n|0;e=n-g|0;g=A+64|0;n=k[g>>2]|0;d=A+160|0;c=k[d>>2]|0;b=c+n|0;o=n-c|0;c=A+96|0;n=k[c>>2]|0;u=A+128|0;y=k[u>>2]|0;w=y+n|0;p=w+j|0;s=j-w|0;w=b+f|0;k[A>>2]=p+w;k[u>>2]=p-w;w=(f-b+s|0)*181>>8;k[g>>2]=w+s;k[h>>2]=s-w;w=n-y+o|0;y=e+i|0;n=(w-y|0)*98>>8;s=n+(w*139>>8)|0;w=n+(y*334>>8)|0;y=(o+e|0)*181>>8;e=y+i|0;o=i-y|0;k[d>>2]=s+o;k[c>>2]=o-s;k[m>>2]=w+e;k[a>>2]=e-w;if((z|0)>0){z=z+-1|0;A=A+4|0}else break}return}function Ao(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,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=c+7|0;e=c+1|0;f=c+6|0;g=c+2|0;h=c+5|0;i=c+3|0;j=c+4|0;m=0;n=a;while(1){o=k[b+(m<<2)>>2]|0;p=l[o+c>>0]|0;q=l[o+d>>0]|0;r=q+p|0;s=l[o+e>>0]|0;t=l[o+f>>0]|0;u=t+s|0;v=l[o+g>>0]|0;w=l[o+h>>0]|0;x=w+v|0;y=l[o+i>>0]|0;z=l[o+j>>0]|0;o=z+y|0;A=o+r|0;B=r-o|0;o=x+u|0;r=u-x|0;x=p-q|0;q=s-t|0;t=v-w|0;w=y-z|0;k[n>>2]=(A+o<<2)+-4096;k[n+16>>2]=A-o<<2;o=((B+r|0)*4433|0)+1024|0;k[n+8>>2]=o+(B*6270|0)>>11;B=o+(ha(r,-15137)|0)>>11;k[n+24>>2]=B;B=t+x|0;r=w+q|0;o=((r+B|0)*9633|0)+1024|0;A=o+(ha(B,-3196)|0)|0;B=o+(ha(r,-16069)|0)|0;r=ha(w+x|0,-7373)|0;o=ha(t+q|0,-20995)|0;k[n+4>>2]=r+(x*12299|0)+A>>11;k[n+12>>2]=o+(q*25172|0)+B>>11;k[n+20>>2]=o+(t*16819|0)+A>>11;k[n+28>>2]=r+(w*2446|0)+B>>11;m=m+1|0;if((m|0)==8){C=7;D=a;break}else n=n+32|0}while(1){n=k[D>>2]|0;a=D+224|0;m=k[a>>2]|0;j=m+n|0;i=D+32|0;h=k[i>>2]|0;g=D+192|0;f=k[g>>2]|0;e=f+h|0;d=D+64|0;c=k[d>>2]|0;b=D+160|0;B=k[b>>2]|0;w=B+c|0;r=D+96|0;A=k[r>>2]|0;t=D+128|0;o=k[t>>2]|0;q=o+A|0;x=j+2+q|0;z=j-q|0;q=w+e|0;j=e-w|0;w=n-m|0;m=h-f|0;f=c-B|0;B=A-o|0;k[D>>2]=x+q>>2;k[t>>2]=x-q>>2;q=((z+j|0)*4433|0)+16384|0;k[d>>2]=q+(z*6270|0)>>15;z=q+(ha(j,-15137)|0)>>15;k[g>>2]=z;z=f+w|0;g=B+m|0;j=((g+z|0)*9633|0)+16384|0;q=j+(ha(z,-3196)|0)|0;z=j+(ha(g,-16069)|0)|0;g=ha(B+w|0,-7373)|0;j=ha(f+m|0,-20995)|0;k[i>>2]=g+(w*12299|0)+q>>15;k[r>>2]=j+(m*25172|0)+z>>15;k[b>>2]=j+(f*16819|0)+q>>15;k[a>>2]=g+(B*2446|0)+z>>15;if((C|0)>0){C=C+-1|0;D=D+4|0}else break}return}function Bo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;qr(a|0,0,256)|0;d=c+6|0;e=c+1|0;f=c+5|0;g=c+2|0;h=c+4|0;i=c+3|0;j=0;m=a;while(1){n=k[b+(j<<2)>>2]|0;o=l[n+c>>0]|0;p=l[n+d>>0]|0;q=p+o|0;r=l[n+e>>0]|0;s=l[n+f>>0]|0;t=s+r|0;u=l[n+g>>0]|0;v=l[n+h>>0]|0;w=v+u|0;x=l[n+i>>0]|0;n=o-p|0;p=r-s|0;s=u-v|0;v=w+q|0;k[m>>2]=(x+t+v<<2)+-3584;u=((ha(x,-4)|0)+v|0)*2896|0;v=(q-w|0)*7542|0;r=(t-w|0)*2578|0;k[m+8>>2]=v+1024+r+u>>11;w=((q-t|0)*7223|0)+1024|0;q=w+r+(ha(t-(x<<1)|0,-5793)|0)>>11;k[m+16>>2]=q;k[m+24>>2]=w-v+u>>11;u=(p+n|0)*7663|0;v=(n-p|0)*1395|0;w=ha(s+p|0,-11295)|0;p=(s+n|0)*5027|0;k[m+4>>2]=1024-v+u+p>>11;k[m+12>>2]=v+1024+u+w>>11;k[m+20>>2]=(s*15326|0)+1024+p+w>>11;j=j+1|0;if((j|0)==7){y=0;z=a;break}else m=m+32|0}while(1){m=k[z>>2]|0;a=z+192|0;j=k[a>>2]|0;i=j+m|0;h=z+32|0;g=k[h>>2]|0;f=z+160|0;e=k[f>>2]|0;d=e+g|0;c=z+64|0;b=k[c>>2]|0;w=z+128|0;p=k[w>>2]|0;s=p+b|0;u=z+96|0;v=k[u>>2]|0;n=m-j|0;j=g-e|0;e=b-p|0;p=s+i|0;k[z>>2]=((v+d+p|0)*10700|0)+16384>>15;b=((ha(v,-4)|0)+p|0)*3783|0;p=(i-s|0)*9850|0;g=(d-s|0)*3367|0;k[c>>2]=p+16384+g+b>>15;c=((i-d|0)*9434|0)+16384|0;i=c+g+(ha(d-(v<<1)|0,-7566)|0)>>15;k[w>>2]=i;k[a>>2]=c-p+b>>15;b=(j+n|0)*10009|0;p=(n-j|0)*1822|0;c=ha(e+j|0,-14752)|0;j=(e+n|0)*6565|0;k[h>>2]=16384-p+b+j>>15;k[u>>2]=p+16384+b+c>>15;k[f>>2]=(e*20017|0)+16384+j+c>>15;y=y+1|0;if((y|0)==7)break;else z=z+4|0}return}function Co(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;qr(a|0,0,256)|0;d=c+5|0;e=c+1|0;f=c+4|0;g=c+2|0;h=c+3|0;i=0;j=a;while(1){m=k[b+(i<<2)>>2]|0;n=l[m+c>>0]|0;o=l[m+d>>0]|0;p=o+n|0;q=l[m+e>>0]|0;r=l[m+f>>0]|0;s=r+q|0;t=l[m+g>>0]|0;u=l[m+h>>0]|0;m=u+t|0;v=m+p|0;w=n-o|0;o=q-r|0;r=t-u|0;k[j>>2]=(v+s<<2)+-3072;k[j+8>>2]=((p-m|0)*10033|0)+1024>>11;m=(((ha(s,-2)|0)+v|0)*5793|0)+1024>>11;k[j+16>>2]=m;m=((r+w|0)*2998|0)+1024>>11;k[j+4>>2]=m+(o+w<<2);k[j+12>>2]=w-o-r<<2;k[j+20>>2]=m+(r-o<<2);i=i+1|0;if((i|0)==6){x=0;y=a;break}else j=j+32|0}while(1){j=k[y>>2]|0;a=y+160|0;i=k[a>>2]|0;h=i+j|0;g=y+32|0;f=k[g>>2]|0;e=y+128|0;d=k[e>>2]|0;c=d+f|0;b=y+64|0;o=k[b>>2]|0;r=y+96|0;m=k[r>>2]|0;w=m+o|0;v=w+h|0;s=j-i|0;i=f-d|0;d=o-m|0;k[y>>2]=((v+c|0)*14564|0)+16384>>15;k[b>>2]=((h-w|0)*17837|0)+16384>>15;w=(((ha(c,-2)|0)+v|0)*10298|0)+16384>>15;k[e>>2]=w;w=(d+s|0)*5331|0;k[g>>2]=((i+s|0)*14564|0)+16384+w>>15;k[r>>2]=((s-i-d|0)*14564|0)+16384>>15;k[a>>2]=((d-i|0)*14564|0)+16384+w>>15;x=x+1|0;if((x|0)==6)break;else y=y+4|0}return}function Do(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;qr(a|0,0,256)|0;d=c+4|0;e=c+1|0;f=c+3|0;g=c+2|0;h=0;i=a;while(1){j=k[b+(h<<2)>>2]|0;m=l[j+c>>0]|0;n=l[j+d>>0]|0;o=n+m|0;p=l[j+e>>0]|0;q=l[j+f>>0]|0;r=q+p|0;s=l[j+g>>0]|0;j=r+o|0;t=m-n|0;n=p-q|0;k[i>>2]=(j+s<<3)+-5120;q=(j-(s<<2)|0)*2896|0;s=((o-r|0)*6476|0)+512|0;k[i+8>>2]=s+q>>10;k[i+16>>2]=s-q>>10;q=(n+t|0)*6810|0;k[i+4>>2]=(t*4209|0)+512+q>>10;t=(ha(n,-17828)|0)+512+q>>10;k[i+12>>2]=t;h=h+1|0;if((h|0)==5){u=0;v=a;break}else i=i+32|0}while(1){i=k[v>>2]|0;a=v+128|0;h=k[a>>2]|0;g=h+i|0;f=v+32|0;e=k[f>>2]|0;d=v+96|0;c=k[d>>2]|0;b=c+e|0;t=v+64|0;q=k[t>>2]|0;n=b+g|0;s=i-h|0;h=e-c|0;k[v>>2]=((n+q|0)*10486|0)+16384>>15;c=(n-(q<<2)|0)*3707|0;q=((g-b|0)*8290|0)+16384|0;k[t>>2]=q+c>>15;k[a>>2]=q-c>>15;c=(h+s|0)*8716|0;k[f>>2]=(s*5387|0)+16384+c>>15;s=(ha(h,-22820)|0)+16384+c>>15;k[d>>2]=s;u=u+1|0;if((u|0)==5)break;else v=v+4|0}return}function Eo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0;qr(a|0,0,256)|0;d=c+3|0;e=c+1|0;f=c+2|0;g=k[b>>2]|0;h=l[g+c>>0]|0;i=l[g+d>>0]|0;j=i+h|0;m=l[g+e>>0]|0;n=l[g+f>>0]|0;g=n+m|0;o=h-i|0;i=m-n|0;k[a>>2]=(g+j<<4)+-8192;k[a+8>>2]=j-g<<4;g=((i+o|0)*4433|0)+256|0;j=a+4|0;k[j>>2]=g+(o*6270|0)>>9;o=g+(ha(i,-15137)|0)>>9;k[a+12>>2]=o;o=a+32|0;i=k[b+4>>2]|0;g=l[i+c>>0]|0;n=l[i+d>>0]|0;m=n+g|0;h=l[i+e>>0]|0;p=l[i+f>>0]|0;i=p+h|0;q=g-n|0;n=h-p|0;k[o>>2]=(i+m<<4)+-8192;k[a+40>>2]=m-i<<4;i=((n+q|0)*4433|0)+256|0;k[a+36>>2]=i+(q*6270|0)>>9;q=i+(ha(n,-15137)|0)>>9;k[a+44>>2]=q;q=k[b+8>>2]|0;n=l[q+c>>0]|0;i=l[q+d>>0]|0;m=i+n|0;p=l[q+e>>0]|0;h=l[q+f>>0]|0;q=h+p|0;g=n-i|0;i=p-h|0;h=(q+m<<4)+-8192|0;k[a+64>>2]=h;k[a+72>>2]=m-q<<4;q=((i+g|0)*4433|0)+256|0;m=q+(g*6270|0)>>9;k[a+68>>2]=m;g=q+(ha(i,-15137)|0)>>9;k[a+76>>2]=g;g=k[b+12>>2]|0;b=l[g+c>>0]|0;c=l[g+d>>0]|0;d=c+b|0;i=l[g+e>>0]|0;e=l[g+f>>0]|0;f=e+i|0;g=b-c|0;c=i-e|0;e=(f+d<<4)+-8192|0;i=d-f<<4;f=((c+g|0)*4433|0)+256|0;d=f+(g*6270|0)>>9;g=f+(ha(c,-15137)|0)>>9;k[a+108>>2]=g;c=k[a>>2]|0;f=c+2+e|0;b=k[o>>2]|0;q=h+b|0;p=c-e|0;e=b-h|0;k[a>>2]=q+f>>2;k[a+64>>2]=f-q>>2;q=((e+p|0)*4433|0)+16384|0;k[o>>2]=q+(p*6270|0)>>15;p=q+(ha(e,-15137)|0)>>15;k[a+96>>2]=p;p=k[j>>2]|0;e=p+2+d|0;q=a+36|0;o=k[q>>2]|0;f=m+o|0;h=p-d|0;d=o-m|0;k[j>>2]=f+e>>2;k[a+68>>2]=e-f>>2;f=((d+h|0)*4433|0)+16384|0;k[q>>2]=f+(h*6270|0)>>15;h=f+(ha(d,-15137)|0)>>15;k[a+100>>2]=h;h=a+8|0;d=k[h>>2]|0;f=d+2+i|0;q=a+40|0;e=k[q>>2]|0;j=a+72|0;m=k[j>>2]|0;o=m+e|0;p=d-i|0;i=e-m|0;k[h>>2]=o+f>>2;k[j>>2]=f-o>>2;o=((i+p|0)*4433|0)+16384|0;k[q>>2]=o+(p*6270|0)>>15;p=o+(ha(i,-15137)|0)>>15;k[a+104>>2]=p;p=a+12|0;i=k[p>>2]|0;o=i+2+g|0;q=a+44|0;f=k[q>>2]|0;j=a+76|0;h=k[j>>2]|0;m=h+f|0;e=i-g|0;g=f-h|0;k[p>>2]=m+o>>2;k[j>>2]=o-m>>2;m=((g+e|0)*4433|0)+16384|0;k[q>>2]=m+(e*6270|0)>>15;e=m+(ha(g,-15137)|0)>>15;k[a+108>>2]=e;return}function Fo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0;qr(a|0,0,256)|0;d=c+2|0;e=c+1|0;f=k[b>>2]|0;g=l[f+c>>0]|0;h=l[f+d>>0]|0;i=h+g|0;j=l[f+e>>0]|0;f=(i+j<<4)+-6144|0;k[a>>2]=f;m=(((ha(j,-2)|0)+i|0)*5793|0)+256>>9;k[a+8>>2]=m;m=((g-h|0)*10033|0)+256>>9;h=a+4|0;k[h>>2]=m;g=a+32|0;i=k[b+4>>2]|0;j=l[i+c>>0]|0;n=l[i+d>>0]|0;o=n+j|0;p=l[i+e>>0]|0;i=(o+p<<4)+-6144|0;k[g>>2]=i;q=(((ha(p,-2)|0)+o|0)*5793|0)+256>>9;k[a+40>>2]=q;o=((j-n|0)*10033|0)+256>>9;k[a+36>>2]=o;n=k[b+8>>2]|0;b=l[n+c>>0]|0;c=l[n+d>>0]|0;d=c+b|0;j=l[n+e>>0]|0;e=(d+j<<4)+-6144|0;n=(((ha(j,-2)|0)+d|0)*5793|0)+256>>9;d=((b-c|0)*10033|0)+256>>9;c=e+f|0;k[a>>2]=((c+i|0)*14564|0)+16384>>15;b=(((ha(i,-2)|0)+c|0)*10298|0)+16384>>15;k[a+64>>2]=b;k[g>>2]=((f-e|0)*17837|0)+16384>>15;e=d+m|0;k[h>>2]=((e+o|0)*14564|0)+16384>>15;h=(((ha(o,-2)|0)+e|0)*10298|0)+16384>>15;k[a+68>>2]=h;k[a+36>>2]=((m-d|0)*17837|0)+16384>>15;d=a+8|0;m=k[d>>2]|0;h=n+m|0;k[d>>2]=((h+q|0)*14564|0)+16384>>15;d=(((ha(q,-2)|0)+h|0)*10298|0)+16384>>15;k[a+72>>2]=d;k[a+40>>2]=((m-n|0)*17837|0)+16384>>15;return}function Go(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;qr(a|0,0,256)|0;d=k[b>>2]|0;e=l[d+c>>0]|0;f=c+1|0;g=l[d+f>>0]|0;d=g+e|0;h=e-g|0;g=k[b+4>>2]|0;b=l[g+c>>0]|0;c=l[g+f>>0]|0;f=c+b|0;g=b-c|0;k[a>>2]=(f+d<<4)+-8192;k[a+32>>2]=d-f<<4;k[a+4>>2]=g+h<<4;k[a+36>>2]=h-g<<4;return}function Ho(a,b,c){a=a|0;b=b|0;c=c|0;qr(a|0,0,256)|0;k[a>>2]=((l[(k[b>>2]|0)+c>>0]|0)<<6)+-8192;return}function Io(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+32|0;e=d;f=c+8|0;g=c+1|0;h=c+7|0;i=c+2|0;j=c+6|0;m=c+3|0;n=c+5|0;o=c+4|0;p=0;q=a;a:while(1){s=k[b+(p<<2)>>2]|0;t=l[s+c>>0]|0;u=l[s+f>>0]|0;v=u+t|0;w=l[s+g>>0]|0;x=l[s+h>>0]|0;y=x+w|0;z=l[s+i>>0]|0;A=l[s+j>>0]|0;B=A+z|0;C=l[s+m>>0]|0;D=l[s+n>>0]|0;E=D+C|0;F=l[s+o>>0]|0;s=t-u|0;u=z-A|0;A=C-D|0;D=B+v+E|0;C=F+y|0;k[q>>2]=(D+C<<1)+-2304;z=(((ha(C,-2)|0)+D|0)*5793|0)+2048>>12;k[q+24>>2]=z;z=((ha(F,-2)|0)+y|0)*5793|0;y=((v-B|0)*10887|0)+2048|0;k[q+8>>2]=y+((B-E|0)*8875|0)+z>>12;k[q+16>>2]=y+((E-v|0)*2012|0)-z>>12;k[q+12>>2]=((s-u-A|0)*10033|0)+2048>>12;z=(w-x|0)*10033|0;x=(u+s|0)*7447|0;w=(A+s|0)*3962|0;k[q+4>>2]=z+2048+x+w>>12;s=(u-A|0)*11409|0;A=2048-z|0;k[q+20>>2]=A+x-s>>12;k[q+28>>2]=A+w+s>>12;switch(p|0){case 7:{p=8;q=e;continue a;break}case 8:{G=7;H=a;I=e;break a;break}default:{}}p=p+1|0;q=q+32|0}while(1){q=k[H>>2]|0;p=k[I>>2]|0;e=p+q|0;a=H+32|0;o=k[a>>2]|0;n=H+224|0;m=k[n>>2]|0;j=m+o|0;i=H+64|0;h=k[i>>2]|0;g=H+192|0;f=k[g>>2]|0;c=f+h|0;b=H+96|0;s=k[b>>2]|0;w=H+160|0;A=k[w>>2]|0;x=A+s|0;z=H+128|0;u=k[z>>2]|0;v=q-p|0;p=h-f|0;f=s-A|0;A=c+e+x|0;s=u+j|0;k[H>>2]=((A+s|0)*12945|0)+16384>>15;h=(((ha(s,-2)|0)+A|0)*9154|0)+16384>>15;k[g>>2]=h;h=((ha(u,-2)|0)+j|0)*9154|0;j=((e-c|0)*17203|0)+16384|0;k[i>>2]=j+((c-x|0)*14024|0)+h>>15;k[z>>2]=j+((x-e|0)*3179|0)-h>>15;k[b>>2]=((v-p-f|0)*15855|0)+16384>>15;b=(o-m|0)*15855|0;m=(p+v|0)*11768|0;o=(f+v|0)*6262|0;k[a>>2]=b+16384+m+o>>15;a=(p-f|0)*18029|0;f=16384-b|0;k[w>>2]=f+m-a>>15;k[n>>2]=f+o+a>>15;if((G|0)>0){G=G+-1|0;H=H+4|0;I=I+4|0}else break}r=d;return}function Jo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+64|0;e=d;f=c+9|0;g=c+1|0;h=c+8|0;i=c+2|0;j=c+7|0;m=c+3|0;n=c+6|0;o=c+4|0;p=c+5|0;q=0;s=a;a:while(1){t=k[b+(q<<2)>>2]|0;u=l[t+c>>0]|0;v=l[t+f>>0]|0;w=v+u|0;x=l[t+g>>0]|0;y=l[t+h>>0]|0;z=y+x|0;A=l[t+i>>0]|0;B=l[t+j>>0]|0;C=B+A|0;D=l[t+m>>0]|0;E=l[t+n>>0]|0;F=E+D|0;G=l[t+o>>0]|0;H=l[t+p>>0]|0;t=H+G|0;I=t+w|0;J=w-t|0;t=F+z|0;w=z-F|0;F=u-v|0;v=x-y|0;y=A-B|0;B=D-E|0;E=G-H|0;k[s>>2]=(t+C+I<<1)+-2560;H=C<<1;C=(ha(t-H|0,-3580)|0)+2048+((I-H|0)*9373|0)>>12;k[s+16>>2]=C;C=(J+w|0)*6810|0;k[s+8>>2]=(J*4209|0)+2048+C>>12;J=(ha(w,-17828)|0)+2048+C>>12;k[s+24>>2]=J;J=E+F|0;C=v-B|0;k[s+20>>2]=J-(C+y)<<1;w=y<<13;k[s+4>>2]=(F*11443|0)+2048+(v*10323|0)+w+(B*5260|0)+(E*1812|0)>>12;y=(C<<12)-w+((J+C|0)*2531|0)|0;C=((F-E|0)*7791|0)+(ha(B+v|0,-4815)|0)+2048|0;k[s+12>>2]=C+y>>12;k[s+28>>2]=C-y>>12;switch(q|0){case 7:{q=8;s=e;continue a;break}case 9:{K=7;L=a;M=e;break a;break}default:{}}q=q+1|0;s=s+32|0}while(1){s=k[L>>2]|0;q=k[M+32>>2]|0;e=q+s|0;a=L+32|0;p=k[a>>2]|0;o=k[M>>2]|0;n=o+p|0;m=L+64|0;j=k[m>>2]|0;i=L+224|0;h=k[i>>2]|0;g=h+j|0;f=L+96|0;c=k[f>>2]|0;b=L+192|0;y=k[b>>2]|0;C=y+c|0;v=L+128|0;B=k[v>>2]|0;E=L+160|0;F=k[E>>2]|0;J=F+B|0;w=J+e|0;H=e-J|0;J=C+n|0;e=n-C|0;C=s-q|0;q=p-o|0;o=j-h|0;h=c-y|0;y=B-F|0;k[L>>2]=((J+g+w|0)*10486|0)+16384>>15;F=g<<1;g=(ha(J-F|0,-4582)|0)+16384+((w-F|0)*11997|0)>>15;k[v>>2]=g;g=(H+e|0)*8716|0;k[m>>2]=(H*5387|0)+16384+g>>15;H=(ha(e,-22820)|0)+16384+g>>15;k[b>>2]=H;H=y+C|0;b=q-h|0;k[E>>2]=((H-(b+o)|0)*10486|0)+16384>>15;E=o*10486|0;k[a>>2]=(C*14647|0)+16384+(q*13213|0)+E+(h*6732|0)+(y*2320|0)>>15;a=(b*5243|0)-E+((H+b|0)*3240|0)|0;b=((C-y|0)*9973|0)+(ha(h+q|0,-6163)|0)+16384|0;k[f>>2]=b+a>>15;k[i>>2]=b-a>>15;if((K|0)>0){K=K+-1|0;L=L+4|0;M=M+4|0}else break}r=d;return}function Ko(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+96|0;e=d;f=c+10|0;g=c+1|0;h=c+9|0;i=c+2|0;j=c+8|0;m=c+3|0;n=c+7|0;o=c+4|0;p=c+6|0;q=c+5|0;s=0;t=a;a:while(1){u=k[b+(s<<2)>>2]|0;v=l[u+c>>0]|0;w=l[u+f>>0]|0;x=w+v|0;y=l[u+g>>0]|0;z=l[u+h>>0]|0;A=z+y|0;B=l[u+i>>0]|0;C=l[u+j>>0]|0;D=C+B|0;E=l[u+m>>0]|0;F=l[u+n>>0]|0;G=F+E|0;H=l[u+o>>0]|0;I=l[u+p>>0]|0;J=I+H|0;K=l[u+q>>0]|0;u=v-w|0;w=y-z|0;z=B-C|0;C=E-F|0;F=H-I|0;k[t>>2]=(A+x+D+G+J+K<<1)+-2816;I=K<<1;K=x-I|0;x=A-I|0;A=D-I|0;D=G-I|0;G=J-I|0;I=((K+D|0)*11116|0)+((A+G|0)*1649|0)|0;J=(x-D|0)*7587|0;H=(K-x|0)*9746|0;E=(ha(D,-8342)|0)+2048+(ha(G,-11395)|0)+J+I>>12;k[t+8>>2]=E;E=(x*511|0)+2048+(ha(A,-11116)|0)+(G*4813|0)+H+J>>12;k[t+16>>2]=E;E=(ha(K,-13275)|0)+2048+(ha(A,-6461)|0)+H+I>>12;k[t+24>>2]=E;E=(w+u|0)*10538|0;I=(z+u|0)*8756|0;H=(C+u|0)*6263|0;A=ha(z+w|0,-6263)|0;K=ha(C+w|0,-11467)|0;J=ha(F,-8756)|0;G=(C+z|0)*3264|0;x=ha(z,-16294)|0;z=ha(F,-10538)|0;D=(ha(u,-14090)|0)+2048+E+I+H+(F*3264|0)>>12;k[t+4>>2]=D;k[t+12>>2]=(w*10456|0)+2048+E+A+K+J>>12;k[t+20>>2]=x+2048+A+I+G+(F*11467|0)>>12;k[t+28>>2]=(C*10695|0)+2048+G+K+H+z>>12;switch(s|0){case 7:{s=8;t=e;continue a;break}case 10:{L=7;M=a;N=e;break a;break}default:{}}s=s+1|0;t=t+32|0}while(1){t=k[M>>2]|0;s=k[N+64>>2]|0;e=s+t|0;a=M+32|0;q=k[a>>2]|0;p=k[N+32>>2]|0;o=p+q|0;n=M+64|0;m=k[n>>2]|0;j=k[N>>2]|0;i=j+m|0;h=M+96|0;g=k[h>>2]|0;f=M+224|0;c=k[f>>2]|0;b=c+g|0;z=M+128|0;H=k[z>>2]|0;K=M+192|0;G=k[K>>2]|0;C=G+H|0;F=M+160|0;I=k[F>>2]|0;A=t-s|0;s=q-p|0;p=m-j|0;j=g-c|0;c=H-G|0;k[M>>2]=((o+e+i+b+C+I|0)*8666|0)+16384>>15;G=I<<1;I=e-G|0;e=o-G|0;o=i-G|0;i=b-G|0;b=C-G|0;G=((I+i|0)*11759|0)+((o+b|0)*1744|0)|0;C=(e-i|0)*8026|0;H=(I-e|0)*10310|0;g=(ha(i,-8825)|0)+16384+(ha(b,-12054)|0)+C+G>>15;k[n>>2]=g;g=(e*540|0)+16384+(ha(o,-11759)|0)+(b*5091|0)+H+C>>15;k[z>>2]=g;g=(ha(I,-14043)|0)+16384+(ha(o,-6835)|0)+H+G>>15;k[K>>2]=g;g=(s+A|0)*11148|0;K=(p+A|0)*9262|0;G=(j+A|0)*6626|0;H=ha(p+s|0,-6626)|0;o=ha(j+s|0,-12131)|0;I=ha(c,-9262)|0;z=(j+p|0)*3453|0;C=ha(p,-17237)|0;p=ha(c,-11148)|0;b=(ha(A,-14905)|0)+16384+g+K+G+(c*3453|0)>>15;k[a>>2]=b;k[h>>2]=(s*11061|0)+16384+g+H+o+I>>15;k[F>>2]=C+16384+H+K+z+(c*12131|0)>>15;k[f>>2]=(j*11314|0)+16384+z+o+G+p>>15;if((L|0)>0){L=L+-1|0;M=M+4|0;N=N+4|0}else break}r=d;return}function Lo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+128|0;e=d;f=c+11|0;g=c+1|0;h=c+10|0;i=c+2|0;j=c+9|0;m=c+3|0;n=c+8|0;o=c+4|0;p=c+7|0;q=c+5|0;s=c+6|0;t=0;u=a;a:while(1){v=k[b+(t<<2)>>2]|0;w=l[v+c>>0]|0;x=l[v+f>>0]|0;y=x+w|0;z=l[v+g>>0]|0;A=l[v+h>>0]|0;B=A+z|0;C=l[v+i>>0]|0;D=l[v+j>>0]|0;E=D+C|0;F=l[v+m>>0]|0;G=l[v+n>>0]|0;H=G+F|0;I=l[v+o>>0]|0;J=l[v+p>>0]|0;K=J+I|0;L=l[v+q>>0]|0;M=l[v+s>>0]|0;v=M+L|0;N=v+y|0;O=y-v|0;v=B-K|0;y=H+E|0;P=E-H|0;H=w-x|0;x=z-A|0;A=C-D|0;D=F-G|0;G=I-J|0;J=L-M|0;k[u>>2]=(B|-1536)+y+K+N;k[u+24>>2]=O-(v+P);k[u+16>>2]=((N-y|0)*10033|0)+4096>>13;k[u+8>>2]=4096-P+v+((O+P|0)*11190|0)>>13;P=(G+x|0)*4433|0;O=P+(x*6270|0)|0;x=P+(ha(G,-15137)|0)|0;G=(A+H|0)*9191|0;P=(D+H|0)*7053|0;v=ha(D+A|0,-1512)|0;y=ha(A,-19165)|0;N=ha(J,-9191)|0;K=ha(J+A|0,-4433)|0;A=(ha(H,-4758)|0)+4096+G+P+O+(J*1512|0)>>13;k[u+4>>2]=A;k[u+12>>2]=((H-D|0)*10703|0)+4096+x+K>>13;k[u+20>>2]=y+4096+G+v-x+(J*7053|0)>>13;k[u+28>>2]=(D*5946|0)+4096+v+P-O+N>>13;switch(t|0){case 7:{t=8;u=e;continue a;break}case 11:{Q=7;R=a;S=e;break a;break}default:{}}t=t+1|0;u=u+32|0}while(1){u=k[R>>2]|0;t=k[S+96>>2]|0;e=t+u|0;a=R+32|0;s=k[a>>2]|0;q=k[S+64>>2]|0;p=q+s|0;o=R+64|0;n=k[o>>2]|0;m=k[S+32>>2]|0;j=m+n|0;i=R+96|0;h=k[i>>2]|0;g=k[S>>2]|0;f=g+h|0;c=R+128|0;b=k[c>>2]|0;N=R+224|0;O=k[N>>2]|0;P=O+b|0;v=R+160|0;D=k[v>>2]|0;J=R+192|0;x=k[J>>2]|0;G=x+D|0;y=G+e|0;K=e-G|0;G=p-P|0;e=f+j|0;H=j-f|0;f=u-t|0;t=s-q|0;q=n-m|0;m=h-g|0;g=b-O|0;O=D-x|0;k[R>>2]=((e+p+P+y|0)*7282|0)+8192>>14;k[J>>2]=((K-(G+H)|0)*7282|0)+8192>>14;k[c>>2]=((y-e|0)*8918|0)+8192>>14;k[o>>2]=((G-H|0)*7282|0)+8192+((K+H|0)*9947|0)>>14;H=(g+t|0)*3941|0;K=H+(t*5573|0)|0;t=H+(ha(g,-13455)|0)|0;g=(q+f|0)*8170|0;H=(m+f|0)*6269|0;G=ha(m+q|0,-1344)|0;o=ha(q,-17036)|0;e=ha(O,-8170)|0;y=ha(O+q|0,-3941)|0;q=(ha(f,-4229)|0)+8192+g+H+K+(O*1344|0)>>14;k[a>>2]=q;k[i>>2]=((f-m|0)*9514|0)+8192+t+y>>14;k[v>>2]=o+8192+g+G-t+(O*6269|0)>>14;k[N>>2]=(m*5285|0)+8192+G+H-K+e>>14;if((Q|0)>0){Q=Q+-1|0;R=R+4|0;S=S+4|0}else break}r=d;return}function Mo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+160|0;e=d;f=c+12|0;g=c+1|0;h=c+11|0;i=c+2|0;j=c+10|0;m=c+3|0;n=c+9|0;o=c+4|0;p=c+8|0;q=c+5|0;s=c+7|0;t=c+6|0;u=0;v=a;a:while(1){w=k[b+(u<<2)>>2]|0;x=l[w+c>>0]|0;y=l[w+f>>0]|0;z=y+x|0;A=l[w+g>>0]|0;B=l[w+h>>0]|0;C=B+A|0;D=l[w+i>>0]|0;E=l[w+j>>0]|0;F=E+D|0;G=l[w+m>>0]|0;H=l[w+n>>0]|0;I=H+G|0;J=l[w+o>>0]|0;K=l[w+p>>0]|0;L=K+J|0;M=l[w+q>>0]|0;N=l[w+s>>0]|0;O=N+M|0;P=l[w+t>>0]|0;w=x-y|0;y=A-B|0;B=D-E|0;E=G-H|0;H=J-K|0;K=M-N|0;k[v>>2]=z+-1664+C+F+I+L+O+P;N=P<<1;P=z-N|0;z=C-N|0;C=F-N|0;F=I-N|0;I=L-N|0;L=O-N|0;N=(z*8672|0)+4096+(P*11249|0)+(C*4108|0)+(ha(F,-1396)|0)+(ha(I,-6581)|0)+(ha(L,-10258)|0)>>13;k[v+8>>2]=N;N=((P-C|0)*9465|0)+(ha(F-I|0,-3570)|0)+(ha(z-L|0,-2592)|0)|0;O=((P+C|0)*793|0)+(ha(F+I|0,-7678)|0)+((z+L|0)*3989|0)|0;k[v+16>>2]=O+4096+N>>13;k[v+24>>2]=4096-O+N>>13;N=(y+w|0)*10832|0;O=(B+w|0)*9534|0;L=((K+H|0)*2773|0)+((E+w|0)*7682|0)|0;z=((H-K|0)*7682|0)+(ha(B+y|0,-2773)|0)|0;I=ha(E+y|0,-9534)|0;F=ha(H,-19183)|0;C=ha(E+B|0,-5384)|0;P=ha(B,-12879)|0;B=ha(K,-14273)|0;M=(ha(w,-16549)|0)+4096+N+O+(H*2611|0)+L>>13;k[v+4>>2]=M;k[v+12>>2]=(y*6859|0)+4096+N+I+F+z>>13;k[v+20>>2]=P+4096+O+C+(K*18515|0)+z>>13;k[v+28>>2]=(E*18068|0)+4096+C+I+B+L>>13;switch(u|0){case 7:{u=8;v=e;continue a;break}case 12:{Q=7;R=a;S=e;break a;break}default:{}}u=u+1|0;v=v+32|0}while(1){v=k[R>>2]|0;u=k[S+128>>2]|0;e=u+v|0;a=R+32|0;t=k[a>>2]|0;s=k[S+96>>2]|0;q=s+t|0;p=R+64|0;o=k[p>>2]|0;n=k[S+64>>2]|0;m=n+o|0;j=R+96|0;i=k[j>>2]|0;h=k[S+32>>2]|0;g=h+i|0;f=R+128|0;c=k[f>>2]|0;b=k[S>>2]|0;L=b+c|0;B=R+160|0;I=k[B>>2]|0;C=R+224|0;E=k[C>>2]|0;z=E+I|0;K=R+192|0;O=k[K>>2]|0;P=v-u|0;u=t-s|0;s=o-n|0;n=i-h|0;h=c-b|0;b=I-E|0;k[R>>2]=((q+e+m+g+L+z+O|0)*6205|0)+8192>>14;E=O<<1;O=e-E|0;e=q-E|0;q=m-E|0;m=g-E|0;g=L-E|0;L=z-E|0;E=(e*6568|0)+8192+(O*8520|0)+(q*3112|0)+(ha(m,-1058)|0)+(ha(g,-4985)|0)+(ha(L,-7770)|0)>>14;k[p>>2]=E;E=((O-q|0)*7169|0)+(ha(m-g|0,-2704)|0)+(ha(e-L|0,-1963)|0)|0;p=((O+q|0)*601|0)+(ha(m+g|0,-5816)|0)+((e+L|0)*3021|0)|0;k[f>>2]=p+8192+E>>14;k[K>>2]=8192-p+E>>14;E=(u+P|0)*8204|0;p=(s+P|0)*7221|0;K=((b+h|0)*2100|0)+((n+P|0)*5819|0)|0;f=((h-b|0)*5819|0)+(ha(s+u|0,-2100)|0)|0;L=ha(n+u|0,-7221)|0;e=ha(h,-14529)|0;g=ha(n+s|0,-4078)|0;m=ha(s,-9754)|0;s=ha(b,-10811)|0;q=(ha(P,-12534)|0)+8192+E+p+(h*1978|0)+K>>14;k[a>>2]=q;k[j>>2]=(u*5195|0)+8192+E+L+e+f>>14;k[B>>2]=m+8192+p+g+(b*14023|0)+f>>14;k[C>>2]=(n*13685|0)+8192+g+L+s+K>>14;if((Q|0)>0){Q=Q+-1|0;R=R+4|0;S=S+4|0}else break}r=d;return}function No(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+192|0;e=d;f=c+13|0;g=c+1|0;h=c+12|0;i=c+2|0;j=c+11|0;m=c+3|0;n=c+10|0;o=c+4|0;p=c+9|0;q=c+5|0;s=c+8|0;t=c+6|0;u=c+7|0;v=0;w=a;a:while(1){x=k[b+(v<<2)>>2]|0;y=l[x+c>>0]|0;z=l[x+f>>0]|0;A=z+y|0;B=l[x+g>>0]|0;C=l[x+h>>0]|0;D=C+B|0;E=l[x+i>>0]|0;F=l[x+j>>0]|0;G=F+E|0;H=l[x+m>>0]|0;I=l[x+n>>0]|0;J=I+H|0;K=l[x+o>>0]|0;L=l[x+p>>0]|0;M=L+K|0;N=l[x+q>>0]|0;O=l[x+s>>0]|0;P=O+N|0;Q=l[x+t>>0]|0;R=l[x+u>>0]|0;x=R+Q|0;S=x+A|0;T=A-x|0;x=P+D|0;A=D-P|0;P=M+G|0;D=G-M|0;M=y-z|0;z=B-C|0;C=E-F|0;F=H-I|0;I=K-L|0;L=N-O|0;O=Q-R|0;k[w>>2]=J+-1792+P+x+S;R=J<<1;J=(ha(P-R|0,-7223)|0)+4096+((x-R|0)*2578|0)+((S-R|0)*10438|0)>>13;k[w+16>>2]=J;J=(T+A|0)*9058|0;k[w+8>>2]=(D*5027|0)+4096+(T*2237|0)+J>>13;T=(ha(D,-11295)|0)+4096+(ha(A,-14084)|0)+J>>13;k[w+24>>2]=T;T=C+z|0;J=L-I|0;k[w+28>>2]=M-T+F-J-O;A=F<<13;F=(J*11512|0)-A+(ha(T,-1297)|0)|0;T=((O+I|0)*6164|0)+((C+M|0)*9810|0)|0;J=(ha(C,-19447)|0)+4096+(I*9175|0)+F+T>>13;k[w+20>>2]=J;J=((L-O|0)*3826|0)+((z+M|0)*10935|0)|0;I=(ha(z,-3474)|0)+4096+(ha(L,-25148)|0)+F+J>>13;k[w+12>>2]=I;I=(A|4096)+O+(ha(O+M|0,-9232)|0)+J+T>>13;k[w+4>>2]=I;switch(v|0){case 7:{v=8;w=e;continue a;break}case 13:{U=7;V=a;W=e;break a;break}default:{}}v=v+1|0;w=w+32|0}while(1){w=k[V>>2]|0;v=k[W+160>>2]|0;e=v+w|0;a=V+32|0;u=k[a>>2]|0;t=k[W+128>>2]|0;s=t+u|0;q=V+64|0;p=k[q>>2]|0;o=k[W+96>>2]|0;n=o+p|0;m=V+96|0;j=k[m>>2]|0;i=k[W+64>>2]|0;h=i+j|0;g=V+128|0;f=k[g>>2]|0;c=k[W+32>>2]|0;b=c+f|0;I=V+160|0;T=k[I>>2]|0;J=k[W>>2]|0;M=J+T|0;O=V+192|0;A=k[O>>2]|0;F=V+224|0;L=k[F>>2]|0;z=L+A|0;C=z+e|0;D=e-z|0;z=M+s|0;e=s-M|0;M=b+n|0;s=n-b|0;b=w-v|0;v=u-t|0;t=p-o|0;o=j-i|0;i=f-c|0;c=T-J|0;J=A-L|0;k[V>>2]=((M+h+z+C|0)*5350|0)+8192>>14;L=h<<1;h=(ha(M-L|0,-4717)|0)+8192+((z-L|0)*1684|0)+((C-L|0)*6817|0)>>14;k[g>>2]=h;h=(D+e|0)*5915|0;k[q>>2]=(s*3283|0)+8192+(D*1461|0)+h>>14;D=(ha(s,-7376)|0)+8192+(ha(e,-9198)|0)+h>>14;k[O>>2]=D;D=t+v|0;O=c-i|0;k[F>>2]=((b-D+o-O-J|0)*5350|0)+8192>>14;F=o*5350|0;o=(O*7518|0)-F+(ha(D,-847)|0)|0;D=((J+i|0)*4025|0)+((t+b|0)*6406|0)|0;O=(ha(t,-12700)|0)+8192+(i*5992|0)+o+D>>14;k[I>>2]=O;O=((c-J|0)*2499|0)+((v+b|0)*7141|0)|0;I=(ha(v,-2269)|0)+8192+(ha(c,-16423)|0)+o+O>>14;k[m>>2]=I;I=(ha(b,-6029)|0)+8192+F+(ha(J,-679)|0)+O+D>>14;k[a>>2]=I;if((U|0)>0){U=U+-1|0;V=V+4|0;W=W+4|0}else break}r=d;return}function Oo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+224|0;e=d;f=c+14|0;g=c+1|0;h=c+13|0;i=c+2|0;j=c+12|0;m=c+3|0;n=c+11|0;o=c+4|0;p=c+10|0;q=c+5|0;s=c+9|0;t=c+6|0;u=c+8|0;v=c+7|0;w=0;x=a;a:while(1){y=k[b+(w<<2)>>2]|0;z=l[y+c>>0]|0;A=l[y+f>>0]|0;B=A+z|0;C=l[y+g>>0]|0;D=l[y+h>>0]|0;E=D+C|0;F=l[y+i>>0]|0;G=l[y+j>>0]|0;H=G+F|0;I=l[y+m>>0]|0;J=l[y+n>>0]|0;K=J+I|0;L=l[y+o>>0]|0;M=l[y+p>>0]|0;N=M+L|0;O=l[y+q>>0]|0;P=l[y+s>>0]|0;Q=P+O|0;R=l[y+t>>0]|0;S=l[y+u>>0]|0;T=S+R|0;U=l[y+v>>0]|0;y=z-A|0;A=C-D|0;D=F-G|0;G=I-J|0;J=L-M|0;M=O-P|0;P=R-S|0;S=N+B+Q|0;R=K+E+T|0;O=U+H|0;k[x>>2]=S+-1920+R+O;L=O<<1;O=(ha(R-L|0,-3580)|0)+4096+((S-L|0)*9373|0)>>13;k[x+24>>2]=O;O=((N+E|0)>>>1)+H+(ha(U,-2)|0)|0;U=ha(B-O|0,-748)|0;H=((E-N|0)*6476|0)+((B-K|0)*11332|0)+((T-Q|0)*7752|0)+4096|0;B=H+(ha(T-O|0,-18336)|0)+((K-O|0)*12543|0)>>13;k[x+8>>2]=B;k[x+16>>2]=H+U+((Q-O|0)*6541|0)>>13;O=D*10033|0;Q=((M+G|0)*4712|0)+((J+A|0)*11018|0)+((y-P|0)*11522|0)|0;U=ha(y,-2912)|0;H=ha(M,-7121)|0;B=O+4096+(G*3897|0)+(ha(J,-4209)|0)+(P*13930|0)+Q>>13;k[x+4>>2]=B;k[x+12>>2]=((y-J-M|0)*11018|0)+4096+((A-G-P|0)*6810|0)>>13;k[x+20>>2]=((y-D-G+M+P|0)*10033|0)+4096>>13;P=U+4096+(ha(A,-17828)|0)-O+H+Q>>13;k[x+28>>2]=P;switch(w|0){case 7:{w=8;x=e;continue a;break}case 14:{V=7;W=a;X=e;break a;break}default:{}}w=w+1|0;x=x+32|0}while(1){x=k[W>>2]|0;w=k[X+192>>2]|0;e=w+x|0;a=W+32|0;v=k[a>>2]|0;u=k[X+160>>2]|0;t=u+v|0;s=W+64|0;q=k[s>>2]|0;p=k[X+128>>2]|0;o=p+q|0;n=W+96|0;m=k[n>>2]|0;j=k[X+96>>2]|0;i=j+m|0;h=W+128|0;g=k[h>>2]|0;f=k[X+64>>2]|0;c=f+g|0;b=W+160|0;P=k[b>>2]|0;Q=k[X+32>>2]|0;H=Q+P|0;O=W+192|0;A=k[O>>2]|0;U=k[X>>2]|0;M=U+A|0;G=W+224|0;D=k[G>>2]|0;y=x-w|0;w=v-u|0;u=q-p|0;p=m-j|0;j=g-f|0;f=P-Q|0;Q=A-U|0;U=c+e+H|0;A=i+t+M|0;P=D+o|0;k[W>>2]=((A+U+P|0)*9321|0)+16384>>15;g=P<<1;P=(ha(A-g|0,-4073)|0)+16384+((U-g|0)*10664|0)>>15;k[O>>2]=P;P=(c+t>>1)+o+(ha(D,-2)|0)|0;D=ha(e-P|0,-852)|0;o=((t-c|0)*7369|0)+((e-i|0)*12893|0)+((M-H|0)*8820|0)+16384|0;e=o+(ha(M-P|0,-20862)|0)+((i-P|0)*14271|0)>>15;k[s>>2]=e;k[h>>2]=o+D+((H-P|0)*7442|0)>>15;P=u*11415|0;H=((f+p|0)*5361|0)+((j+w|0)*12536|0)+((y-Q|0)*13109|0)|0;D=ha(y,-3314)|0;o=ha(f,-8102)|0;h=P+16384+(p*4434|0)+(ha(j,-4788)|0)+(Q*15850|0)+H>>15;k[a>>2]=h;k[n>>2]=((y-j-f|0)*12536|0)+16384+((w-p-Q|0)*7748|0)>>15;k[b>>2]=((y-u-p+f+Q|0)*11415|0)+16384>>15;Q=D+16384+(ha(w,-20284)|0)-P+o+H>>15;k[G>>2]=Q;if((V|0)>0){V=V+-1|0;W=W+4|0;X=X+4|0}else break}r=d;return}function Po(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+256|0;e=d;f=c+15|0;g=c+1|0;h=c+14|0;i=c+2|0;j=c+13|0;m=c+3|0;n=c+12|0;o=c+4|0;p=c+11|0;q=c+5|0;s=c+10|0;t=c+6|0;u=c+9|0;v=c+7|0;w=c+8|0;x=0;y=a;a:while(1){z=k[b+(x<<2)>>2]|0;A=l[z+c>>0]|0;B=l[z+f>>0]|0;C=B+A|0;D=l[z+g>>0]|0;E=l[z+h>>0]|0;F=E+D|0;G=l[z+i>>0]|0;H=l[z+j>>0]|0;I=H+G|0;J=l[z+m>>0]|0;K=l[z+n>>0]|0;L=K+J|0;M=l[z+o>>0]|0;N=l[z+p>>0]|0;O=N+M|0;P=l[z+q>>0]|0;Q=l[z+s>>0]|0;R=Q+P|0;S=l[z+t>>0]|0;T=l[z+u>>0]|0;U=T+S|0;V=l[z+v>>0]|0;W=l[z+w>>0]|0;z=W+V|0;X=z+C|0;Y=C-z|0;z=U+F|0;C=F-U|0;U=R+I|0;F=I-R|0;R=O+L|0;I=L-O|0;O=A-B|0;B=D-E|0;E=G-H|0;H=J-K|0;K=M-N|0;N=P-Q|0;Q=S-T|0;T=V-W|0;k[y>>2]=(U+R+z+X<<2)+-8192;k[y+16>>2]=((z-U|0)*4433|0)+1024+((X-R|0)*10703|0)>>11;R=((Y-F|0)*11363|0)+((I-C|0)*2260|0)|0;k[y+8>>2]=(F*17799|0)+1024+(C*11893|0)+R>>11;C=(ha(I,-8697)|0)+1024+(ha(Y,-1730)|0)+R>>11;k[y+24>>2]=C;C=((Q-T|0)*3363|0)+((B+O|0)*11086|0)|0;R=((T+N|0)*5461|0)+((E+O|0)*10217|0)|0;Y=((K-T|0)*7350|0)+((H+O|0)*8956|0)|0;I=((Q-N|0)*11529|0)+((E+B|0)*1136|0)|0;F=(ha(Q+K|0,-10217)|0)+(ha(H+B|0,-5461)|0)|0;X=((N-K|0)*3363|0)+(ha(H+E|0,-11086)|0)|0;U=ha(Q,-13631)|0;Q=ha(E,-9222)|0;E=(ha(O,-18730)|0)+1024+(T*6387|0)+R+C+Y>>11;k[y+4>>2]=E;k[y+12>>2]=(B*589|0)+1024+U+F+I+C>>11;k[y+20>>2]=Q+1024+(N*10055|0)+X+I+R>>11;k[y+28>>2]=(H*8728|0)+1024+(K*17760|0)+X+F+Y>>11;switch(x|0){case 7:{x=8;y=e;continue a;break}case 15:{Z=7;_=a;$=e;break a;break}default:{}}x=x+1|0;y=y+32|0}while(1){y=k[_>>2]|0;x=k[$+224>>2]|0;e=x+y|0;a=_+32|0;w=k[a>>2]|0;v=k[$+192>>2]|0;u=v+w|0;t=_+64|0;s=k[t>>2]|0;q=k[$+160>>2]|0;p=q+s|0;o=_+96|0;n=k[o>>2]|0;m=k[$+128>>2]|0;j=m+n|0;i=_+128|0;h=k[i>>2]|0;g=k[$+96>>2]|0;f=g+h|0;c=_+160|0;b=k[c>>2]|0;Y=k[$+64>>2]|0;F=Y+b|0;X=_+192|0;K=k[X>>2]|0;H=k[$+32>>2]|0;R=H+K|0;I=_+224|0;N=k[I>>2]|0;Q=k[$>>2]|0;C=Q+N|0;U=C+e|0;B=e-C|0;C=R+u|0;e=u-R|0;R=F+p|0;u=p-F|0;F=f+j|0;p=j-f|0;f=y-x|0;x=w-v|0;v=s-q|0;q=n-m|0;m=h-g|0;g=b-Y|0;Y=K-H|0;H=N-Q|0;k[_>>2]=F+8+R+C+U>>4;k[i>>2]=((C-R|0)*4433|0)+65536+((U-F|0)*10703|0)>>17;F=((B-u|0)*11363|0)+((p-e|0)*2260|0)|0;k[t>>2]=(u*17799|0)+65536+(e*11893|0)+F>>17;e=(ha(p,-8697)|0)+65536+(ha(B,-1730)|0)+F>>17;k[X>>2]=e;e=((Y-H|0)*3363|0)+((x+f|0)*11086|0)|0;X=((H+g|0)*5461|0)+((v+f|0)*10217|0)|0;F=((m-H|0)*7350|0)+((q+f|0)*8956|0)|0;B=((Y-g|0)*11529|0)+((v+x|0)*1136|0)|0;p=(ha(Y+m|0,-10217)|0)+(ha(q+x|0,-5461)|0)|0;u=((g-m|0)*3363|0)+(ha(q+v|0,-11086)|0)|0;t=ha(Y,-13631)|0;Y=ha(v,-9222)|0;v=(ha(f,-18730)|0)+65536+(H*6387|0)+X+e+F>>17;k[a>>2]=v;k[o>>2]=(x*589|0)+65536+t+p+B+e>>17;k[c>>2]=Y+65536+(g*10055|0)+u+B+X>>17;k[I>>2]=(q*8728|0)+65536+(m*17760|0)+u+p+F>>17;if((Z|0)>0){Z=Z+-1|0;_=_+4|0;$=$+4|0}else break}r=d;return}function Qo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,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;d=c+15|0;e=c+1|0;f=c+14|0;g=c+2|0;h=c+13|0;i=c+3|0;j=c+12|0;m=c+4|0;n=c+11|0;o=c+5|0;p=c+10|0;q=c+6|0;r=c+9|0;s=c+7|0;t=c+8|0;u=0;v=a;while(1){w=k[b+(u<<2)>>2]|0;x=l[w+c>>0]|0;y=l[w+d>>0]|0;z=y+x|0;A=l[w+e>>0]|0;B=l[w+f>>0]|0;C=B+A|0;D=l[w+g>>0]|0;E=l[w+h>>0]|0;F=E+D|0;G=l[w+i>>0]|0;H=l[w+j>>0]|0;I=H+G|0;J=l[w+m>>0]|0;K=l[w+n>>0]|0;L=K+J|0;M=l[w+o>>0]|0;N=l[w+p>>0]|0;O=N+M|0;P=l[w+q>>0]|0;Q=l[w+r>>0]|0;R=Q+P|0;S=l[w+s>>0]|0;T=l[w+t>>0]|0;w=T+S|0;U=w+z|0;V=z-w|0;w=R+C|0;z=C-R|0;R=O+F|0;C=F-O|0;O=L+I|0;F=I-L|0;L=x-y|0;y=A-B|0;B=D-E|0;E=G-H|0;H=J-K|0;K=M-N|0;N=P-Q|0;Q=S-T|0;k[v>>2]=(R+O+w+U<<2)+-8192;k[v+16>>2]=((w-R|0)*4433|0)+1024+((U-O|0)*10703|0)>>11;O=((V-C|0)*11363|0)+((F-z|0)*2260|0)|0;k[v+8>>2]=(C*17799|0)+1024+(z*11893|0)+O>>11;z=(ha(F,-8697)|0)+1024+(ha(V,-1730)|0)+O>>11;k[v+24>>2]=z;z=((N-Q|0)*3363|0)+((y+L|0)*11086|0)|0;O=((Q+K|0)*5461|0)+((B+L|0)*10217|0)|0;V=((H-Q|0)*7350|0)+((E+L|0)*8956|0)|0;F=((N-K|0)*11529|0)+((B+y|0)*1136|0)|0;C=(ha(N+H|0,-10217)|0)+(ha(E+y|0,-5461)|0)|0;U=((K-H|0)*3363|0)+(ha(E+B|0,-11086)|0)|0;R=ha(N,-13631)|0;N=ha(B,-9222)|0;B=(ha(L,-18730)|0)+1024+(Q*6387|0)+O+z+V>>11;k[v+4>>2]=B;k[v+12>>2]=(y*589|0)+1024+R+C+F+z>>11;k[v+20>>2]=N+1024+(K*10055|0)+U+F+O>>11;k[v+28>>2]=(E*8728|0)+1024+(H*17760|0)+U+C+V>>11;u=u+1|0;if((u|0)==8){W=7;X=a;break}else v=v+32|0}while(1){v=k[X>>2]|0;a=X+224|0;u=k[a>>2]|0;t=u+v|0;s=X+32|0;r=k[s>>2]|0;q=X+192|0;p=k[q>>2]|0;o=p+r|0;n=X+64|0;m=k[n>>2]|0;j=X+160|0;i=k[j>>2]|0;h=i+m|0;g=X+96|0;f=k[g>>2]|0;e=X+128|0;d=k[e>>2]|0;c=d+f|0;b=c+t|0;V=t-c|0;c=h+o|0;t=o-h|0;h=v-u|0;u=r-p|0;p=m-i|0;i=f-d|0;k[X>>2]=c+4+b>>3;k[e>>2]=4-c+b>>3;b=(V+t|0)*4433|0;k[n>>2]=(V*6270|0)+32768+b>>16;V=(ha(t,-15137)|0)+32768+b>>16;k[q>>2]=V;V=p+h|0;q=i+u|0;b=(q+V|0)*9633|0;t=b+(ha(V,-3196)|0)|0;V=b+(ha(q,-16069)|0)|0;q=ha(i+h|0,-7373)|0;b=ha(p+u|0,-20995)|0;k[s>>2]=(h*12299|0)+32768+q+t>>16;k[g>>2]=(u*25172|0)+32768+b+V>>16;k[j>>2]=(p*16819|0)+32768+b+t>>16;k[a>>2]=(i*2446|0)+32768+q+V>>16;if((W|0)>0){W=W+-1|0;X=X+4|0}else break}return}function Ro(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,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;d=a+224|0;e=d+32|0;do{i[d>>0]=0;d=d+1|0}while((d|0)<(e|0));d=c+13|0;e=c+1|0;f=c+12|0;g=c+2|0;h=c+11|0;j=c+3|0;m=c+10|0;n=c+4|0;o=c+9|0;p=c+5|0;q=c+8|0;r=c+6|0;s=c+7|0;t=0;u=a;while(1){v=k[b+(t<<2)>>2]|0;w=l[v+c>>0]|0;x=l[v+d>>0]|0;y=x+w|0;z=l[v+e>>0]|0;A=l[v+f>>0]|0;B=A+z|0;C=l[v+g>>0]|0;D=l[v+h>>0]|0;E=D+C|0;F=l[v+j>>0]|0;G=l[v+m>>0]|0;H=G+F|0;I=l[v+n>>0]|0;J=l[v+o>>0]|0;K=J+I|0;L=l[v+p>>0]|0;M=l[v+q>>0]|0;N=M+L|0;O=l[v+r>>0]|0;P=l[v+s>>0]|0;v=P+O|0;Q=v+y|0;R=y-v|0;v=N+B|0;y=B-N|0;N=K+E|0;B=E-K|0;K=w-x|0;x=z-A|0;A=C-D|0;D=F-G|0;G=I-J|0;J=L-M|0;M=O-P|0;k[u>>2]=(N+H+v+Q<<2)+-7168;P=H<<1;H=(ha(N-P|0,-7223)|0)+1024+((v-P|0)*2578|0)+((Q-P|0)*10438|0)>>11;k[u+16>>2]=H;H=(R+y|0)*9058|0;k[u+8>>2]=(B*5027|0)+1024+(R*2237|0)+H>>11;R=(ha(B,-11295)|0)+1024+(ha(y,-14084)|0)+H>>11;k[u+24>>2]=R;R=A+x|0;H=J-G|0;k[u+28>>2]=K-R+D-H-M<<2;y=D<<13;D=(H*11512|0)-y+(ha(R,-1297)|0)|0;R=((M+G|0)*6164|0)+((A+K|0)*9810|0)|0;H=(ha(A,-19447)|0)+1024+(G*9175|0)+D+R>>11;k[u+20>>2]=H;H=((J-M|0)*3826|0)+((x+K|0)*10935|0)|0;G=(ha(x,-3474)|0)+1024+(ha(J,-25148)|0)+D+H>>11;k[u+12>>2]=G;G=(y|1024)+M+(ha(M+K|0,-9232)|0)+H+R>>11;k[u+4>>2]=G;t=t+1|0;if((t|0)==7){S=7;T=a;break}else u=u+32|0}while(1){u=k[T>>2]|0;a=T+192|0;t=k[a>>2]|0;s=t+u|0;r=T+32|0;q=k[r>>2]|0;p=T+160|0;o=k[p>>2]|0;n=o+q|0;m=T+64|0;j=k[m>>2]|0;h=T+128|0;g=k[h>>2]|0;f=g+j|0;e=T+96|0;d=k[e>>2]|0;c=u-t|0;t=q-o|0;o=j-g|0;g=f+s|0;k[T>>2]=((d+n+g|0)*10700|0)+32768>>16;j=((ha(d,-4)|0)+g|0)*3783|0;g=(s-f|0)*9850|0;q=(n-f|0)*3367|0;k[m>>2]=g+32768+q+j>>16;m=((s-n|0)*9434|0)+32768|0;s=m+q+(ha(n-(d<<1)|0,-7566)|0)>>16;k[h>>2]=s;k[a>>2]=m-g+j>>16;j=(t+c|0)*10009|0;g=(c-t|0)*1822|0;m=ha(o+t|0,-14752)|0;t=(o+c|0)*6565|0;k[r>>2]=32768-g+j+t>>16;k[e>>2]=g+32768+j+m>>16;k[p>>2]=(o*20017|0)+32768+t+m>>16;if((S|0)>0){S=S+-1|0;T=T+4|0}else break}return}function So(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,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;d=a+192|0;e=d+64|0;do{i[d>>0]=0;d=d+1|0}while((d|0)<(e|0));d=c+11|0;e=c+1|0;f=c+10|0;g=c+2|0;h=c+9|0;j=c+3|0;m=c+8|0;n=c+4|0;o=c+7|0;p=c+5|0;q=c+6|0;r=0;s=a;while(1){t=k[b+(r<<2)>>2]|0;u=l[t+c>>0]|0;v=l[t+d>>0]|0;w=v+u|0;x=l[t+e>>0]|0;y=l[t+f>>0]|0;z=y+x|0;A=l[t+g>>0]|0;B=l[t+h>>0]|0;C=B+A|0;D=l[t+j>>0]|0;E=l[t+m>>0]|0;F=E+D|0;G=l[t+n>>0]|0;H=l[t+o>>0]|0;I=H+G|0;J=l[t+p>>0]|0;K=l[t+q>>0]|0;t=K+J|0;L=t+w|0;M=w-t|0;t=z-I|0;w=F+C|0;N=C-F|0;F=u-v|0;v=x-y|0;y=A-B|0;B=D-E|0;E=G-H|0;H=J-K|0;k[s>>2]=(w+z+I+L<<2)+-6144;k[s+24>>2]=M-(t+N)<<2;k[s+16>>2]=((L-w|0)*10033|0)+1024>>11;k[s+8>>2]=1024-N+t+((M+N|0)*11190|0)>>11;N=(E+v|0)*4433|0;M=N+(v*6270|0)|0;v=N+(ha(E,-15137)|0)|0;E=(y+F|0)*9191|0;N=(B+F|0)*7053|0;t=ha(B+y|0,-1512)|0;w=ha(y,-19165)|0;L=ha(H,-9191)|0;I=ha(H+y|0,-4433)|0;y=(ha(F,-4758)|0)+1024+E+N+M+(H*1512|0)>>11;k[s+4>>2]=y;k[s+12>>2]=((F-B|0)*10703|0)+1024+v+I>>11;k[s+20>>2]=w+1024+E+t-v+(H*7053|0)>>11;k[s+28>>2]=(B*5946|0)+1024+t+N-M+L>>11;r=r+1|0;if((r|0)==6){O=7;P=a;break}else s=s+32|0}while(1){s=k[P>>2]|0;a=P+160|0;r=k[a>>2]|0;q=r+s|0;p=P+32|0;o=k[p>>2]|0;n=P+128|0;m=k[n>>2]|0;j=m+o|0;h=P+64|0;g=k[h>>2]|0;f=P+96|0;e=k[f>>2]|0;d=e+g|0;c=d+q|0;b=s-r|0;r=o-m|0;m=g-e|0;k[P>>2]=((c+j|0)*14564|0)+32768>>16;k[h>>2]=((q-d|0)*17837|0)+32768>>16;d=(((ha(j,-2)|0)+c|0)*10298|0)+32768>>16;k[n>>2]=d;d=(m+b|0)*5331|0;k[p>>2]=((r+b|0)*14564|0)+32768+d>>16;k[f>>2]=((b-r-m|0)*14564|0)+32768>>16;k[a>>2]=((m-r|0)*14564|0)+32768+d>>16;if((O|0)>0){O=O+-1|0;P=P+4|0}else break}return}function To(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,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;d=a+160|0;e=d+96|0;do{i[d>>0]=0;d=d+1|0}while((d|0)<(e|0));d=c+9|0;e=c+1|0;f=c+8|0;g=c+2|0;h=c+7|0;j=c+3|0;m=c+6|0;n=c+4|0;o=c+5|0;p=0;q=a;while(1){r=k[b+(p<<2)>>2]|0;s=l[r+c>>0]|0;t=l[r+d>>0]|0;u=t+s|0;v=l[r+e>>0]|0;w=l[r+f>>0]|0;x=w+v|0;y=l[r+g>>0]|0;z=l[r+h>>0]|0;A=z+y|0;B=l[r+j>>0]|0;C=l[r+m>>0]|0;D=C+B|0;E=l[r+n>>0]|0;F=l[r+o>>0]|0;r=F+E|0;G=r+u|0;H=u-r|0;r=D+x|0;u=x-D|0;D=s-t|0;t=v-w|0;w=y-z|0;z=B-C|0;C=E-F|0;k[q>>2]=(r+A+G<<2)+-5120;F=A<<1;A=(ha(r-F|0,-3580)|0)+1024+((G-F|0)*9373|0)>>11;k[q+16>>2]=A;A=(H+u|0)*6810|0;k[q+8>>2]=(H*4209|0)+1024+A>>11;H=(ha(u,-17828)|0)+1024+A>>11;k[q+24>>2]=H;H=C+D|0;A=t-z|0;k[q+20>>2]=H-(A+w)<<2;u=w<<13;k[q+4>>2]=(D*11443|0)+1024+(t*10323|0)+u+(z*5260|0)+(C*1812|0)>>11;w=(A<<12)-u+((H+A|0)*2531|0)|0;A=((D-C|0)*7791|0)+(ha(z+t|0,-4815)|0)+1024|0;k[q+12>>2]=A+w>>11;k[q+28>>2]=A-w>>11;p=p+1|0;if((p|0)==5){I=7;J=a;break}else q=q+32|0}while(1){q=k[J>>2]|0;a=J+128|0;p=k[a>>2]|0;o=p+q|0;n=J+32|0;m=k[n>>2]|0;j=J+96|0;h=k[j>>2]|0;g=h+m|0;f=J+64|0;e=k[f>>2]|0;d=g+o|0;c=q-p|0;p=m-h|0;k[J>>2]=((d+e|0)*10486|0)+16384>>15;h=(d-(e<<2)|0)*3707|0;e=((o-g|0)*8290|0)+16384|0;k[f>>2]=e+h>>15;k[a>>2]=e-h>>15;h=(p+c|0)*8716|0;k[n>>2]=(c*5387|0)+16384+h>>15;c=(ha(p,-22820)|0)+16384+h>>15;k[j>>2]=c;if((I|0)>0){I=I+-1|0;J=J+4|0}else break}return}function Uo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,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;d=a+128|0;e=d+128|0;do{i[d>>0]=0;d=d+1|0}while((d|0)<(e|0));d=c+7|0;e=c+1|0;f=c+6|0;g=c+2|0;h=c+5|0;j=c+3|0;m=c+4|0;n=0;o=a;while(1){p=k[b+(n<<2)>>2]|0;q=l[p+c>>0]|0;r=l[p+d>>0]|0;s=r+q|0;t=l[p+e>>0]|0;u=l[p+f>>0]|0;v=u+t|0;w=l[p+g>>0]|0;x=l[p+h>>0]|0;y=x+w|0;z=l[p+j>>0]|0;A=l[p+m>>0]|0;p=A+z|0;B=p+s|0;C=s-p|0;p=y+v|0;s=v-y|0;y=q-r|0;r=t-u|0;u=w-x|0;x=z-A|0;k[o>>2]=(B+p<<3)+-8192;k[o+16>>2]=B-p<<3;p=((C+s|0)*4433|0)+512|0;k[o+8>>2]=p+(C*6270|0)>>10;C=p+(ha(s,-15137)|0)>>10;k[o+24>>2]=C;C=u+y|0;s=x+r|0;p=((s+C|0)*9633|0)+512|0;B=p+(ha(C,-3196)|0)|0;C=p+(ha(s,-16069)|0)|0;s=ha(x+y|0,-7373)|0;p=ha(u+r|0,-20995)|0;k[o+4>>2]=s+(y*12299|0)+B>>10;k[o+12>>2]=p+(r*25172|0)+C>>10;k[o+20>>2]=p+(u*16819|0)+B>>10;k[o+28>>2]=s+(x*2446|0)+C>>10;n=n+1|0;if((n|0)==4){D=7;E=a;break}else o=o+32|0}while(1){o=k[E>>2]|0;a=E+96|0;n=k[a>>2]|0;m=o+2+n|0;j=E+32|0;h=k[j>>2]|0;g=E+64|0;f=k[g>>2]|0;e=f+h|0;d=o-n|0;n=h-f|0;k[E>>2]=e+m>>2;k[g>>2]=m-e>>2;e=((n+d|0)*4433|0)+16384|0;k[j>>2]=e+(d*6270|0)>>15;d=e+(ha(n,-15137)|0)>>15;k[a>>2]=d;if((D|0)>0){D=D+-1|0;E=E+4|0}else break}return}function Vo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;qr(a|0,0,256)|0;d=c+5|0;e=c+1|0;f=c+4|0;g=c+2|0;h=c+3|0;i=0;j=a;while(1){m=k[b+(i<<2)>>2]|0;n=l[m+c>>0]|0;o=l[m+d>>0]|0;p=o+n|0;q=l[m+e>>0]|0;r=l[m+f>>0]|0;s=r+q|0;t=l[m+g>>0]|0;u=l[m+h>>0]|0;m=u+t|0;v=m+p|0;w=n-o|0;o=q-r|0;r=t-u|0;k[j>>2]=(v+s<<3)+-6144;k[j+8>>2]=((p-m|0)*10033|0)+512>>10;m=(((ha(s,-2)|0)+v|0)*5793|0)+512>>10;k[j+16>>2]=m;m=((r+w|0)*2998|0)+512>>10;k[j+4>>2]=m+(o+w<<3);k[j+12>>2]=w-o-r<<3;k[j+20>>2]=m+(r-o<<3);i=i+1|0;if((i|0)==3)break;else j=j+32|0}j=k[a>>2]|0;i=a+64|0;h=k[i>>2]|0;g=h+j|0;f=a+32|0;e=k[f>>2]|0;k[a>>2]=((g+e|0)*14564|0)+16384>>15;d=(((ha(e,-2)|0)+g|0)*10298|0)+16384>>15;k[i>>2]=d;k[f>>2]=((j-h|0)*17837|0)+16384>>15;h=a+4|0;j=k[h>>2]|0;f=a+68|0;d=k[f>>2]|0;i=d+j|0;g=a+36|0;e=k[g>>2]|0;k[h>>2]=((i+e|0)*14564|0)+16384>>15;h=(((ha(e,-2)|0)+i|0)*10298|0)+16384>>15;k[f>>2]=h;k[g>>2]=((j-d|0)*17837|0)+16384>>15;d=a+8|0;j=k[d>>2]|0;g=a+72|0;h=k[g>>2]|0;f=h+j|0;i=a+40|0;e=k[i>>2]|0;k[d>>2]=((f+e|0)*14564|0)+16384>>15;d=(((ha(e,-2)|0)+f|0)*10298|0)+16384>>15;k[g>>2]=d;k[i>>2]=((j-h|0)*17837|0)+16384>>15;h=a+12|0;j=k[h>>2]|0;i=a+76|0;d=k[i>>2]|0;g=d+j|0;f=a+44|0;e=k[f>>2]|0;k[h>>2]=((g+e|0)*14564|0)+16384>>15;h=(((ha(e,-2)|0)+g|0)*10298|0)+16384>>15;k[i>>2]=h;k[f>>2]=((j-d|0)*17837|0)+16384>>15;d=a+16|0;j=k[d>>2]|0;f=a+80|0;h=k[f>>2]|0;i=h+j|0;g=a+48|0;e=k[g>>2]|0;k[d>>2]=((i+e|0)*14564|0)+16384>>15;d=(((ha(e,-2)|0)+i|0)*10298|0)+16384>>15;k[f>>2]=d;k[g>>2]=((j-h|0)*17837|0)+16384>>15;h=a+20|0;j=k[h>>2]|0;g=a+84|0;d=k[g>>2]|0;f=d+j|0;i=a+52|0;a=k[i>>2]|0;k[h>>2]=((f+a|0)*14564|0)+16384>>15;h=(((ha(a,-2)|0)+f|0)*10298|0)+16384>>15;k[g>>2]=h;k[i>>2]=((j-d|0)*17837|0)+16384>>15;return}function Wo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0;qr(a|0,0,256)|0;d=c+3|0;e=c+1|0;f=c+2|0;g=k[b>>2]|0;h=l[g+c>>0]|0;i=l[g+d>>0]|0;j=i+h|0;m=l[g+e>>0]|0;n=l[g+f>>0]|0;g=n+m|0;o=h-i|0;i=m-n|0;n=g+j<<5;k[a>>2]=n+-16384;m=j-g<<5;k[a+8>>2]=m;g=((i+o|0)*4433|0)+128|0;j=g+(o*6270|0)>>8;o=a+4|0;k[o>>2]=j;h=g+(ha(i,-15137)|0)>>8;k[a+12>>2]=h;i=k[b+4>>2]|0;b=l[i+c>>0]|0;c=l[i+d>>0]|0;d=c+b|0;g=l[i+e>>0]|0;e=l[i+f>>0]|0;f=e+g|0;i=b-c|0;c=g-e|0;e=(f+d<<5)+-16384|0;g=d-f<<5;f=((c+i|0)*4433|0)+128|0;d=f+(i*6270|0)>>8;i=f+(ha(c,-15137)|0)>>8;c=n+-16382|0;k[a>>2]=c+e>>2;k[a+32>>2]=c-e>>2;e=j+2|0;k[o>>2]=e+d>>2;k[a+36>>2]=e-d>>2;d=m|2;k[a+8>>2]=d+g>>2;k[a+40>>2]=d-g>>2;g=h+2|0;k[a+12>>2]=g+i>>2;k[a+44>>2]=g-i>>2;return}function Xo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;qr(a|0,0,256)|0;d=k[b>>2]|0;b=l[d+c>>0]|0;e=l[d+(c+1)>>0]|0;k[a>>2]=(e+b<<5)+-8192;k[a+4>>2]=b-e<<5;return}function Yo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+256|0;e=d;f=c+7|0;g=c+1|0;h=c+6|0;i=c+2|0;j=c+5|0;m=c+3|0;n=c+4|0;o=0;p=a;a:while(1){q=k[b+(o<<2)>>2]|0;s=l[q+c>>0]|0;t=l[q+f>>0]|0;u=t+s|0;v=l[q+g>>0]|0;w=l[q+h>>0]|0;x=w+v|0;y=l[q+i>>0]|0;z=l[q+j>>0]|0;A=z+y|0;B=l[q+m>>0]|0;C=l[q+n>>0]|0;q=C+B|0;D=q+u|0;E=u-q|0;q=A+x|0;u=x-A|0;A=s-t|0;t=v-w|0;w=y-z|0;z=B-C|0;k[p>>2]=(D+q<<2)+-4096;k[p+16>>2]=D-q<<2;q=(E+u|0)*4433|0;k[p+8>>2]=(E*6270|0)+1024+q>>11;E=(ha(u,-15137)|0)+1024+q>>11;k[p+24>>2]=E;E=w+A|0;q=z+t|0;u=(q+E|0)*9633|0;D=u+(ha(E,-3196)|0)|0;E=u+(ha(q,-16069)|0)|0;q=ha(z+A|0,-7373)|0;u=ha(w+t|0,-20995)|0;k[p+4>>2]=(A*12299|0)+1024+q+D>>11;k[p+12>>2]=(t*25172|0)+1024+u+E>>11;k[p+20>>2]=(w*16819|0)+1024+u+D>>11;k[p+28>>2]=(z*2446|0)+1024+q+E>>11;switch(o|0){case 7:{o=8;p=e;continue a;break}case 15:{F=7;G=a;H=e;break a;break}default:{}}o=o+1|0;p=p+32|0}while(1){p=k[G>>2]|0;o=k[H+224>>2]|0;e=o+p|0;a=G+32|0;n=k[a>>2]|0;m=k[H+192>>2]|0;j=m+n|0;i=G+64|0;h=k[i>>2]|0;g=k[H+160>>2]|0;f=g+h|0;c=G+96|0;b=k[c>>2]|0;E=k[H+128>>2]|0;q=E+b|0;z=G+128|0;D=k[z>>2]|0;u=k[H+96>>2]|0;w=u+D|0;t=G+160|0;A=k[t>>2]|0;C=k[H+64>>2]|0;B=C+A|0;y=G+192|0;v=k[y>>2]|0;s=k[H+32>>2]|0;x=s+v|0;I=G+224|0;J=k[I>>2]|0;K=k[H>>2]|0;L=K+J|0;M=L+e|0;N=e-L|0;L=x+j|0;e=j-x|0;x=B+f|0;j=f-B|0;B=w+q|0;f=q-w|0;w=p-o|0;o=n-m|0;m=h-g|0;g=b-E|0;E=D-u|0;u=A-C|0;C=v-s|0;s=J-K|0;k[G>>2]=B+4+x+L+M>>3;k[z>>2]=((L-x|0)*4433|0)+32768+((M-B|0)*10703|0)>>16;B=((N-j|0)*11363|0)+((f-e|0)*2260|0)|0;k[i>>2]=(j*17799|0)+32768+(e*11893|0)+B>>16;e=(ha(f,-8697)|0)+32768+(ha(N,-1730)|0)+B>>16;k[y>>2]=e;e=((C-s|0)*3363|0)+((o+w|0)*11086|0)|0;y=((s+u|0)*5461|0)+((m+w|0)*10217|0)|0;B=((E-s|0)*7350|0)+((g+w|0)*8956|0)|0;N=((C-u|0)*11529|0)+((m+o|0)*1136|0)|0;f=(ha(C+E|0,-10217)|0)+(ha(g+o|0,-5461)|0)|0;j=((u-E|0)*3363|0)+(ha(g+m|0,-11086)|0)|0;i=ha(C,-13631)|0;C=ha(m,-9222)|0;m=(ha(w,-18730)|0)+32768+(s*6387|0)+y+e+B>>16;k[a>>2]=m;k[c>>2]=(o*589|0)+32768+i+f+N+e>>16;k[t>>2]=C+32768+(u*10055|0)+j+N+y>>16;k[I>>2]=(g*8728|0)+32768+(E*17760|0)+j+f+B>>16;if((F|0)>0){F=F+-1|0;G=G+4|0;H=H+4|0}else break}r=d;return}function Zo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+192|0;e=d;qr(a|0,0,256)|0;f=c+6|0;g=c+1|0;h=c+5|0;i=c+2|0;j=c+4|0;m=c+3|0;n=0;o=a;a:while(1){p=k[b+(n<<2)>>2]|0;q=l[p+c>>0]|0;s=l[p+f>>0]|0;t=s+q|0;u=l[p+g>>0]|0;v=l[p+h>>0]|0;w=v+u|0;x=l[p+i>>0]|0;y=l[p+j>>0]|0;z=y+x|0;A=l[p+m>>0]|0;p=q-s|0;s=u-v|0;v=x-y|0;y=z+t|0;k[o>>2]=(A+w+y<<2)+-3584;x=((ha(A,-4)|0)+y|0)*2896|0;y=(t-z|0)*7542|0;u=(w-z|0)*2578|0;k[o+8>>2]=y+1024+u+x>>11;z=((t-w|0)*7223|0)+1024|0;t=z+u+(ha(w-(A<<1)|0,-5793)|0)>>11;k[o+16>>2]=t;k[o+24>>2]=z-y+x>>11;x=(s+p|0)*7663|0;y=(p-s|0)*1395|0;z=ha(v+s|0,-11295)|0;s=(v+p|0)*5027|0;k[o+4>>2]=1024-y+x+s>>11;k[o+12>>2]=y+1024+x+z>>11;k[o+20>>2]=(v*15326|0)+1024+s+z>>11;switch(n|0){case 7:{n=8;o=e;continue a;break}case 13:{B=0;C=a;D=e;break a;break}default:{}}n=n+1|0;o=o+32|0}while(1){o=k[C>>2]|0;n=k[D+160>>2]|0;e=n+o|0;a=C+32|0;m=k[a>>2]|0;j=k[D+128>>2]|0;i=j+m|0;h=C+64|0;g=k[h>>2]|0;f=k[D+96>>2]|0;c=f+g|0;b=C+96|0;z=k[b>>2]|0;s=k[D+64>>2]|0;v=s+z|0;x=C+128|0;y=k[x>>2]|0;p=k[D+32>>2]|0;t=p+y|0;A=C+160|0;w=k[A>>2]|0;u=k[D>>2]|0;q=u+w|0;E=C+192|0;F=k[E>>2]|0;G=C+224|0;H=k[G>>2]|0;I=H+F|0;J=I+e|0;K=e-I|0;I=q+i|0;e=i-q|0;q=t+c|0;i=c-t|0;t=o-n|0;n=m-j|0;j=g-f|0;f=z-s|0;s=y-p|0;p=w-u|0;u=F-H|0;k[C>>2]=((q+v+I+J|0)*5350|0)+16384>>15;H=v<<1;v=(ha(q-H|0,-4717)|0)+16384+((I-H|0)*1684|0)+((J-H|0)*6817|0)>>15;k[x>>2]=v;v=(K+e|0)*5915|0;k[h>>2]=(i*3283|0)+16384+(K*1461|0)+v>>15;K=(ha(i,-7376)|0)+16384+(ha(e,-9198)|0)+v>>15;k[E>>2]=K;K=j+n|0;E=p-s|0;k[G>>2]=((t-K+f-E-u|0)*5350|0)+16384>>15;G=f*5350|0;f=(E*7518|0)-G+(ha(K,-847)|0)|0;K=((u+s|0)*4025|0)+((j+t|0)*6406|0)|0;E=(ha(j,-12700)|0)+16384+(s*5992|0)+f+K>>15;k[A>>2]=E;E=((p-u|0)*2499|0)+((n+t|0)*7141|0)|0;A=(ha(n,-2269)|0)+16384+(ha(p,-16423)|0)+f+E>>15;k[b>>2]=A;A=(ha(t,-6029)|0)+16384+G+(ha(u,-679)|0)+E+K>>15;k[a>>2]=A;B=B+1|0;if((B|0)==7)break;else{C=C+4|0;D=D+4|0}}r=d;return}function _o(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+128|0;e=d;qr(a|0,0,256)|0;f=c+5|0;g=c+1|0;h=c+4|0;i=c+2|0;j=c+3|0;m=0;n=a;a:while(1){o=k[b+(m<<2)>>2]|0;p=l[o+c>>0]|0;q=l[o+f>>0]|0;s=q+p|0;t=l[o+g>>0]|0;u=l[o+h>>0]|0;v=u+t|0;w=l[o+i>>0]|0;x=l[o+j>>0]|0;o=x+w|0;y=o+s|0;z=p-q|0;q=t-u|0;u=w-x|0;k[n>>2]=(y+v<<2)+-3072;k[n+8>>2]=((s-o|0)*10033|0)+1024>>11;o=(((ha(v,-2)|0)+y|0)*5793|0)+1024>>11;k[n+16>>2]=o;o=((u+z|0)*2998|0)+1024>>11;k[n+4>>2]=o+(q+z<<2);k[n+12>>2]=z-q-u<<2;k[n+20>>2]=o+(u-q<<2);switch(m|0){case 7:{m=8;n=e;continue a;break}case 11:{A=0;B=a;C=e;break a;break}default:{}}m=m+1|0;n=n+32|0}while(1){n=k[B>>2]|0;m=k[C+96>>2]|0;e=m+n|0;a=B+32|0;j=k[a>>2]|0;i=k[C+64>>2]|0;h=i+j|0;g=B+64|0;f=k[g>>2]|0;c=k[C+32>>2]|0;b=c+f|0;q=B+96|0;u=k[q>>2]|0;o=k[C>>2]|0;z=o+u|0;y=B+128|0;v=k[y>>2]|0;s=B+224|0;x=k[s>>2]|0;w=x+v|0;t=B+160|0;p=k[t>>2]|0;D=B+192|0;E=k[D>>2]|0;F=E+p|0;G=F+e|0;H=e-F|0;F=h-w|0;e=z+b|0;I=b-z|0;z=n-m|0;m=j-i|0;i=f-c|0;c=u-o|0;o=v-x|0;x=p-E|0;k[B>>2]=((e+h+w+G|0)*7282|0)+16384>>15;k[D>>2]=((H-(F+I)|0)*7282|0)+16384>>15;k[y>>2]=((G-e|0)*8918|0)+16384>>15;k[g>>2]=((F-I|0)*7282|0)+16384+((H+I|0)*9947|0)>>15;I=(o+m|0)*3941|0;H=I+(m*5573|0)|0;m=I+(ha(o,-13455)|0)|0;o=(i+z|0)*8170|0;I=(c+z|0)*6269|0;F=ha(c+i|0,-1344)|0;g=ha(i,-17036)|0;e=ha(x,-8170)|0;G=ha(x+i|0,-3941)|0;i=(ha(z,-4229)|0)+16384+o+I+H+(x*1344|0)>>15;k[a>>2]=i;k[q>>2]=((z-c|0)*9514|0)+16384+m+G>>15;k[t>>2]=g+16384+o+F-m+(x*6269|0)>>15;k[s>>2]=(c*5285|0)+16384+F+I-H+e>>15;A=A+1|0;if((A|0)==6)break;else{B=B+4|0;C=C+4|0}}r=d;return}function $o(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+64|0;e=d;qr(a|0,0,256)|0;f=c+4|0;g=c+1|0;h=c+3|0;i=c+2|0;j=0;m=a;a:while(1){n=k[b+(j<<2)>>2]|0;o=l[n+c>>0]|0;p=l[n+f>>0]|0;q=p+o|0;s=l[n+g>>0]|0;t=l[n+h>>0]|0;u=t+s|0;v=l[n+i>>0]|0;n=u+q|0;w=o-p|0;p=s-t|0;k[m>>2]=(n+v<<2)+-2560;t=(n-(v<<2)|0)*2896|0;v=((q-u|0)*6476|0)+1024|0;k[m+8>>2]=v+t>>11;k[m+16>>2]=v-t>>11;t=(p+w|0)*6810|0;k[m+4>>2]=(w*4209|0)+1024+t>>11;w=(ha(p,-17828)|0)+1024+t>>11;k[m+12>>2]=w;switch(j|0){case 7:{j=8;m=e;continue a;break}case 9:{x=0;y=a;z=e;break a;break}default:{}}j=j+1|0;m=m+32|0}while(1){m=k[y>>2]|0;j=k[z+32>>2]|0;e=j+m|0;a=y+32|0;i=k[a>>2]|0;h=k[z>>2]|0;g=h+i|0;f=y+64|0;c=k[f>>2]|0;b=y+224|0;w=k[b>>2]|0;t=w+c|0;p=y+96|0;v=k[p>>2]|0;u=y+192|0;q=k[u>>2]|0;n=q+v|0;s=y+128|0;o=k[s>>2]|0;A=y+160|0;B=k[A>>2]|0;C=B+o|0;D=C+e|0;E=e-C|0;C=n+g|0;e=g-n|0;n=m-j|0;j=i-h|0;h=c-w|0;w=v-q|0;q=o-B|0;k[y>>2]=((C+t+D|0)*10486|0)+16384>>15;B=t<<1;t=(ha(C-B|0,-4582)|0)+16384+((D-B|0)*11997|0)>>15;k[s>>2]=t;t=(E+e|0)*8716|0;k[f>>2]=(E*5387|0)+16384+t>>15;E=(ha(e,-22820)|0)+16384+t>>15;k[u>>2]=E;E=q+n|0;u=j-w|0;k[A>>2]=((E-(u+h)|0)*10486|0)+16384>>15;A=h*10486|0;k[a>>2]=(n*14647|0)+16384+(j*13213|0)+A+(w*6732|0)+(q*2320|0)>>15;a=(u*5243|0)-A+((E+u|0)*3240|0)|0;u=((n-q|0)*9973|0)+(ha(w+j|0,-6163)|0)+16384|0;k[p>>2]=u+a>>15;k[b>>2]=u-a>>15;x=x+1|0;if((x|0)==5)break;else{y=y+4|0;z=z+4|0}}r=d;return}function ap(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;qr(a|0,0,256)|0;d=c+3|0;e=c+1|0;f=c+2|0;g=0;h=a;while(1){i=k[b+(g<<2)>>2]|0;j=l[i+c>>0]|0;m=l[i+d>>0]|0;n=m+j|0;o=l[i+e>>0]|0;p=l[i+f>>0]|0;i=p+o|0;q=j-m|0;m=o-p|0;k[h>>2]=(i+n<<3)+-4096;k[h+8>>2]=n-i<<3;i=((m+q|0)*4433|0)+512|0;k[h+4>>2]=i+(q*6270|0)>>10;q=i+(ha(m,-15137)|0)>>10;k[h+12>>2]=q;g=g+1|0;if((g|0)==8){r=0;s=a;break}else h=h+32|0}while(1){h=k[s>>2]|0;a=s+224|0;g=k[a>>2]|0;f=g+h|0;e=s+32|0;d=k[e>>2]|0;c=s+192|0;b=k[c>>2]|0;q=b+d|0;m=s+64|0;i=k[m>>2]|0;n=s+160|0;p=k[n>>2]|0;o=p+i|0;j=s+96|0;t=k[j>>2]|0;u=s+128|0;v=k[u>>2]|0;w=v+t|0;x=f+2+w|0;y=f-w|0;w=o+q|0;f=q-o|0;o=h-g|0;g=d-b|0;b=i-p|0;p=t-v|0;k[s>>2]=x+w>>2;k[u>>2]=x-w>>2;w=((y+f|0)*4433|0)+16384|0;k[m>>2]=w+(y*6270|0)>>15;y=w+(ha(f,-15137)|0)>>15;k[c>>2]=y;y=b+o|0;c=p+g|0;f=((c+y|0)*9633|0)+16384|0;w=f+(ha(y,-3196)|0)|0;y=f+(ha(c,-16069)|0)|0;c=ha(p+o|0,-7373)|0;f=ha(b+g|0,-20995)|0;k[e>>2]=c+(o*12299|0)+w>>15;k[j>>2]=f+(g*25172|0)+y>>15;k[n>>2]=f+(b*16819|0)+w>>15;k[a>>2]=c+(p*2446|0)+y>>15;r=r+1|0;if((r|0)==4)break;else s=s+4|0}return}function bp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;qr(a|0,0,256)|0;d=c+2|0;e=c+1|0;f=0;g=a;while(1){h=k[b+(f<<2)>>2]|0;i=l[h+c>>0]|0;j=l[h+d>>0]|0;m=j+i|0;n=l[h+e>>0]|0;k[g>>2]=(m+n<<3)+-3072;h=(((ha(n,-2)|0)+m|0)*5793|0)+512>>10;k[g+8>>2]=h;k[g+4>>2]=((i-j|0)*10033|0)+512>>10;f=f+1|0;if((f|0)==6){o=0;p=a;break}else g=g+32|0}while(1){g=k[p>>2]|0;a=p+160|0;f=k[a>>2]|0;e=f+g|0;d=p+32|0;c=k[d>>2]|0;b=p+128|0;j=k[b>>2]|0;i=j+c|0;h=p+64|0;m=k[h>>2]|0;n=p+96|0;q=k[n>>2]|0;r=q+m|0;s=r+e|0;t=g-f|0;f=c-j|0;j=m-q|0;k[p>>2]=((s+i|0)*14564|0)+16384>>15;k[h>>2]=((e-r|0)*17837|0)+16384>>15;r=(((ha(i,-2)|0)+s|0)*10298|0)+16384>>15;k[b>>2]=r;r=(j+t|0)*5331|0;k[d>>2]=((f+t|0)*14564|0)+16384+r>>15;k[n>>2]=((t-f-j|0)*14564|0)+16384>>15;k[a>>2]=((j-f|0)*14564|0)+16384+r>>15;o=o+1|0;if((o|0)==3)break;else p=p+4|0}return}function cp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0;qr(a|0,0,256)|0;d=c+1|0;e=k[b>>2]|0;f=l[e+c>>0]|0;g=l[e+d>>0]|0;e=(g+f<<3)+-2048|0;k[a>>2]=e;h=f-g<<3;g=a+4|0;k[g>>2]=h;f=a+32|0;i=k[b+4>>2]|0;j=l[i+c>>0]|0;m=l[i+d>>0]|0;i=(m+j<<3)+-2048|0;k[f>>2]=i;n=j-m<<3;k[a+36>>2]=n;m=k[b+8>>2]|0;j=l[m+c>>0]|0;o=l[m+d>>0]|0;m=(o+j<<3)+-2048|0;k[a+64>>2]=m;p=j-o<<3;k[a+68>>2]=p;o=k[b+12>>2]|0;b=l[o+c>>0]|0;c=l[o+d>>0]|0;d=(c+b<<3)+-2048|0;o=b-c<<3;c=d+e|0;b=m+i|0;j=e-d|0;d=i-m|0;k[a>>2]=b+c;k[a+64>>2]=c-b;b=((d+j|0)*4433|0)+4096|0;k[f>>2]=b+(j*6270|0)>>13;j=b+(ha(d,-15137)|0)>>13;k[a+96>>2]=j;j=o+h|0;d=p+n|0;b=h-o|0;o=n-p|0;k[g>>2]=d+j;k[a+68>>2]=j-d;d=((o+b|0)*4433|0)+4096|0;k[a+36>>2]=d+(b*6270|0)>>13;b=d+(ha(o,-15137)|0)>>13;k[a+100>>2]=b;return}function dp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;qr(a|0,0,256)|0;d=l[(k[b>>2]|0)+c>>0]|0;e=l[(k[b+4>>2]|0)+c>>0]|0;k[a>>2]=(e+d<<5)+-8192;k[a+32>>2]=d-e<<5;return}function ep(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,l=0,m=0,n=0,p=0.0,q=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.0,D=0;f=r;r=r+256|0;g=f;h=k[a+336>>2]|0;a=8;l=c;c=k[b+84>>2]|0;b=g;while(1){m=j[l+16>>1]|0;n=j[l+32>>1]|0;if(!((m|n)<<16>>16))if(((((j[l+48>>1]|0)==0?(j[l+64>>1]|0)==0:0)?(j[l+80>>1]|0)==0:0)?(j[l+96>>1]|0)==0:0)?(j[l+112>>1]|0)==0:0){p=+(j[l>>1]|0)*+o[c>>2];o[b>>2]=p;o[b+32>>2]=p;o[b+64>>2]=p;o[b+96>>2]=p;o[b+128>>2]=p;o[b+160>>2]=p;o[b+192>>2]=p;o[b+224>>2]=p}else{q=0;s=10}else{q=n;s=10}if((s|0)==10){s=0;p=+(j[l>>1]|0)*+o[c>>2];t=+(q<<16>>16)*+o[c+64>>2];u=+(j[l+64>>1]|0)*+o[c+128>>2];v=+(j[l+96>>1]|0)*+o[c+192>>2];w=p+u;x=p-u;u=t+v;p=(t-v)*1.4142135381698608-u;v=w+u;t=w-u;u=x+p;w=x-p;p=+(m<<16>>16)*+o[c+32>>2];x=+(j[l+48>>1]|0)*+o[c+96>>2];y=+(j[l+80>>1]|0)*+o[c+160>>2];z=+(j[l+112>>1]|0)*+o[c+224>>2];A=x+y;B=y-x;x=p+z;y=p-z;z=A+x;p=(B+y)*1.8477590084075928;C=p-B*2.613126039505005-z;B=(x-A)*1.4142135381698608-C;A=p-y*1.0823922157287598-B;o[b>>2]=v+z;o[b+224>>2]=v-z;o[b+32>>2]=u+C;o[b+192>>2]=u-C;o[b+64>>2]=w+B;o[b+160>>2]=w-B;o[b+96>>2]=t+A;o[b+128>>2]=t-A}if((a|0)>1){a=a+-1|0;l=l+2|0;c=c+4|0;b=b+4|0}else break}b=e+7|0;c=e+1|0;l=e+6|0;a=e+2|0;q=e+5|0;s=e+3|0;m=e+4|0;n=0;D=g;while(1){g=k[d+(n<<2)>>2]|0;A=+o[D>>2]+512.5;t=+o[D+16>>2];B=A+t;w=A-t;t=+o[D+8>>2];A=+o[D+24>>2];C=t+A;u=(t-A)*1.4142135381698608-C;A=B+C;t=B-C;C=w+u;B=w-u;u=+o[D+20>>2];w=+o[D+12>>2];z=u+w;v=u-w;w=+o[D+4>>2];u=+o[D+28>>2];y=w+u;p=w-u;u=z+y;w=(v+p)*1.8477590084075928;x=w-v*2.613126039505005-u;v=(y-z)*1.4142135381698608-x;z=w-p*1.0823922157287598-v;i[g+e>>0]=i[h+((~~(A+u)&1023)+-384)>>0]|0;i[g+b>>0]=i[h+((~~(A-u)&1023)+-384)>>0]|0;i[g+c>>0]=i[h+((~~(C+x)&1023)+-384)>>0]|0;i[g+l>>0]=i[h+((~~(C-x)&1023)+-384)>>0]|0;i[g+a>>0]=i[h+((~~(B+v)&1023)+-384)>>0]|0;i[g+q>>0]=i[h+((~~(B-v)&1023)+-384)>>0]|0;i[g+s>>0]=i[h+((~~(t+z)&1023)+-384)>>0]|0;i[g+m>>0]=i[h+((~~(t-z)&1023)+-384)>>0]|0;n=n+1|0;if((n|0)==8)break;else D=D+32|0}r=f;return}function fp(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,l=0,m=0,n=0,o=0,p=0,q=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=r;r=r+256|0;g=f;h=k[a+336>>2]|0;a=8;l=c;c=k[b+84>>2]|0;b=g;while(1){m=j[l+16>>1]|0;n=j[l+32>>1]|0;if(!((m|n)<<16>>16))if(((((j[l+48>>1]|0)==0?(j[l+64>>1]|0)==0:0)?(j[l+80>>1]|0)==0:0)?(j[l+96>>1]|0)==0:0)?(j[l+112>>1]|0)==0:0){o=ha(j[l>>1]|0,k[c>>2]|0)|0;k[b>>2]=o;k[b+32>>2]=o;k[b+64>>2]=o;k[b+96>>2]=o;k[b+128>>2]=o;k[b+160>>2]=o;k[b+192>>2]=o;k[b+224>>2]=o}else{p=0;q=10}else{p=n;q=10}if((q|0)==10){q=0;n=ha(j[l>>1]|0,k[c>>2]|0)|0;o=ha(p<<16>>16,k[c+64>>2]|0)|0;s=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;t=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;u=s+n|0;v=n-s|0;s=t+o|0;n=((o-t|0)*362>>8)-s|0;t=s+u|0;o=u-s|0;s=n+v|0;u=v-n|0;n=ha(m<<16>>16,k[c+32>>2]|0)|0;m=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;v=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;w=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;x=v+m|0;y=v-m|0;m=w+n|0;v=n-w|0;w=m+x|0;n=(v+y|0)*473>>8;z=n-(y*669>>8)-w|0;y=((m-x|0)*362>>8)-z|0;x=n-(v*277>>8)-y|0;k[b>>2]=w+t;k[b+224>>2]=t-w;k[b+32>>2]=z+s;k[b+192>>2]=s-z;k[b+64>>2]=y+u;k[b+160>>2]=u-y;k[b+96>>2]=x+o;k[b+128>>2]=o-x}if((a|0)>1){a=a+-1|0;l=l+2|0;c=c+4|0;b=b+4|0}else break}b=e+1|0;c=e+2|0;l=e+3|0;a=e+4|0;p=e+5|0;x=e+6|0;o=e+7|0;y=0;u=g;while(1){g=k[d+(y<<2)>>2]|0;z=g+e|0;s=(k[u>>2]|0)+16400|0;w=k[u+4>>2]|0;t=k[u+8>>2]|0;if(!(w|t))if(((((k[u+12>>2]|0)==0?(k[u+16>>2]|0)==0:0)?(k[u+20>>2]|0)==0:0)?(k[u+24>>2]|0)==0:0)?(k[u+28>>2]|0)==0:0){v=i[h+((s>>>5&1023)+-384)>>0]|0;i[z>>0]=v;i[g+b>>0]=v;i[g+c>>0]=v;i[g+l>>0]=v;i[g+a>>0]=v;i[g+p>>0]=v;i[g+x>>0]=v;i[g+o>>0]=v}else{A=0;q=19}else{A=t;q=19}if((q|0)==19){q=0;t=k[u+16>>2]|0;v=t+s|0;n=s-t|0;t=k[u+24>>2]|0;s=t+A|0;m=((A-t|0)*362>>8)-s|0;t=s+v|0;B=v-s|0;s=m+n|0;v=n-m|0;m=k[u+20>>2]|0;n=k[u+12>>2]|0;C=n+m|0;D=m-n|0;n=k[u+28>>2]|0;m=n+w|0;E=w-n|0;n=m+C|0;w=(E+D|0)*473>>8;F=w-(D*669>>8)-n|0;D=((m-C|0)*362>>8)-F|0;C=w-(E*277>>8)-D|0;i[z>>0]=i[h+(((n+t|0)>>>5&1023)+-384)>>0]|0;i[g+o>>0]=i[h+(((t-n|0)>>>5&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((F+s|0)>>>5&1023)+-384)>>0]|0;i[g+x>>0]=i[h+(((s-F|0)>>>5&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((D+v|0)>>>5&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((v-D|0)>>>5&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((C+B|0)>>>5&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((B-C|0)>>>5&1023)+-384)>>0]|0}y=y+1|0;if((y|0)==8)break;else u=u+32|0}r=f;return}function gp(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+256|0;g=f;h=k[a+336>>2]|0;a=8;l=c;c=k[b+84>>2]|0;b=g;while(1){m=j[l+16>>1]|0;n=j[l+32>>1]|0;if(!((m|n)<<16>>16))if(((((j[l+48>>1]|0)==0?(j[l+64>>1]|0)==0:0)?(j[l+80>>1]|0)==0:0)?(j[l+96>>1]|0)==0:0)?(j[l+112>>1]|0)==0:0){o=ha(k[c>>2]<<2,j[l>>1]|0)|0;k[b>>2]=o;k[b+32>>2]=o;k[b+64>>2]=o;k[b+96>>2]=o;k[b+128>>2]=o;k[b+160>>2]=o;k[b+192>>2]=o;k[b+224>>2]=o}else{p=0;q=10}else{p=n;q=10}if((q|0)==10){q=0;n=ha(k[c+128>>2]<<13,j[l+64>>1]|0)|0;o=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;s=n+o|0;t=o-n|0;n=ha(p<<16>>16,k[c+64>>2]|0)|0;o=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;u=(o+n|0)*4433|0;v=u+(n*6270|0)|0;n=u+(ha(o,-15137)|0)|0;o=v+s|0;u=s-v|0;v=n+t|0;s=t-n|0;n=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;t=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;w=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;x=ha(m<<16>>16,k[c+32>>2]|0)|0;m=w+n|0;y=x+t|0;z=(y+m|0)*9633|0;A=z+(ha(m,-16069)|0)|0;m=z+(ha(y,-3196)|0)|0;y=ha(x+n|0,-7373)|0;z=y+(n*2446|0)+A|0;n=y+(x*12299|0)+m|0;x=ha(w+t|0,-20995)|0;y=x+(t*16819|0)+m|0;m=x+(w*25172|0)+A|0;k[b>>2]=n+o>>11;k[b+224>>2]=o-n>>11;k[b+32>>2]=m+v>>11;k[b+192>>2]=v-m>>11;k[b+64>>2]=y+s>>11;k[b+160>>2]=s-y>>11;k[b+96>>2]=z+u>>11;k[b+128>>2]=u-z>>11}if((a|0)>1){a=a+-1|0;l=l+2|0;c=c+4|0;b=b+4|0}else break}b=e+1|0;c=e+2|0;l=e+3|0;a=e+4|0;p=e+5|0;z=e+6|0;u=e+7|0;y=0;s=g;while(1){g=k[d+(y<<2)>>2]|0;m=g+e|0;v=(k[s>>2]|0)+16400|0;n=k[s+4>>2]|0;o=k[s+8>>2]|0;if(!(n|o))if(((((k[s+12>>2]|0)==0?(k[s+16>>2]|0)==0:0)?(k[s+20>>2]|0)==0:0)?(k[s+24>>2]|0)==0:0)?(k[s+28>>2]|0)==0:0){A=i[h+((v>>>5&1023)+-384)>>0]|0;i[m>>0]=A;i[g+b>>0]=A;i[g+c>>0]=A;i[g+l>>0]=A;i[g+a>>0]=A;i[g+p>>0]=A;i[g+z>>0]=A;i[g+u>>0]=A}else{B=0;q=19}else{B=o;q=19}if((q|0)==19){q=0;o=k[s+16>>2]|0;A=o+v<<13;w=v-o<<13;o=k[s+24>>2]|0;v=(o+B|0)*4433|0;x=v+(B*6270|0)|0;t=v+(ha(o,-15137)|0)|0;o=x+A|0;v=A-x|0;x=t+w|0;A=w-t|0;t=k[s+28>>2]|0;w=k[s+20>>2]|0;C=k[s+12>>2]|0;D=C+t|0;E=n+w|0;F=(E+D|0)*9633|0;G=F+(ha(D,-16069)|0)|0;D=F+(ha(E,-3196)|0)|0;E=ha(n+t|0,-7373)|0;F=E+(t*2446|0)+G|0;t=E+(n*12299|0)+D|0;n=ha(C+w|0,-20995)|0;E=n+(w*16819|0)+D|0;D=n+(C*25172|0)+G|0;i[m>>0]=i[h+(((t+o|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((o-t|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((D+x|0)>>>18&1023)+-384)>>0]|0;i[g+z>>0]=i[h+(((x-D|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((E+A|0)>>>18&1023)+-384)>>0]|0;i[g+p>>0]=i[h+(((A-E|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((F+v|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((v-F|0)>>>18&1023)+-384)>>0]|0}y=y+1|0;if((y|0)==8)break;else s=s+32|0}r=f;return}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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+208|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;p=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;q=(o-p|0)*7223|0;s=(n-o|0)*2578|0;t=m+(s+q)+(ha(o,-15083)|0)|0;u=p+n|0;v=(u*10438|0)+m|0;w=v+(ha(p,-637)|0)+q|0;q=v+(ha(n,-20239)|0)+s|0;s=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;n=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;v=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;p=(n+s|0)*7663|0;x=(s-n|0)*1395|0;y=ha(v+n|0,-11295)|0;n=p+x+y|0;z=(v+s|0)*5027|0;s=z+(p-x)|0;x=z+(v*15326|0)+y|0;k[b>>2]=s+w>>11;k[b+168>>2]=w-s>>11;k[b+28>>2]=n+t>>11;k[b+140>>2]=t-n>>11;k[b+56>>2]=x+q>>11;k[b+112>>2]=q-x>>11;k[b+84>>2]=((o-u|0)*11585|0)+m>>11;a=a+1|0;if((a|0)==7)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+6|0;c=e+1|0;l=e+5|0;a=e+2|0;m=e+4|0;u=e+3|0;o=0;x=g;while(1){g=k[d+(o<<2)>>2]|0;q=(k[x>>2]<<13)+134348800|0;n=k[x+8>>2]|0;t=k[x+16>>2]|0;s=k[x+24>>2]|0;w=(t-s|0)*7223|0;y=(n-t|0)*2578|0;v=q+(y+w)+(ha(t,-15083)|0)|0;z=s+n|0;p=(z*10438|0)+q|0;A=p+(ha(s,-637)|0)+w|0;w=p+(ha(n,-20239)|0)+y|0;y=k[x+4>>2]|0;n=k[x+12>>2]|0;p=k[x+20>>2]|0;s=(n+y|0)*7663|0;B=(y-n|0)*1395|0;C=ha(p+n|0,-11295)|0;n=s+B+C|0;D=(p+y|0)*5027|0;y=s-B+D|0;B=D+(p*15326|0)+C|0;i[g+e>>0]=i[h+(((y+A|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((A-y|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((n+v|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((v-n|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((B+w|0)>>>18&1023)+-384)>>0]|0;i[g+m>>0]=i[h+(((w-B|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((((t-z|0)*11585|0)+q|0)>>>18&1023)+-384)>>0]|0;o=o+1|0;if((o|0)==7)break;else x=x+28|0}r=f;return}function ip(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=r;r=r+144|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha((k[c+128>>2]|0)*5793|0,j[l+64>>1]|0)|0;o=n+m|0;p=(ha(n,-2)|0)+m>>11;m=ha((k[c+64>>2]|0)*10033|0,j[l+32>>1]|0)|0;n=m+o|0;q=o-m|0;m=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;o=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;s=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;t=(s+m|0)*2998|0;u=t+(o+m<<13)|0;v=t+(s-o<<13)|0;t=m-o-s<<2;k[b>>2]=u+n>>11;k[b+120>>2]=n-u>>11;k[b+24>>2]=t+p;k[b+96>>2]=p-t;k[b+48>>2]=v+q>>11;k[b+72>>2]=q-v>>11;a=a+1|0;if((a|0)==6)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+5|0;c=e+1|0;l=e+4|0;a=e+2|0;v=e+3|0;q=0;t=g;while(1){g=k[d+(q<<2)>>2]|0;p=(k[t>>2]<<13)+134348800|0;u=(k[t+16>>2]|0)*5793|0;n=p+u|0;s=p-u-u|0;u=(k[t+8>>2]|0)*10033|0;p=n+u|0;o=n-u|0;u=k[t+4>>2]|0;n=k[t+12>>2]|0;m=k[t+20>>2]|0;w=(m+u|0)*2998|0;x=w+(n+u<<13)|0;y=w+(m-n<<13)|0;w=u-n-m<<13;i[g+e>>0]=i[h+(((x+p|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((p-x|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((w+s|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((s-w|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((y+o|0)>>>18&1023)+-384)>>0]|0;i[g+v>>0]=i[h+(((o-y|0)>>>18&1023)+-384)>>0]|0;q=q+1|0;if((q|0)==6)break;else t=t+24|0}r=f;return}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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;f=r;r=r+112|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;p=(o+n|0)*6476|0;q=n-o|0;o=(q*2896|0)+m|0;n=o+p|0;s=o-p|0;p=m+(ha(q,-11584)|0)|0;q=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;m=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;o=(m+q|0)*6810|0;t=o+(q*4209|0)|0;q=o+(ha(m,-17828)|0)|0;k[b>>2]=t+n>>11;k[b+80>>2]=n-t>>11;k[b+20>>2]=q+s>>11;k[b+60>>2]=s-q>>11;k[b+40>>2]=p>>11;a=a+1|0;if((a|0)==5)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+4|0;c=e+1|0;l=e+3|0;a=e+2|0;p=0;q=g;while(1){g=k[d+(p<<2)>>2]|0;s=(k[q>>2]<<13)+134348800|0;t=k[q+8>>2]|0;n=k[q+16>>2]|0;m=(n+t|0)*6476|0;o=t-n|0;n=(o*2896|0)+s|0;t=n+m|0;u=n-m|0;m=s+(ha(o,-11584)|0)|0;o=k[q+4>>2]|0;s=k[q+12>>2]|0;n=(s+o|0)*6810|0;v=n+(o*4209|0)|0;o=n+(ha(s,-17828)|0)|0;i[g+e>>0]=i[h+(((v+t|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((t-v|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((o+u|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((u-o|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+((m>>>18&1023)+-384)>>0]|0;p=p+1|0;if((p|0)==5)break;else q=q+20|0}r=f;return}function kp(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;f=r;r=r+64|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(j[l>>1]|0,k[c>>2]|0)|0;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=n+m<<2;p=m-n<<2;n=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;m=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;q=((m+n|0)*4433|0)+1024|0;s=q+(n*6270|0)>>11;n=q+(ha(m,-15137)|0)>>11;k[b>>2]=s+o;k[b+48>>2]=o-s;k[b+16>>2]=n+p;k[b+32>>2]=p-n;a=a+1|0;if((a|0)==4)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+3|0;c=e+1|0;l=e+2|0;a=0;n=g;while(1){g=k[d+(a<<2)>>2]|0;p=(k[n>>2]|0)+16400|0;s=k[n+8>>2]|0;o=p+s<<13;m=p-s<<13;s=k[n+4>>2]|0;p=k[n+12>>2]|0;q=(p+s|0)*4433|0;t=q+(s*6270|0)|0;s=q+(ha(p,-15137)|0)|0;i[g+e>>0]=i[h+(((t+o|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((o-t|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((s+m|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((m-s|0)>>>18&1023)+-384)>>0]|0;a=a+1|0;if((a|0)==4)break;else n=n+16|0}r=f;return}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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;f=r;r=r+48|0;g=f;h=k[a+336>>2]|0;a=k[b+84>>2]|0;b=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;l=ha((k[a+64>>2]|0)*5793|0,j[c+32>>1]|0)|0;m=l+b|0;n=(ha(l,-2)|0)+b|0;b=ha((k[a+32>>2]|0)*10033|0,j[c+16>>1]|0)|0;l=b+m>>11;k[g>>2]=l;k[g+24>>2]=m-b>>11;b=g+12|0;k[b>>2]=n>>11;n=ha(k[a+4>>2]<<13,j[c+2>>1]|0)|0|1024;m=ha((k[a+68>>2]|0)*5793|0,j[c+34>>1]|0)|0;o=m+n|0;p=(ha(m,-2)|0)+n|0;n=ha((k[a+36>>2]|0)*10033|0,j[c+18>>1]|0)|0;m=n+o>>11;k[g+4>>2]=m;k[g+28>>2]=o-n>>11;n=p>>11;k[g+16>>2]=n;p=ha(k[a+8>>2]<<13,j[c+4>>1]|0)|0|1024;o=ha((k[a+72>>2]|0)*5793|0,j[c+36>>1]|0)|0;q=o+p|0;s=(ha(o,-2)|0)+p|0;p=ha((k[a+40>>2]|0)*10033|0,j[c+20>>1]|0)|0;c=p+q>>11;k[g+8>>2]=c;a=q-p>>11;k[g+32>>2]=a;p=s>>11;k[g+20>>2]=p;s=e+2|0;q=e+1|0;o=k[d>>2]|0;t=(l<<13)+134348800|0;l=t+(c*5793|0)|0;u=(ha(c,-11586)|0)+t|0;t=m*10033|0;i[o+e>>0]=i[h+(((l+t|0)>>>18&1023)+-384)>>0]|0;i[o+s>>0]=i[h+(((l-t|0)>>>18&1023)+-384)>>0]|0;i[o+q>>0]=i[h+((u>>>18&1023)+-384)>>0]|0;u=k[d+4>>2]|0;o=(k[b>>2]<<13)+134348800|0;b=o+(p*5793|0)|0;t=(ha(p,-11586)|0)+o|0;o=n*10033|0;i[u+e>>0]=i[h+(((b+o|0)>>>18&1023)+-384)>>0]|0;i[u+s>>0]=i[h+(((b-o|0)>>>18&1023)+-384)>>0]|0;i[u+q>>0]=i[h+((t>>>18&1023)+-384)>>0]|0;t=k[d+8>>2]|0;d=(k[g+24>>2]<<13)+134348800|0;u=d+(a*5793|0)|0;o=(ha(a,-11586)|0)+d|0;d=(k[g+28>>2]|0)*10033|0;i[t+e>>0]=i[h+(((u+d|0)>>>18&1023)+-384)>>0]|0;i[t+s>>0]=i[h+(((u-d|0)>>>18&1023)+-384)>>0]|0;i[t+q>>0]=i[h+((o>>>18&1023)+-384)>>0]|0;r=f;return}function mp(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,l=0;f=k[a+336>>2]|0;a=k[b+84>>2]|0;b=ha(j[c>>1]|0,k[a>>2]|0)|0;g=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;h=b+4100|0;b=g+h|0;l=h-g|0;g=ha(j[c+2>>1]|0,k[a+4>>2]|0)|0;h=ha(j[c+18>>1]|0,k[a+36>>2]|0)|0;a=h+g|0;c=g-h|0;h=k[d>>2]|0;i[h+e>>0]=i[f+(((a+b|0)>>>3&1023)+-384)>>0]|0;g=e+1|0;i[h+g>>0]=i[f+(((b-a|0)>>>3&1023)+-384)>>0]|0;a=k[d+4>>2]|0;i[a+e>>0]=i[f+(((c+l|0)>>>3&1023)+-384)>>0]|0;i[a+g>>0]=i[f+(((l-c|0)>>>3&1023)+-384)>>0]|0;return}function np(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=(k[a+336>>2]|0)+((((ha(j[c>>1]|0,k[k[b+84>>2]>>2]|0)|0)+4100|0)>>>3&1023)+-384)|0;i[(k[d>>2]|0)+e>>0]=i[f>>0]|0;return}function op(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,l=0,m=0,n=0,o=0,p=0,q=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;f=r;r=r+288|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;o=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;p=ha((k[c+192>>2]|0)*5793|0,j[l+96>>1]|0)|0;q=p+m|0;s=m-p-p|0;p=n-o|0;m=s+(p*5793|0)|0;t=(ha(p,-11586)|0)+s|0;s=(o+n|0)*10887|0;p=n*8875|0;n=o*2012|0;o=s-n+q|0;u=q-s+p|0;s=q-p+n|0;n=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;p=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;q=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;v=ha(ha(k[c+96>>2]|0,-10033)|0,j[l+48>>1]|0)|0;w=(p+n|0)*7447|0;x=(q+n|0)*3962|0;y=w-v+x|0;z=(p-q|0)*11409|0;A=v-z+w|0;w=z+v+x|0;x=(n-p-q|0)*10033|0;k[b>>2]=y+o>>11;k[b+256>>2]=o-y>>11;k[b+32>>2]=x+m>>11;k[b+224>>2]=m-x>>11;k[b+64>>2]=A+u>>11;k[b+192>>2]=u-A>>11;k[b+96>>2]=w+s>>11;k[b+160>>2]=s-w>>11;k[b+128>>2]=t>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+8|0;c=e+1|0;l=e+7|0;a=e+2|0;t=e+6|0;w=e+3|0;s=e+5|0;A=e+4|0;u=0;x=g;while(1){g=k[d+(u<<2)>>2]|0;m=(k[x>>2]<<13)+134348800|0;y=k[x+8>>2]|0;o=k[x+16>>2]|0;q=(k[x+24>>2]|0)*5793|0;p=q+m|0;n=m-q-q|0;q=y-o|0;m=n+(q*5793|0)|0;v=(ha(q,-11586)|0)+n|0;n=(o+y|0)*10887|0;q=y*8875|0;y=o*2012|0;o=n-y+p|0;z=p-n+q|0;n=p-q+y|0;y=k[x+4>>2]|0;q=k[x+20>>2]|0;p=k[x+28>>2]|0;B=ha(k[x+12>>2]|0,-10033)|0;C=(q+y|0)*7447|0;D=(p+y|0)*3962|0;E=C-B+D|0;F=(q-p|0)*11409|0;G=B-F+C|0;C=F+B+D|0;D=(y-q-p|0)*10033|0;i[g+e>>0]=i[h+(((E+o|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((o-E|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((D+m|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((m-D|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((G+z|0)>>>18&1023)+-384)>>0]|0;i[g+t>>0]=i[h+(((z-G|0)>>>18&1023)+-384)>>0]|0;i[g+w>>0]=i[h+(((C+n|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((n-C|0)>>>18&1023)+-384)>>0]|0;i[g+A>>0]=i[h+((v>>>18&1023)+-384)>>0]|0;u=u+1|0;if((u|0)==9)break;else x=x+32|0}r=f;return}function pp(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f=r;r=r+320|0;g=f;h=k[a+336>>2]|0;a=0;l=c;c=k[b+84>>2]|0;b=g;while(1){m=ha(k[c>>2]<<13,j[l>>1]|0)|0|1024;n=ha(j[l+64>>1]|0,k[c+128>>2]|0)|0;o=(n*9373|0)+m|0;p=m+(ha(n,-3580)|0)|0;q=m+(ha(n,-11586)|0)>>11;n=ha(j[l+32>>1]|0,k[c+64>>2]|0)|0;m=ha(j[l+96>>1]|0,k[c+192>>2]|0)|0;s=(m+n|0)*6810|0;t=s+(n*4209|0)|0;n=s+(ha(m,-17828)|0)|0;m=t+o|0;s=o-t|0;t=n+p|0;o=p-n|0;n=ha(j[l+16>>1]|0,k[c+32>>2]|0)|0;p=ha(j[l+48>>1]|0,k[c+96>>2]|0)|0;u=ha(j[l+80>>1]|0,k[c+160>>2]|0)|0;v=ha(j[l+112>>1]|0,k[c+224>>2]|0)|0;w=v+p|0;x=p-v|0;v=x*2531|0;p=u<<13;y=w*7791|0;z=v+p|0;A=y+(n*11443|0)+z|0;B=(n*1812|0)-y+z|0;z=w*4815|0;w=p-v-(x<<12)|0;v=n-u-x<<2;x=(n*10323|0)-z-w|0;u=w+((n*5260|0)-z)|0;k[b>>2]=A+m>>11;k[b+288>>2]=m-A>>11;k[b+32>>2]=x+t>>11;k[b+256>>2]=t-x>>11;k[b+64>>2]=v+q;k[b+224>>2]=q-v;k[b+96>>2]=u+o>>11;k[b+192>>2]=o-u>>11;k[b+128>>2]=B+s>>11;k[b+160>>2]=s-B>>11;a=a+1|0;if((a|0)==8)break;else{l=l+2|0;c=c+4|0;b=b+4|0}}b=e+9|0;c=e+1|0;l=e+8|0;a=e+2|0;B=e+7|0;s=e+3|0;u=e+6|0;o=e+4|0;v=e+5|0;q=0;x=g;while(1){g=k[d+(q<<2)>>2]|0;t=(k[x>>2]<<13)+134348800|0;A=k[x+16>>2]|0;m=t+(A*9373|0)|0;z=t+(ha(A,-3580)|0)|0;n=t+(ha(A,-11586)|0)|0;A=k[x+8>>2]|0;t=k[x+24>>2]|0;w=(t+A|0)*6810|0;p=w+(A*4209|0)|0;A=w+(ha(t,-17828)|0)|0;t=p+m|0;w=m-p|0;p=A+z|0;m=z-A|0;A=k[x+4>>2]|0;z=k[x+12>>2]|0;y=k[x+20>>2]<<13;C=k[x+28>>2]|0;D=C+z|0;E=z-C|0;C=E*2531|0;z=D*7791|0;F=C+y|0;G=z+(A*11443|0)+F|0;H=(A*1812|0)-z+F|0;F=D*4815|0;D=y-C-(E<<12)|0;C=(A-E<<13)-y|0;y=(A*10323|0)-F-D|0;E=D+((A*5260|0)-F)|0;i[g+e>>0]=i[h+(((G+t|0)>>>18&1023)+-384)>>0]|0;i[g+b>>0]=i[h+(((t-G|0)>>>18&1023)+-384)>>0]|0;i[g+c>>0]=i[h+(((y+p|0)>>>18&1023)+-384)>>0]|0;i[g+l>>0]=i[h+(((p-y|0)>>>18&1023)+-384)>>0]|0;i[g+a>>0]=i[h+(((C+n|0)>>>18&1023)+-384)>>0]|0;i[g+B>>0]=i[h+(((n-C|0)>>>18&1023)+-384)>>0]|0;i[g+s>>0]=i[h+(((E+m|0)>>>18&1023)+-384)>>0]|0;i[g+u>>0]=i[h+(((m-E|0)>>>18&1023)+-384)>>0]|0;i[g+o>>0]=i[h+(((H+w|0)>>>18&1023)+-384)>>0]|0;i[g+v>>0]=i[h+(((w-H|0)>>>18&1023)+-384)>>0]|0;q=q+1|0;if((q|0)==10)break;else x=x+32|0}r=f;return}
function Fe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,p=0,q=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;d=r;r=r+16|0;e=d;if(Qb(a,b,c)|0){f=1;r=d;return f|0}if((b|0)>=318){if((b|0)<530)switch(b|0){case 336:{g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;j[h>>1]=0;h=(1<<m[a+84>>1])+65535&65535;g=(k[c>>2]|0)+(4-1)&~(4-1);i=k[g>>2]|0;k[c>>2]=g+4;j[i>>1]=h;f=1;r=d;return f|0}case 332:{h=(k[c>>2]|0)+(4-1)&~(4-1);i=k[h>>2]|0;k[c>>2]=h+4;j[i>>1]=1;f=1;r=d;return f|0}case 334:{i=(k[c>>2]|0)+(4-1)&~(4-1);h=k[i>>2]|0;k[c>>2]=i+4;j[h>>1]=4;f=1;r=d;return f|0}case 338:{h=j[a+156>>1]|0;i=(k[c>>2]|0)+(4-1)&~(4-1);g=k[i>>2]|0;k[c>>2]=i+4;j[g>>1]=h;h=k[a+160>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);i=k[g>>2]|0;k[c>>2]=g+4;k[i>>2]=h;f=1;r=d;return f|0}case 339:{h=j[a+86>>1]|0;i=(k[c>>2]|0)+(4-1)&~(4-1);g=k[i>>2]|0;k[c>>2]=i+4;j[g>>1]=h;f=1;r=d;return f|0}case 529:{h=(k[c>>2]|0)+(4-1)&~(4-1);g=k[h>>2]|0;k[c>>2]=h+4;k[g>>2]=7740;f=1;r=d;return f|0}case 318:{o[1938]=.3457419276237488;o[1939]=.3585604429244995;g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;k[h>>2]=7752;f=1;r=d;return f|0}default:{f=0;r=d;return f|0}}if((b|0)>=32995)switch(b|0){case 32995:{if((j[a+156>>1]|0)==1)l=(j[k[a+160>>2]>>1]|0)==1&1;else l=0;h=(k[c>>2]|0)+(4-1)&~(4-1);g=k[h>>2]|0;k[c>>2]=h+4;j[g>>1]=l;f=1;r=d;return f|0}case 32998:{l=k[a+76>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;k[h>>2]=l;f=1;r=d;return f|0}case 32996:{l=(m[a+86>>1]|0)+65535&65535;h=(k[c>>2]|0)+(4-1)&~(4-1);g=k[h>>2]|0;k[c>>2]=h+4;j[g>>1]=l;f=1;r=d;return f|0}case 32997:{l=k[a+64>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;k[h>>2]=l;f=1;r=d;return f|0}default:{f=0;r=d;return f|0}}switch(b|0){case 530:{l=j[a+192>>1]|0;h=(k[c>>2]|0)+(4-1)&~(4-1);g=k[h>>2]|0;k[c>>2]=h+4;j[g>>1]=l;l=j[a+194>>1]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;j[h>>1]=l;f=1;r=d;return f|0}case 531:{l=j[a+196>>1]|0;h=(k[c>>2]|0)+(4-1)&~(4-1);g=k[h>>2]|0;k[c>>2]=h+4;j[g>>1]=l;f=1;r=d;return f|0}case 532:{l=a+212|0;g=k[l>>2]|0;h=g;do if(!g){i=me(24)|0;k[l>>2]=i;n=i;if(!i){f=0;r=d;return f|0}if((j[a+90>>1]|0)==6){o[i>>2]=0.0;o[i+20>>2]=255.0;o[i+12>>2]=255.0;o[i+4>>2]=255.0;o[i+16>>2]=128.0;o[i+8>>2]=128.0;p=n;break}else{q=+((1<<m[a+84>>1])+-1|0);o[i>>2]=0.0;o[i+4>>2]=q;o[i+8>>2]=0.0;o[i+12>>2]=q;o[i+16>>2]=0.0;o[i+20>>2]=q;p=n;break}}else p=h;while(0);h=(k[c>>2]|0)+(4-1)&~(4-1);l=k[h>>2]|0;k[c>>2]=h+4;k[l>>2]=p;f=1;r=d;return f|0}default:{f=0;r=d;return f|0}}}do switch(b|0){case 254:{p=k[a+80>>2]|0;l=(k[c>>2]|0)+(4-1)&~(4-1);h=k[l>>2]|0;k[c>>2]=l+4;k[h>>2]=p;f=1;r=d;return f|0}case 258:{p=j[a+84>>1]|0;h=(k[c>>2]|0)+(4-1)&~(4-1);l=k[h>>2]|0;k[c>>2]=h+4;j[l>>1]=p;f=1;r=d;return f|0}case 263:{p=j[a+92>>1]|0;l=(k[c>>2]|0)+(4-1)&~(4-1);h=k[l>>2]|0;k[c>>2]=l+4;j[h>>1]=p;f=1;r=d;return f|0}case 266:{p=j[a+94>>1]|0;h=(k[c>>2]|0)+(4-1)&~(4-1);l=k[h>>2]|0;k[c>>2]=h+4;j[l>>1]=p;f=1;r=d;return f|0}case 274:{p=j[a+96>>1]|0;l=(k[c>>2]|0)+(4-1)&~(4-1);h=k[l>>2]|0;k[c>>2]=l+4;j[h>>1]=p;f=1;r=d;return f|0}case 277:{p=j[a+98>>1]|0;h=(k[c>>2]|0)+(4-1)&~(4-1);l=k[h>>2]|0;k[c>>2]=h+4;j[l>>1]=p;f=1;r=d;return f|0}case 278:{p=k[a+100>>2]|0;l=(k[c>>2]|0)+(4-1)&~(4-1);h=k[l>>2]|0;k[c>>2]=l+4;k[h>>2]=p;f=1;r=d;return f|0}case 280:{p=j[a+104>>1]|0;h=(k[c>>2]|0)+(4-1)&~(4-1);l=k[h>>2]|0;k[c>>2]=h+4;j[l>>1]=p;f=1;r=d;return f|0}case 281:{p=j[a+106>>1]|0;l=(k[c>>2]|0)+(4-1)&~(4-1);h=k[l>>2]|0;k[c>>2]=l+4;j[h>>1]=p;f=1;r=d;return f|0}case 284:{p=j[a+126>>1]|0;h=(k[c>>2]|0)+(4-1)&~(4-1);l=k[h>>2]|0;k[c>>2]=h+4;j[l>>1]=p;f=1;r=d;return f|0}case 296:{p=j[a+124>>1]|0;l=(k[c>>2]|0)+(4-1)&~(4-1);h=k[l>>2]|0;k[c>>2]=l+4;j[h>>1]=p;f=1;r=d;return f|0}case 317:{p=k[k[a+576>>2]>>2]&65535;h=(k[c>>2]|0)+(4-1)&~(4-1);l=k[h>>2]|0;k[c>>2]=h+4;j[l>>1]=p;f=1;r=d;return f|0}case 301:{p=a+200|0;l=k[p>>2]|0;do if(!l){h=a+200|0;g=a+208|0;k[g>>2]=0;n=a+204|0;k[n>>2]=0;k[h>>2]=0;i=j[a+84>>1]|0;if((i&65535)<=29?(s=1<<(i&65535),i=s<<1,t=me(i)|0,k[h>>2]=t,u=t,(t|0)!=0):0){j[t>>1]=0;if((s|0)>1){q=+(s|0)+-1.0;v=1;do{w=~~+V(+(+Y(+(+(v|0)/q),2.2)*65535.0+.5))&65535;j[t+(v<<1)>>1]=w;v=v+1|0}while((v|0)!=(s|0))}s=a+98|0;v=a+156|0;if(((m[s>>1]|0)-(m[v>>1]|0)|0)<=1){x=v;y=s;z=u;break}t=me(i)|0;k[n>>2]=t;if((t|0)!=0?(qe(t,k[h>>2]|0,i),t=me(i)|0,k[g>>2]=t,(t|0)!=0):0){qe(t,k[h>>2]|0,i);x=v;y=s;z=k[p>>2]|0;break}s=k[h>>2]|0;if(s)ne(s);s=k[n>>2]|0;if(s)ne(s);s=k[g>>2]|0;if(s)ne(s);k[g>>2]=0;k[n>>2]=0;k[h>>2]=0}vc(k[a+628>>2]|0,k[a>>2]|0,140044,e);f=0;r=d;return f|0}else{x=a+156|0;y=a+98|0;z=l}while(0);l=(k[c>>2]|0)+(4-1)&~(4-1);p=k[l>>2]|0;k[c>>2]=l+4;k[p>>2]=z;if(((m[y>>1]|0)-(m[x>>1]|0)|0)<=1){f=1;r=d;return f|0}p=k[a+204>>2]|0;l=(k[c>>2]|0)+(4-1)&~(4-1);s=k[l>>2]|0;k[c>>2]=l+4;k[s>>2]=p;p=k[a+208>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);l=k[s>>2]|0;k[c>>2]=s+4;k[l>>2]=p;f=1;r=d;return f|0}default:{f=0;r=d;return f|0}}while(0);return 0}function Ge(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=Fe(a,b,e)|0;r=d;return c|0}function He(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.0,i=0.0,j=0.0,k=0.0,l=0.0;h=+(b>>>0)*100.0/255.0;if(h<8.855999946594238){b=a+20|0;i=h*+o[b>>2]/903.2919921875;o[f>>2]=i;j=i/+o[b>>2]*7.7870001792907715+.13793103396892548}else{i=(h+16.0)/116.0;o[f>>2]=i*(i*(i*+o[a+20>>2]));j=i}i=j+ +(c|0)/500.0;h=+o[a+16>>2];if(i<.2069000005722046)k=h*(i+-.1379300057888031)/7.7870001792907715;else k=i*(i*(h*i));o[e>>2]=k;k=j-+(d|0)/200.0;j=+o[a+24>>2];if(k<.2069000005722046){l=j*(k+-.1379300057888031)/7.7870001792907715;o[g>>2]=l;return}else{l=k*(k*(j*k));o[g>>2]=l;return}}function Ie(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;var h=0.0,i=0.0,j=0.0,l=0.0,m=0.0,n=0.0,p=0,q=0;h=+o[a+28>>2]*b+ +o[a+32>>2]*c+ +o[a+36>>2]*d;i=+o[a+40>>2]*b+ +o[a+44>>2]*c+ +o[a+48>>2]*d;j=+o[a+52>>2]*b+ +o[a+56>>2]*c+ +o[a+60>>2]*d;d=+o[a+88>>2];c=h>d?h:d;h=+o[a+92>>2];b=i>h?i:h;i=+o[a+96>>2];l=j>i?j:i;j=+o[a+64>>2];m=+o[a+68>>2];n=+o[a+72>>2];p=~~(((c<j?c:j)-d)/+o[a+4>>2]);q=k[a>>2]|0;d=+o[a+112+(((q|0)<(p|0)?q:p)<<2)>>2];k[e>>2]=~~(d+(d>0.0?.5:-.5))>>>0;p=~~(((b<m?b:m)-h)/+o[a+8>>2]);q=k[a>>2]|0;h=+o[a+6116+(((q|0)<(p|0)?q:p)<<2)>>2];k[f>>2]=~~(h+(h>0.0?.5:-.5))>>>0;p=~~(((l<n?l:n)-i)/+o[a+12>>2]);q=k[a>>2]|0;i=+o[a+12120+(((q|0)<(p|0)?q:p)<<2)>>2];k[g>>2]=~~(i+(i>0.0?.5:-.5))>>>0;p=k[e>>2]|0;q=k[a+76>>2]|0;k[e>>2]=p>>>0<q>>>0?p:q;q=k[f>>2]|0;p=k[a+80>>2]|0;k[f>>2]=q>>>0<p>>>0?q:p;p=k[g>>2]|0;q=k[a+84>>2]|0;k[g>>2]=p>>>0<q>>>0?p:q;return}function Je(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0,g=0.0,h=0,i=0.0,j=0.0,l=0,m=0,n=0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;k[a>>2]=1500;qe(a+28|0,b,84);d=1.0/+o[a+100>>2];b=a+64|0;e=+o[b>>2];f=a+88|0;g=+o[f>>2];h=k[a>>2]|0;o[a+4>>2]=(e-g)/+(h|0);if((h|0)<0){i=e;j=g;l=h}else{m=a+76|0;n=h;h=0;while(1){g=+((k[m>>2]|0)>>>0)*+Y(+(+(h|0)/+(n|0)),+d);o[a+112+(h<<2)>>2]=g;p=k[a>>2]|0;if((h|0)<(p|0)){n=p;h=h+1|0}else{q=p;break}}i=+o[b>>2];j=+o[f>>2];l=q}d=1.0/+o[a+104>>2];o[a+8>>2]=(i-j)/+(l|0);if((l|0)<0){r=i;s=j;t=l}else{q=a+80|0;h=l;l=0;while(1){j=+((k[q>>2]|0)>>>0)*+Y(+(+(l|0)/+(h|0)),+d);o[a+6116+(l<<2)>>2]=j;n=k[a>>2]|0;if((l|0)<(n|0)){h=n;l=l+1|0}else{u=n;break}}r=+o[b>>2];s=+o[f>>2];t=u}d=1.0/+o[a+108>>2];o[a+12>>2]=(r-s)/+(t|0);if((t|0)<0){v=k[c>>2]|0;w=a+16|0;k[w>>2]=v;x=c+4|0;y=k[x>>2]|0;z=a+20|0;k[z>>2]=y;A=c+8|0;B=k[A>>2]|0;C=a+24|0;k[C>>2]=B;return 0}u=a+84|0;f=t;t=0;while(1){s=+((k[u>>2]|0)>>>0)*+Y(+(+(t|0)/+(f|0)),+d);o[a+12120+(t<<2)>>2]=s;f=k[a>>2]|0;if((t|0)>=(f|0))break;else t=t+1|0}v=k[c>>2]|0;w=a+16|0;k[w>>2]=v;x=c+4|0;y=k[x>>2]|0;z=a+20|0;k[z>>2]=y;A=c+8|0;B=k[A>>2]|0;C=a+24|0;k[C>>2]=B;return 0}function Ke(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;h=(c|0)<0?0:(c|0)>255?255:c;c=(d|0)<0?0:(d|0)>255?255:d;d=(k[a+20>>2]|0)+((b>>>0>255?255:b)<<2)|0;b=(k[(k[a+4>>2]|0)+(c<<2)>>2]|0)+(k[d>>2]|0)|0;k[e>>2]=(b|0)<0?0:(b|0)>255?255:b;b=((k[(k[a+12>>2]|0)+(c<<2)>>2]|0)+(k[(k[a+16>>2]|0)+(h<<2)>>2]|0)>>16)+(k[d>>2]|0)|0;k[f>>2]=(b|0)<0?0:(b|0)>255?255:b;b=(k[(k[a+8>>2]|0)+(h<<2)>>2]|0)+(k[d>>2]|0)|0;k[g>>2]=(b|0)<0?0:(b|0)>255?255:b;return}function Le(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0,g=0.0,h=0.0,j=0,l=0,m=0,n=0,p=0.0,q=0,r=0,s=0,t=0;pe(a+24|0,0,256);d=a+280|0;k[a>>2]=d;e=0;do{i[d+e>>0]=e;e=e+1|0}while((e|0)!=256);pe(d+256|0,255,512);k[a+4>>2]=d+768;k[a+8>>2]=d+1792;k[a+12>>2]=d+2816;k[a+16>>2]=d+3840;k[a+20>>2]=d+4864;f=+o[b>>2];g=2.0-f*2.0;a=~~(g*65536.0+.5);h=+o[b+4>>2];e=0-~~(f*g/h*65536.0+.5)|0;g=+o[b+8>>2];f=2.0-g*2.0;b=~~(f*65536.0+.5);j=~~(g*f/h*65536.0+.5);h=+o[c+16>>2]+-128.0;l=~~h;f=+o[c+20>>2]+-128.0-h;h=f!=0.0?f:1.0;f=+o[c+8>>2]+-128.0;m=~~f;g=+o[c+12>>2]+-128.0-f;f=g!=0.0?g:1.0;g=+o[c>>2];n=~~g;p=+o[c+4>>2]-g;g=p!=0.0?p:1.0;c=0;q=-128;while(1){r=~~(+(q-l|0)*127.0/h);s=~~(+(q-m|0)*127.0/f);t=(ha(r,a)|0)+32768>>16;k[d+(c+192<<2)>>2]=t;t=(ha(s,b)|0)+32768>>16;k[d+(c+448<<2)>>2]=t;t=ha(r,e)|0;k[d+(c+704<<2)>>2]=t;t=32768-(ha(s,j)|0)|0;k[d+(c+960<<2)>>2]=t;k[d+(c+1216<<2)>>2]=~~(+(q+128-n|0)*255.0/g);c=c+1|0;if((c|0)==256)break;else q=q+1|0}return 0}function Me(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0;d=r;r=r+16|0;c=d+8|0;b=d;e=j[a+88>>1]|0;f=k[1940]|0;a:do if(f){g=f;while(1){h=k[g+4>>2]|0;if((j[h+4>>1]|0)==e<<16>>16){i=h;break}g=k[g>>2]|0;if(!g){l=3;break a}}g=k[a+628>>2]|0;h=k[a>>2]|0;if(!i){m=g;n=h;l=11}else{o=i;p=g;q=h;l=10}}else l=3;while(0);b:do if((l|0)==3){c:do if(k[1941]|0){i=7764;while(1){if((j[i+4>>1]|0)==e<<16>>16){s=i;break}i=i+12|0;if(!(k[i>>2]|0))break c}o=s;p=k[a+628>>2]|0;q=k[a>>2]|0;l=10;break b}while(0);m=k[a+628>>2]|0;n=k[a>>2]|0;l=11}while(0);if((l|0)==10){k[b>>2]=k[o>>2];k[b+4>>2]=140114;vc(p,q,140080,b);r=d;return -1}else if((l|0)==11){k[c>>2]=e&65535;k[c+4>>2]=140114;vc(m,n,140123,c);r=d;return -1}return 0}function Ne(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0;d=r;r=r+16|0;c=d+8|0;b=d;e=j[a+88>>1]|0;f=k[1940]|0;a:do if(f){g=f;while(1){h=k[g+4>>2]|0;if((j[h+4>>1]|0)==e<<16>>16){i=h;break}g=k[g>>2]|0;if(!g){l=3;break a}}g=k[a+628>>2]|0;h=k[a>>2]|0;if(!i){m=g;n=h;l=11}else{o=i;p=g;q=h;l=10}}else l=3;while(0);b:do if((l|0)==3){c:do if(k[1941]|0){i=7764;while(1){if((j[i+4>>1]|0)==e<<16>>16){s=i;break}i=i+12|0;if(!(k[i>>2]|0))break c}o=s;p=k[a+628>>2]|0;q=k[a>>2]|0;l=10;break b}while(0);m=k[a+628>>2]|0;n=k[a>>2]|0;l=11}while(0);if((l|0)==10){k[b>>2]=k[o>>2];k[b+4>>2]=143001;vc(p,q,140080,b);r=d;return -1}else if((l|0)==11){k[c>>2]=e&65535;k[c+4>>2]=143001;vc(m,n,140123,c);r=d;return -1}return 0}function Oe(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0;d=r;r=r+16|0;c=d+8|0;b=d;e=j[a+88>>1]|0;f=k[1940]|0;a:do if(f){g=f;while(1){h=k[g+4>>2]|0;if((j[h+4>>1]|0)==e<<16>>16){i=h;break}g=k[g>>2]|0;if(!g){l=3;break a}}g=k[a+628>>2]|0;h=k[a>>2]|0;if(!i){m=g;n=h;l=11}else{o=i;p=g;q=h;l=10}}else l=3;while(0);b:do if((l|0)==3){c:do if(k[1941]|0){i=7764;while(1){if((j[i+4>>1]|0)==e<<16>>16){s=i;break}i=i+12|0;if(!(k[i>>2]|0))break c}o=s;p=k[a+628>>2]|0;q=k[a>>2]|0;l=10;break b}while(0);m=k[a+628>>2]|0;n=k[a>>2]|0;l=11}while(0);if((l|0)==10){k[b>>2]=k[o>>2];k[b+4>>2]=142996;vc(p,q,140080,b);r=d;return -1}else if((l|0)==11){k[c>>2]=e&65535;k[c+4>>2]=142996;vc(m,n,140123,c);r=d;return -1}return 0}function Pe(a){a=a|0;return 1}function Qe(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0;d=r;r=r+16|0;c=d+8|0;b=d;e=j[a+88>>1]|0;f=k[1940]|0;a:do if(f){g=f;while(1){h=k[g+4>>2]|0;if((j[h+4>>1]|0)==e<<16>>16){i=h;break}g=k[g>>2]|0;if(!g){l=3;break a}}g=k[a+628>>2]|0;h=k[a>>2]|0;if(!i){m=g;n=h;l=11}else{o=i;p=g;q=h;l=10}}else l=3;while(0);b:do if((l|0)==3){c:do if(k[1941]|0){i=7764;while(1){if((j[i+4>>1]|0)==e<<16>>16){s=i;break}i=i+12|0;if(!(k[i>>2]|0))break c}o=s;p=k[a+628>>2]|0;q=k[a>>2]|0;l=10;break b}while(0);m=k[a+628>>2]|0;n=k[a>>2]|0;l=11}while(0);if((l|0)==10){k[b>>2]=k[o>>2];k[b+4>>2]=140114;vc(p,q,140176,b);r=d;return -1}else if((l|0)==11){k[c>>2]=e&65535;k[c+4>>2]=140114;vc(m,n,140210,c);r=d;return -1}return 0}function Re(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0;d=r;r=r+16|0;c=d+8|0;b=d;e=j[a+88>>1]|0;f=k[1940]|0;a:do if(f){g=f;while(1){h=k[g+4>>2]|0;if((j[h+4>>1]|0)==e<<16>>16){i=h;break}g=k[g>>2]|0;if(!g){l=3;break a}}g=k[a+628>>2]|0;h=k[a>>2]|0;if(!i){m=g;n=h;l=11}else{o=i;p=g;q=h;l=10}}else l=3;while(0);b:do if((l|0)==3){c:do if(k[1941]|0){i=7764;while(1){if((j[i+4>>1]|0)==e<<16>>16){s=i;break}i=i+12|0;if(!(k[i>>2]|0))break c}o=s;p=k[a+628>>2]|0;q=k[a>>2]|0;l=10;break b}while(0);m=k[a+628>>2]|0;n=k[a>>2]|0;l=11}while(0);if((l|0)==10){k[b>>2]=k[o>>2];k[b+4>>2]=143001;vc(p,q,140176,b);r=d;return -1}else if((l|0)==11){k[c>>2]=e&65535;k[c+4>>2]=143001;vc(m,n,140210,c);r=d;return -1}return 0}function Se(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0;d=r;r=r+16|0;c=d+8|0;b=d;e=j[a+88>>1]|0;f=k[1940]|0;a:do if(f){g=f;while(1){h=k[g+4>>2]|0;if((j[h+4>>1]|0)==e<<16>>16){i=h;break}g=k[g>>2]|0;if(!g){l=3;break a}}g=k[a+628>>2]|0;h=k[a>>2]|0;if(!i){m=g;n=h;l=11}else{o=i;p=g;q=h;l=10}}else l=3;while(0);b:do if((l|0)==3){c:do if(k[1941]|0){i=7764;while(1){if((j[i+4>>1]|0)==e<<16>>16){s=i;break}i=i+12|0;if(!(k[i>>2]|0))break c}o=s;p=k[a+628>>2]|0;q=k[a>>2]|0;l=10;break b}while(0);m=k[a+628>>2]|0;n=k[a>>2]|0;l=11}while(0);if((l|0)==10){k[b>>2]=k[o>>2];k[b+4>>2]=142996;vc(p,q,140176,b);r=d;return -1}else if((l|0)==11){k[c>>2]=e&65535;k[c+4>>2]=142996;vc(m,n,140210,c);r=d;return -1}return 0}function Te(a,b){a=a|0;b=b|0;b=r;r=r+16|0;vc(k[a+628>>2]|0,k[a>>2]|0,140263,b);r=b;return 0}function Ue(a,b){a=a|0;b=b|0;return 1}function Ve(a){a=a|0;var b=0;k[a+504>>2]=4;k[a+500>>2]=1;k[a+508>>2]=5;k[a+512>>2]=20;k[a+532>>2]=6;k[a+540>>2]=7;k[a+548>>2]=8;k[a+520>>2]=1;k[a+516>>2]=5;k[a+524>>2]=20;k[a+528>>2]=5;k[a+536>>2]=9;k[a+544>>2]=10;k[a+552>>2]=11;k[a+556>>2]=1;k[a+560>>2]=21;k[a+564>>2]=1;k[a+568>>2]=22;k[a+572>>2]=8;b=a+12|0;k[b>>2]=k[b>>2]&-131329;return}function We(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=b&65535;d=k[1940]|0;a:do if(!d)e=3;else{f=d;while(1){g=k[f+4>>2]|0;if((j[g+4>>1]|0)==c<<16>>16){h=g;break a}f=k[f>>2]|0;if(!f){e=3;break}}}while(0);b:do if((e|0)==3)if(!(k[1941]|0))h=0;else{d=7764;while(1){if((j[d+4>>1]|0)==c<<16>>16){h=d;break b}d=d+12|0;if(!(k[d>>2]|0)){h=0;break}}}while(0);k[a+504>>2]=4;k[a+500>>2]=1;k[a+508>>2]=5;k[a+512>>2]=20;k[a+532>>2]=6;k[a+540>>2]=7;k[a+548>>2]=8;k[a+520>>2]=1;k[a+516>>2]=5;k[a+524>>2]=20;k[a+528>>2]=5;k[a+536>>2]=9;k[a+544>>2]=10;k[a+552>>2]=11;k[a+556>>2]=1;k[a+560>>2]=21;k[a+564>>2]=1;k[a+568>>2]=22;k[a+572>>2]=8;c=a+12|0;k[c>>2]=k[c>>2]&-131329;if(!h){i=1;return i|0}i=yb[k[h+8>>2]&127](a,b)|0;return i|0}function Xe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=k[1940]|0;a:do if(b){c=b;while(1){d=k[c+4>>2]|0;if((j[d+4>>1]|0)==a<<16>>16){e=d;break}c=k[c>>2]|0;if(!c)break a}return e|0}while(0);if(!(k[1941]|0)){e=0;return e|0}else f=7764;while(1){if((j[f+4>>1]|0)==a<<16>>16){e=f;g=7;break}f=f+12|0;if(!(k[f>>2]|0)){e=0;g=7;break}}if((g|0)==7)return e|0;return 0}function Ye(a){a=a|0;return 1}function Ze(a){a=a|0;return}function _e(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0,p=0,q=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,M=0,N=0,O=0,P=0;b=r;r=r+112|0;c=b+88|0;d=b+80|0;e=b+72|0;f=b+64|0;g=b+56|0;h=b+48|0;i=b+40|0;j=b+32|0;l=b+24|0;n=b+100|0;o=b+96|0;p=b+92|0;q=b+16|0;s=b+8|0;t=b;u=a+16|0;v=u;w=k[v>>2]|0;x=k[v+4>>2]|0;if((w|0)==0&(x|0)==0){y=af(a,1,1,0)|0;r=b;return y|0}v=a+12|0;do if(!(k[v>>2]&524288)){z=a+428|0;A=k[z>>2]|0;if((A|0)==(w|0)&0==(x|0)){k[z>>2]=0;B=u;k[B>>2]=0;k[B+4>>2]=0;B=a+628|0;xb[k[a+640>>2]&63](k[B>>2]|0,4,0,0)|0;if((nb[k[a+636>>2]&63](k[B>>2]|0,z,4)|0)==4)break;vc(k[B>>2]|0,k[a>>2]|0,140316,l);y=0;r=b;return y|0}B=a+640|0;z=a+628|0;C=a+632|0;D=A;while(1){A=xb[k[B>>2]&63](k[z>>2]|0,D,0,0)|0;if(!((A|0)==(D|0)&(L|0)==0)){E=10;break}if((nb[k[C>>2]&63](k[z>>2]|0,n,2)|0)!=2){E=10;break}if(k[v>>2]&128)Qd(n);A=D+2|0;xb[k[B>>2]&63](k[z>>2]|0,((m[n>>1]|0)*12|0)+A|0,0,0)|0;if((nb[k[C>>2]&63](k[z>>2]|0,o,4)|0)!=4){E=14;break}if(k[v>>2]&128)Rd(o);D=k[o>>2]|0;F=u;if((D|0)==(k[F>>2]|0)?0==(k[F+4>>2]|0):0){G=A;E=18;break}}if((E|0)==10){vc(k[z>>2]|0,140343,140364,j);y=0;r=b;return y|0}else if((E|0)==14){vc(k[z>>2]|0,140343,140395,i);y=0;r=b;return y|0}else if((E|0)==18){k[p>>2]=0;xb[k[B>>2]&63](k[z>>2]|0,((m[n>>1]|0)*12|0)+G|0,0,0)|0;if((nb[k[a+636>>2]&63](k[z>>2]|0,p,4)|0)==4){D=u;k[D>>2]=0;k[D+4>>2]=0;break}vc(k[z>>2]|0,140343,140425,h);y=0;r=b;return y|0}}else{D=a+432|0;C=D;A=k[C>>2]|0;F=k[C+4>>2]|0;if((A|0)==(w|0)&(F|0)==(x|0)){C=D;k[C>>2]=0;k[C+4>>2]=0;C=u;k[C>>2]=0;k[C+4>>2]=0;C=a+628|0;xb[k[a+640>>2]&63](k[C>>2]|0,8,0,0)|0;if((nb[k[a+636>>2]&63](k[C>>2]|0,D,8)|0)==8)break;vc(k[C>>2]|0,k[a>>2]|0,140316,g);y=0;r=b;return y|0}C=a+640|0;D=a+628|0;H=a+632|0;I=A;A=F;while(1){F=xb[k[C>>2]&63](k[D>>2]|0,I,A,0)|0;if(!((F|0)==(I|0)&(L|0)==(A|0))){E=27;break}if((nb[k[H>>2]&63](k[D>>2]|0,q,8)|0)!=8){E=27;break}if(k[v>>2]&128)Sd(q);F=q;J=k[F>>2]|0;K=k[F+4>>2]|0;if(K>>>0>0|(K|0)==0&J>>>0>65535){E=31;break}K=k[C>>2]|0;F=k[D>>2]|0;M=sr(I|0,A|0,8,0)|0;N=sr(M|0,L|0,(J&65535)*20|0,0)|0;J=L;xb[K&63](F,N,J,0)|0;if((nb[k[H>>2]&63](k[D>>2]|0,s,8)|0)!=8){E=33;break}if(k[v>>2]&128)Sd(s);F=s;I=k[F>>2]|0;A=k[F+4>>2]|0;F=u;if((I|0)==(k[F>>2]|0)?(A|0)==(k[F+4>>2]|0):0){O=N;P=J;E=37;break}}if((E|0)==27){vc(k[D>>2]|0,140343,140364,f);y=0;r=b;return y|0}else if((E|0)==31){vc(k[D>>2]|0,140343,140454,e);y=0;r=b;return y|0}else if((E|0)==33){vc(k[D>>2]|0,140343,140395,d);y=0;r=b;return y|0}else if((E|0)==37){A=t;k[A>>2]=0;k[A+4>>2]=0;xb[k[C>>2]&63](k[D>>2]|0,O,P,0)|0;if((nb[k[a+636>>2]&63](k[D>>2]|0,t,8)|0)==8){A=u;k[A>>2]=0;k[A+4>>2]=0;break}vc(k[D>>2]|0,140343,140425,c);y=0;r=b;return y|0}}while(0);y=af(a,1,1,0)|0;r=b;return y|0}function $e(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,l=0,n=0,o=0,p=0,q=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,M=0,N=0,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;f=r;r=r+176|0;g=f+128|0;h=f+120|0;i=f+112|0;l=f+104|0;n=f+96|0;o=f+88|0;p=f+80|0;q=f+72|0;s=f+64|0;t=f+56|0;u=f+48|0;v=f+40|0;w=f+160|0;x=f+140|0;y=f+138|0;z=f+136|0;A=f+16|0;B=f+8|0;C=f;D=f+132|0;j[y>>1]=0;j[z>>1]=0;E=A;k[E>>2]=0;k[E+4>>2]=0;E=B;k[E>>2]=0;k[E+4>>2]=0;E=b&65535;$b(a,E,0)|0;F=a+12|0;if(k[F>>2]&2048){vc(k[a+628>>2]|0,140508,140523,f+24|0);G=0;r=f;return G|0}H=a+16|0;I=H;J=k[I>>2]|0;K=k[I+4>>2]|0;if((J|0)==0&(K|0)==0){vc(k[a+628>>2]|0,140508,140587,f+32|0);G=0;r=f;return G|0}I=a+640|0;M=a+628|0;N=xb[k[I>>2]&63](k[M>>2]|0,J,K,0)|0;K=L;J=H;if(!((N|0)==(k[J>>2]|0)?(K|0)==(k[J+4>>2]|0):0)){J=k[M>>2]|0;k[v>>2]=k[a>>2];vc(J,140508,140644,v);G=0;r=f;return G|0}v=a+632|0;J=k[v>>2]|0;H=k[M>>2]|0;if(!(k[F>>2]&524288)){if((nb[J&63](H,w,2)|0)!=2){O=k[M>>2]|0;k[u>>2]=k[a>>2];vc(O,140508,140684,u);G=0;r=f;return G|0}if(k[F>>2]&128)Qd(w);u=sr(N|0,K|0,2,0)|0;P=u;Q=L;R=12;S=18}else{if((nb[J&63](H,C,8)|0)!=8){H=k[M>>2]|0;k[t>>2]=k[a>>2];vc(H,140508,140684,t);G=0;r=f;return G|0}if(k[F>>2]&128)Sd(C);t=k[C>>2]&65535;j[w>>1]=t;C=sr(N|0,K|0,8,0)|0;T=t;U=C;V=L;W=20}while(1){if((S|0)==18){S=0;T=j[w>>1]|0;U=P;V=Q;W=R}if(!(T<<16>>16)){S=26;break}if((nb[k[v>>2]&63](k[M>>2]|0,x,W)|0)!=(W|0)){S=21;break}C=j[x>>1]|0;j[y>>1]=C;if(!(k[F>>2]&128))X=C;else{Qd(y);X=j[y>>1]|0}if(X<<16>>16==b<<16>>16)break;C=sr(U|0,V|0,W|0,0)|0;P=C;Q=L;R=W;S=18}if((S|0)==21){R=k[M>>2]|0;k[s>>2]=k[a>>2];vc(R,140508,140722,s);G=0;r=f;return G|0}if((S|0)==26?(j[y>>1]|0)!=b<<16>>16:0){b=k[M>>2]|0;k[q>>2]=k[a>>2];k[q+4>>2]=E;vc(b,140508,140761,q);G=0;r=f;return G|0}q=x+2|0;j[z>>1]=j[q>>1]|0;b=k[F>>2]|0;if(!(b&128))Y=b;else{Qd(z);Y=k[F>>2]|0}b=x+4|0;if(Y&524288){E=b;y=E;S=E+4|0;E=m[S>>1]|m[S+2>>1]<<16;S=A;k[S>>2]=m[y>>1]|m[y+2>>1]<<16;k[S+4>>2]=E;if(!(Y&128))Z=Y;else{Sd(A);Z=k[F>>2]|0}E=x+12|0;S=E;y=E+4|0;E=m[y>>1]|m[y+2>>1]<<16;y=B;k[y>>2]=m[S>>1]|m[S+2>>1]<<16;k[y+4>>2]=E;if(Z&128)Sd(B)}else{Z=m[b>>1]|m[b+2>>1]<<16;k[D>>2]=Z;if(!(Y&128)){_=Z;$=Y}else{Rd(D);_=k[D>>2]|0;$=k[F>>2]|0}Y=A;k[Y>>2]=_;k[Y+4>>2]=0;Y=x+8|0;_=m[Y>>1]|m[Y+2>>1]<<16;k[D>>2]=_;if(!($&128))aa=_;else{Rd(D);aa=k[D>>2]|0}D=B;k[D>>2]=aa;k[D+4>>2]=0}a:do if((ac(c)|0)==8?(k[F>>2]&524288|0)==0:0)switch(c|0){case 16:{ba=4;break a;break}case 17:{ba=9;break a;break}case 18:{ba=13;break a;break}default:{ba=c;break a}}else ba=c;while(0);D=Ee(a,d,ac(ba)|0,140788)|0;if(!D){G=0;r=f;return G|0}b:do if((ba|0)==(c|0))wr(D|0,e|0,ha(ac(c)|0,d)|0)|0;else{if((c|0)==17&(ba|0)==9){if((d|0)<=0)break;aa=0;while(1){_=e+(aa<<3)|0;$=k[_>>2]|0;Y=k[_+4>>2]|0;k[D+(aa<<2)>>2]=$;aa=aa+1|0;if(!(($|0)==($|0)&((($|0)<0)<<31>>31|0)==(Y|0)))break;if((aa|0)>=(d|0))break b}ne(D);vc(k[M>>2]|0,140508,140806,p);G=0;r=f;return G|0}if((c|0)==16&(ba|0)==4){if((d|0)<=0)break}else if(!((c|0)==18&(ba|0)==13&(d|0)>0))break;aa=0;while(1){Y=e+(aa<<3)|0;$=k[Y>>2]|0;_=k[Y+4>>2]|0;k[D+(aa<<2)>>2]=$;aa=aa+1|0;if(!(($|0)==($|0)&0==(_|0)))break;if((aa|0)>=(d|0))break b}ne(D);vc(k[M>>2]|0,140508,140806,o);G=0;r=f;return G|0}while(0);do if((ac(ba)|0)>1?(k[F>>2]&128|0)!=0:0){if((ac(ba)|0)==2){Td(D,d);break}if((ac(ba)|0)==4){Vd(D,d);break}if((ac(ba)|0)==8)Wd(D,d)}while(0);o=(k[F>>2]&524288|0)==0;e=ha(ac(ba)|0,d)|0;if(o)if((e|0)<5){o=sr(U|0,V|0,8,0)|0;c=B;k[c>>2]=o;k[c+4>>2]=L;ca=1}else ca=0;else if((e|0)<9){e=sr(U|0,V|0,12,0)|0;c=B;k[c>>2]=e;k[c+4>>2]=L;ca=1}else ca=0;c=A;if(((k[c>>2]|0)==(d|0)?(k[c+4>>2]|0)==(((d|0)<0)<<31>>31|0):0)?(j[z>>1]|0)==(ba&65535)<<16>>16:0){c=B;e=xb[k[I>>2]&63](k[M>>2]|0,k[c>>2]|0,k[c+4>>2]|0,0)|0;c=B;if(!((e|0)==(k[c>>2]|0)?(L|0)==(k[c+4>>2]|0):0)){ne(D);c=k[M>>2]|0;k[n>>2]=k[a>>2];vc(c,140508,140644,n);G=0;r=f;return G|0}n=k[a+636>>2]|0;c=k[M>>2]|0;e=ha(ac(ba)|0,d)|0;o=nb[n&63](c,D,e)|0;e=(o|0)==(ha(ac(ba)|0,d)|0);ne(D);if(e){G=1;r=f;return G|0}vc(k[M>>2]|0,140508,140425,l);G=0;r=f;return G|0}if(!ca){ca=xb[k[I>>2]&63](k[M>>2]|0,0,0,2)|0;l=B;k[l>>2]=ca;k[l+4>>2]=L;l=k[a+636>>2]|0;ca=k[M>>2]|0;e=ha(ac(ba)|0,d)|0;o=nb[l&63](ca,D,e)|0;if((o|0)!=(ha(ac(ba)|0,d)|0)){ne(D);vc(k[M>>2]|0,140508,140425,i);G=0;r=f;return G|0}}else wr(B|0,D|0,ha(ac(ba)|0,d)|0)|0;ne(D);D=ba&65535;j[z>>1]=D;j[q>>1]=D;D=k[F>>2]|0;if(!(D&128))da=D;else{Qd(q);da=k[F>>2]|0}if(!(da&524288)){q=k[A>>2]|0;j[b>>1]=q;j[b+2>>1]=q>>>16;if(!(da&128))ea=da;else{Rd(b);ea=k[F>>2]|0}q=k[B>>2]|0;D=x+8|0;j[D>>1]=q;j[D+2>>1]=q>>>16;if(ea&128)Rd(D)}else{D=A;A=k[D>>2]|0;ea=k[D+4>>2]|0;D=b;q=D;j[q>>1]=A;j[q+2>>1]=A>>>16;A=D+4|0;j[A>>1]=ea;j[A+2>>1]=ea>>>16;if(!(da&128))fa=da;else{Sd(b);fa=k[F>>2]|0}F=x+12|0;b=B;B=k[b>>2]|0;da=k[b+4>>2]|0;b=F;ea=b;j[ea>>1]=B;j[ea+2>>1]=B>>>16;B=b+4|0;j[B>>1]=da;j[B+2>>1]=da>>>16;if(fa&128)Sd(F)}F=xb[k[I>>2]&63](k[M>>2]|0,U,V,0)|0;if(!((F|0)==(U|0)&(L|0)==(V|0))){V=k[M>>2]|0;k[h>>2]=k[a>>2];vc(V,140508,140644,h);G=0;r=f;return G|0}if((nb[k[a+636>>2]&63](k[M>>2]|0,x,W)|0)==(W|0)){G=1;r=f;return G|0}W=k[M>>2]|0;k[g>>2]=k[a>>2];vc(W,140508,140848,g);G=0;r=f;return G|0}function af(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,l=0,n=0,p=0,q=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,M=0,N=0,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,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,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,ob=0,pb=0,rb=0,sb=0,tb=0,vb=0,wb=0,yb=0,zb=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,Qb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0.0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0;e=r;r=r+352|0;f=e+288|0;g=e+280|0;h=e+272|0;l=e+264|0;n=e+256|0;p=e+248|0;q=e+240|0;s=e+232|0;t=e+224|0;u=e+216|0;v=e+208|0;w=e+200|0;x=e+192|0;y=e+184|0;z=e+176|0;A=e+168|0;B=e+160|0;C=e+152|0;D=e+144|0;E=e+136|0;F=e+128|0;G=e+120|0;H=e+112|0;I=e+104|0;J=e+96|0;K=e+88|0;M=e+80|0;N=e+72|0;O=e+64|0;P=e+56|0;Q=e+48|0;R=e+40|0;S=e+32|0;T=e+328|0;U=e+24|0;V=e+324|0;W=e+336|0;X=e+316|0;Y=e+16|0;Z=e+8|0;_=e;$=e+320|0;aa=e+334|0;ba=e+312|0;ca=e+308|0;da=e+332|0;ea=e+304|0;fa=e+300|0;ga=e+296|0;ha=e+292|0;if(!(k[a+8>>2]|0)){ia=1;r=e;return ia|0}gc(a)|0;ja=(c|0)!=0;c=a+12|0;if(ja){ka=k[c>>2]|0;if((ka&4096|0)!=0?(k[c>>2]=ka&-4097,(ub[k[a+528>>2]&63](a)|0)==0):0){vc(k[a+628>>2]|0,140888,140910,S);ia=0;r=e;return ia|0}qb[k[a+556>>2]&127](a);S=a+608|0;if(((k[S>>2]|0)>0?(k[c>>2]&64|0)!=0:0)?(je(a)|0)==0:0){vc(k[a+628>>2]|0,140888,140953,R);ia=0;r=e;return ia|0}R=k[c>>2]|0;if((R&512|0)!=0?(ka=a+588|0,la=k[ka>>2]|0,(la|0)!=0):0){ne(la);k[S>>2]=0;k[ka>>2]=0;k[ka+4>>2]=0;k[ka+8>>2]=0;k[ka+12>>2]=0;ma=k[c>>2]|0}else ma=R;k[c>>2]=ma&-81}ma=(b|0)!=0;b=a+40|0;R=a+156|0;ka=a+44|0;S=a+184|0;la=a+464|0;na=a+188|0;oa=a+472|0;pa=a+480|0;qa=a+660|0;ra=a+656|0;sa=a+216|0;ta=a+220|0;ua=a+84|0;va=a+98|0;wa=a+200|0;xa=a+204|0;ya=a+208|0;za=a+212|0;Aa=a+196|0;Ba=a+192|0;Ca=a+152|0;Da=a+76|0;Ea=a+64|0;Fa=a+112|0;Ga=a+108|0;Ha=a+86|0;Ia=a+140|0;Ka=a+144|0;La=a+148|0;Ma=a+168|0;Na=a+172|0;Oa=a+176|0;Pa=a+136|0;Qa=a+124|0;Ra=a+126|0;Sa=a+106|0;Ta=a+104|0;Ua=a+100|0;Va=a+96|0;Wa=a+94|0;Xa=a+92|0;Ya=a+90|0;Za=a+88|0;_a=a+80|0;$a=a+128|0;ab=a+132|0;bb=a+116|0;cb=a+120|0;db=a+68|0;eb=a+72|0;fb=a+56|0;gb=a+60|0;hb=a+224|0;ib=a+16|0;jb=a+640|0;kb=a+628|0;lb=a+432|0;mb=a+636|0;ob=a+632|0;pb=a+428|0;rb=(d|0)==0;sb=a+448|0;tb=a+228|0;vb=0;wb=0;a:while(1){k[$>>2]=0;do if(ma){do if(k[b>>2]&2){yb=k[fb>>2]|0;if(!vb){k[$>>2]=2;break}if(yb>>>0<65536){j[T>>1]=yb;if(k[c>>2]&128)Qd(T);zb=bf(a,$,vb,256,3,1,2,T)|0}else{k[T>>2]=yb;if(k[c>>2]&128)Rd(T);zb=bf(a,$,vb,256,4,1,4,T)|0}if(!zb){Ab=vb;Bb=593;break a}yb=k[gb>>2]|0;if(yb>>>0<65536){j[T>>1]=yb;if(k[c>>2]&128)Qd(T);Cb=bf(a,$,vb,257,3,1,2,T)|0}else{k[T>>2]=yb;if(k[c>>2]&128)Rd(T);Cb=bf(a,$,vb,257,4,1,4,T)|0}if(!Cb){Ab=vb;Bb=593;break a}}while(0);do if(k[b>>2]&4){yb=k[db>>2]|0;if(!vb){k[$>>2]=(k[$>>2]|0)+2;break}if(yb>>>0<65536){j[T>>1]=yb;if(k[c>>2]&128)Qd(T);Db=bf(a,$,vb,322,3,1,2,T)|0}else{k[T>>2]=yb;if(k[c>>2]&128)Rd(T);Db=bf(a,$,vb,322,4,1,4,T)|0}if(!Db){Ab=vb;Bb=593;break a}yb=k[eb>>2]|0;if(yb>>>0<65536){j[T>>1]=yb;if(k[c>>2]&128)Qd(T);Eb=bf(a,$,vb,323,3,1,2,T)|0}else{k[T>>2]=yb;if(k[c>>2]&128)Rd(T);Eb=bf(a,$,vb,323,4,1,4,T)|0}if(!Eb){Ab=vb;Bb=593;break a}}while(0);yb=k[b>>2]|0;if(!(yb&8))Fb=yb;else{if(!(cf(a,$,vb,282,+o[bb>>2])|0)){Ab=vb;Bb=593;break a}if(!(cf(a,$,vb,283,+o[cb>>2])|0)){Ab=vb;Bb=593;break a}Fb=k[b>>2]|0}if(!(Fb&16))Gb=Fb;else{if(!(cf(a,$,vb,286,+o[$a>>2])|0)){Ab=vb;Bb=593;break a}if(!(cf(a,$,vb,287,+o[ab>>2])|0)){Ab=vb;Bb=593;break a}Gb=k[b>>2]|0}do if(!(Gb&32))Hb=Gb;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;Hb=Gb;break}k[T>>2]=k[_a>>2];if(k[c>>2]&128)Rd(T);if(!(bf(a,$,vb,254,4,1,4,T)|0)){Ab=vb;Bb=593;break a}Hb=k[b>>2]|0}while(0);do if(!(Hb&64))Ib=Hb;else{yb=j[ua>>1]|0;if(!vb){k[$>>2]=(k[$>>2]|0)+1;Ib=Hb;break}Jb=me(m[va>>1]<<1)|0;if(!Jb){Kb=vb;Bb=76;break a}if(!(j[va>>1]|0))Lb=0;else{Mb=Jb;Nb=0;while(1){j[Mb>>1]=yb;Nb=Nb+1<<16>>16;Ob=j[va>>1]|0;if((Nb&65535)>=(Ob&65535)){Lb=Ob;break}else Mb=Mb+2|0}}Mb=Lb&65535;if(k[c>>2]&128)Td(Jb,Mb);Nb=bf(a,$,vb,258,3,Mb,Mb<<1,Jb)|0;ne(Jb);if(!Nb){Ab=vb;Bb=593;break a}Ib=k[b>>2]|0}while(0);do if(!(Ib&128))Qb=Ib;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;Qb=Ib;break}j[T>>1]=j[Za>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,259,3,1,2,T)|0)){Ab=vb;Bb=593;break a}Qb=k[b>>2]|0}while(0);do if(!(Qb&256))Tb=Qb;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;Tb=Qb;break}j[T>>1]=j[Ya>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,262,3,1,2,T)|0)){Ab=vb;Bb=593;break a}Tb=k[b>>2]|0}while(0);do if(!(Tb&512))Ub=Tb;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;Ub=Tb;break}j[T>>1]=j[Xa>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,263,3,1,2,T)|0)){Ab=vb;Bb=593;break a}Ub=k[b>>2]|0}while(0);do if(!(Ub&1024))Vb=Ub;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;Vb=Ub;break}j[T>>1]=j[Wa>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,266,3,1,2,T)|0)){Ab=vb;Bb=593;break a}Vb=k[b>>2]|0}while(0);do if(!(Vb&32768))Wb=Vb;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;Wb=Vb;break}j[T>>1]=j[Va>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,274,3,1,2,T)|0)){Ab=vb;Bb=593;break a}Wb=k[b>>2]|0}while(0);do if(!(Wb&65536))Xb=Wb;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;Xb=Wb;break}j[T>>1]=j[va>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,277,3,1,2,T)|0)){Ab=vb;Bb=593;break a}Xb=k[b>>2]|0}while(0);do if(!(Xb&131072))Yb=Xb;else{Nb=k[Ua>>2]|0;if(!vb){k[$>>2]=(k[$>>2]|0)+1;Yb=Xb;break}if(Nb>>>0<65536){j[T>>1]=Nb;if(k[c>>2]&128)Qd(T);Zb=bf(a,$,vb,278,3,1,2,T)|0}else{k[T>>2]=Nb;if(k[c>>2]&128)Rd(T);Zb=bf(a,$,vb,278,4,1,4,T)|0}if(!Zb){Ab=vb;Bb=593;break a}Yb=k[b>>2]|0}while(0);do if(!(Yb&262144))_b=Yb;else{Nb=j[Ta>>1]|0;if(!vb){k[$>>2]=(k[$>>2]|0)+1;_b=Yb;break}Mb=me(m[va>>1]<<1)|0;if(!Mb){$b=vb;Bb=141;break a}if(!(j[va>>1]|0))ac=0;else{yb=Mb;Ob=0;while(1){j[yb>>1]=Nb;Ob=Ob+1<<16>>16;bc=j[va>>1]|0;if((Ob&65535)>=(bc&65535)){ac=bc;break}else yb=yb+2|0}}yb=ac&65535;if(k[c>>2]&128)Td(Mb,yb);Ob=bf(a,$,vb,280,3,yb,yb<<1,Mb)|0;ne(Mb);if(!Ob){Ab=vb;Bb=593;break a}_b=k[b>>2]|0}while(0);do if(!(_b&524288))cc=_b;else{Ob=j[Sa>>1]|0;if(!vb){k[$>>2]=(k[$>>2]|0)+1;cc=_b;break}yb=me(m[va>>1]<<1)|0;if(!yb){dc=vb;Bb=152;break a}if(!(j[va>>1]|0))ec=0;else{Nb=yb;Jb=0;while(1){j[Nb>>1]=Ob;Jb=Jb+1<<16>>16;bc=j[va>>1]|0;if((Jb&65535)>=(bc&65535)){ec=bc;break}else Nb=Nb+2|0}}Nb=ec&65535;if(k[c>>2]&128)Td(yb,Nb);Jb=bf(a,$,vb,281,3,Nb,Nb<<1,yb)|0;ne(yb);if(!Jb){Ab=vb;Bb=593;break a}cc=k[b>>2]|0}while(0);do if(!(cc&1048576))fc=cc;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;fc=cc;break}j[T>>1]=j[Ra>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,284,3,1,2,T)|0)){Ab=vb;Bb=593;break a}fc=k[b>>2]|0}while(0);do if(!(fc&4194304))hc=fc;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;hc=fc;break}j[T>>1]=j[Qa>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,296,3,1,2,T)|0)){Ab=vb;Bb=593;break a}hc=k[b>>2]|0}while(0);do if(!(hc&8388608))ic=hc;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;ic=hc;break}if(k[c>>2]&128)Td(Pa,2);if(!(bf(a,$,vb,297,3,2,4,Pa)|0)){Ab=vb;Bb=593;break a}ic=k[b>>2]|0}while(0);do if(ic&16777216){Jb=k[Ma>>2]|0;Nb=k[Oa>>2]|0;if(!(k[c>>2]&1024))if(!(df(a,$,vb,279,Jb,Nb)|0)){Ab=vb;Bb=593;break a}else break;else if(!(df(a,$,vb,325,Jb,Nb)|0)){Ab=vb;Bb=593;break a}else break}while(0);do if(k[b>>2]&33554432){Nb=k[Ma>>2]|0;Jb=k[Na>>2]|0;if(!(k[c>>2]&1024))if(!(df(a,$,vb,273,Nb,Jb)|0)){Ab=vb;Bb=593;break a}else break;else if(!(df(a,$,vb,324,Nb,Jb)|0)){Ab=vb;Bb=593;break a}else break}while(0);Jb=k[b>>2]|0;do if(!(Jb&67108864))jc=Jb;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;jc=Jb;break}Nb=m[ua>>1]|0;Ob=1<<Nb;Mb=3<<Nb;Nb=Mb<<1;bc=me(Nb)|0;if(!bc){kc=vb;Bb=191;break a}lc=Ob<<1;qe(bc,k[Ia>>2]|0,lc);qe(bc+(Ob<<1)|0,k[Ka>>2]|0,lc);qe(bc+(lc<<1)|0,k[La>>2]|0,lc);if((Mb|0)<=-1){Bb=193;break a}if(k[c>>2]&128)Td(bc,Mb);lc=bf(a,$,vb,320,3,Mb,Nb,bc)|0;ne(bc);if(!lc){Ab=vb;Bb=593;break a}jc=k[b>>2]|0}while(0);do if((jc|0)<0){if(!(j[R>>1]|0))break;k[M>>2]=aa;k[M+4>>2]=ba;Ge(a,338,M)|0;Jb=m[aa>>1]|0;lc=k[ba>>2]|0;if(!vb){k[$>>2]=(k[$>>2]|0)+1;break}if(k[c>>2]&128)Td(lc,Jb);if(!(bf(a,$,vb,338,3,Jb,Jb<<1,lc)|0)){Ab=vb;Bb=593;break a}}while(0);lc=k[ka>>2]|0;do if(!(lc&1))mc=lc;else{Jb=j[Ha>>1]|0;if(!vb){k[$>>2]=(k[$>>2]|0)+1;mc=lc;break}bc=me(m[va>>1]<<1)|0;if(!bc){nc=vb;Bb=210;break a}if(!(j[va>>1]|0))oc=0;else{Nb=bc;Mb=0;while(1){j[Nb>>1]=Jb;Mb=Mb+1<<16>>16;Ob=j[va>>1]|0;if((Mb&65535)>=(Ob&65535)){oc=Ob;break}else Nb=Nb+2|0}}Nb=oc&65535;if(k[c>>2]&128)Td(bc,Nb);Mb=bf(a,$,vb,339,3,Nb,Nb<<1,bc)|0;ne(bc);if(!Mb){Ab=vb;Bb=593;break a}mc=k[ka>>2]|0}while(0);if(!(mc&2))pc=mc;else{if(!(ef(a,$,vb,340,m[va>>1]|0,k[Ga>>2]|0)|0)){Ab=vb;Bb=593;break a}pc=k[ka>>2]|0}if(!(pc&4))qc=pc;else{if(!(ef(a,$,vb,341,m[va>>1]|0,k[Fa>>2]|0)|0)){Ab=vb;Bb=593;break a}qc=k[ka>>2]|0}do if(!(qc&8))rc=qc;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;rc=qc;break}k[T>>2]=k[Ea>>2];if(k[c>>2]&128)Rd(T);if(!(bf(a,$,vb,-32539,4,1,4,T)|0)){Ab=vb;Bb=593;break a}rc=k[ka>>2]|0}while(0);do if(!(rc&16))sc=rc;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;sc=rc;break}k[T>>2]=k[Da>>2];if(k[c>>2]&128)Rd(T);if(!(bf(a,$,vb,-32538,4,1,4,T)|0)){Ab=vb;Bb=593;break a}sc=k[ka>>2]|0}while(0);do if(!(sc&32))tc=sc;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;tc=sc;break}if(k[c>>2]&128)Td(Ca,2);if(!(bf(a,$,vb,321,3,2,4,Ca)|0)){Ab=vb;Bb=593;break a}tc=k[ka>>2]|0}while(0);do if(!(tc&128))uc=tc;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;uc=tc;break}if(k[c>>2]&128)Td(Ba,2);if(!(bf(a,$,vb,530,3,2,4,Ba)|0)){Ab=vb;Bb=593;break a}uc=k[ka>>2]|0}while(0);do if(!(uc&256))wc=uc;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;wc=uc;break}j[T>>1]=j[Aa>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,531,3,1,2,T)|0)){Ab=vb;Bb=593;break a}wc=k[ka>>2]|0}while(0);if(!(wc&512))xc=wc;else{if(!(ff(a,$,vb,532,6,k[za>>2]|0)|0)){Ab=vb;Bb=593;break a}xc=k[ka>>2]|0}do if(!(xc&4096))yc=xc;else{if(!vb){k[$>>2]=(k[$>>2]|0)+1;yc=xc;break}lc=m[ua>>1]|0;Mb=1<<lc;Nb=(m[va>>1]|0)-(m[R>>1]|0)|0;Jb=(Nb&65532)>>>0>3?3:Nb&65535;switch(Jb<<16>>16){case 3:{Nb=Mb<<1;if(!(re(k[wa>>2]|0,k[ya>>2]|0,Nb)|0)){zc=Nb;Bb=266}else Ac=3;break}case 2:{zc=Mb<<1;Bb=266;break}default:Ac=Jb}if((Bb|0)==266){Bb=0;Jb=(re(k[wa>>2]|0,k[xa>>2]|0,zc)|0)==0;Ac=Jb?1:2}Jb=Ac<<16>>16==0?1:Ac;Nb=(Jb&65535)<<lc;lc=Nb<<1;yb=me(lc)|0;if(!yb){Bc=vb;Bb=268;break a}Ob=Mb<<1;qe(yb,k[wa>>2]|0,Ob);do if((Jb&65535)>1){qe(yb+(Mb<<1)|0,k[xa>>2]|0,Ob);if((Jb&65535)<=2)break;qe(yb+(Ob<<1)|0,k[ya>>2]|0,Ob)}while(0);if((Nb|0)<=-1){Bb=273;break a}if(k[c>>2]&128)Td(yb,Nb);Ob=bf(a,$,vb,301,3,Nb,lc,yb)|0;ne(yb);if(!Ob){Ab=vb;Bb=593;break a}yc=k[ka>>2]|0}while(0);do if(!(yc&16384))Cc=yc;else{Ob=k[sa>>2]|0;if(!vb){k[$>>2]=(k[$>>2]|0)+1;Cc=yc;break}if(!(bf(a,$,vb,333,2,Ob,Ob,k[ta>>2]|0)|0)){Dc=vb;break a}Cc=k[ka>>2]|0}while(0);do if(Cc&131072){Ob=j[S>>1]|0;Jb=Ob&65535;if(!(Ob<<16>>16))break;if(!vb){k[$>>2]=(k[$>>2]|0)+1;break}Ob=la;Mb=k[Ob>>2]|0;bc=k[Ob+4>>2]|0;Ob=k[c>>2]|0;if(!(Ob&524288)){Ec=me(Jb<<2)|0;if(!Ec){Fc=vb;Bb=289;break a}Gc=j[S>>1]|0;if(!(Gc<<16>>16))Hc=0;else{Ic=0;Jc=k[na>>2]|0;Kc=Ec;while(1){if(!Jc){Bb=293;break a}Lc=Jc;Mc=k[Lc>>2]|0;Nc=k[Lc+4>>2]|0;if(!(Nc>>>0<1|(Nc|0)==1&Mc>>>0<0)){Bb=295;break a}k[Kc>>2]=Mc;Ic=Ic+1<<16>>16;if((Ic&65535)>=(Gc&65535)){Hc=Gc;break}else{Jc=Jc+8|0;Kc=Kc+4|0}}}Kc=Hc&65535;if(k[c>>2]&128)Vd(Ec,Kc);Jc=bf(a,$,vb,330,13,Kc,Kc<<2,Ec)|0;ne(Ec);Oc=Jc}else{Jc=k[na>>2]|0;if(Ob&128)Wd(Jc,Jb);Oc=bf(a,$,vb,330,18,Jb,Jb<<3,Jc)|0}if(!Oc){Ab=vb;Bb=593;break a}k[c>>2]=k[c>>2]|8192;Jc=j[S>>1]|0;j[oa>>1]=Jc;if(Jc<<16>>16==1){Jc=pa;k[Jc>>2]=0;k[Jc+4>>2]=0;break}else{Jc=pa;k[Jc>>2]=Mb;k[Jc+4>>2]=bc;break}}while(0);if(!(k[qa>>2]|0))break;Jc=(vb|0)==0;Kc=0;do{Gc=k[(k[ra>>2]|0)+(Kc<<2)>>2]|0;Ic=j[Gc+24>>1]|0;b:do if((Ic&65535)>65){if(!(k[a+40+(((Ic&65535)>>>5&65535)<<2)>>2]&1<<(Ic&31)))break;switch(k[Gc+20>>2]|0){case 1:{if((k[Gc+8>>2]|0)!=2){Bb=313;break a}if((j[Gc+4>>1]|0)!=-1){Bb=315;break a}if(i[Gc+27>>0]|0){Bb=317;break a}yb=k[Gc>>2]|0;k[H>>2]=ca;Pb(a,yb,H)|0;yb=k[ca>>2]|0;lc=Qq(yb)|0;if(!Jc)if(!(bf(a,$,vb,k[Gc>>2]&65535,2,lc,lc,yb)|0)){Dc=vb;break a}else break b;else{k[$>>2]=(k[$>>2]|0)+1;break b}break}case 4:{if((k[Gc+8>>2]|0)!=3){Bb=322;break a}if((j[Gc+4>>1]|0)!=1){Bb=324;break a}if(i[Gc+27>>0]|0){Bb=326;break a}yb=k[Gc>>2]|0;k[G>>2]=da;Pb(a,yb,G)|0;yb=k[Gc>>2]&65535;if(Jc){k[$>>2]=(k[$>>2]|0)+1;break b}j[T>>1]=j[da>>1]|0;if(k[c>>2]&128)Qd(T);if(!(bf(a,$,vb,yb,3,1,2,T)|0)){Dc=vb;break a}else break b;break}case 6:{if((k[Gc+8>>2]|0)!=4){Bb=333;break a}if((j[Gc+4>>1]|0)!=1){Bb=335;break a}if(i[Gc+27>>0]|0){Bb=337;break a}yb=k[Gc>>2]|0;k[F>>2]=ea;Pb(a,yb,F)|0;yb=k[Gc>>2]&65535;if(Jc){k[$>>2]=(k[$>>2]|0)+1;break b}k[T>>2]=k[ea>>2];if(k[c>>2]&128)Rd(T);if(!(bf(a,$,vb,yb,4,1,4,T)|0)){Dc=vb;break a}else break b;break}case 40:{if((k[Gc+8>>2]|0)!=7){Bb=344;break a}if((j[Gc+4>>1]|0)!=-3){Bb=346;break a}if((i[Gc+27>>0]|0)!=1){Bb=348;break a}yb=k[Gc>>2]|0;k[E>>2]=fa;k[E+4>>2]=ga;Pb(a,yb,E)|0;yb=k[fa>>2]|0;if(!Jc)if(!(bf(a,$,vb,k[Gc>>2]&65535,7,yb,yb,k[ga>>2]|0)|0)){Dc=vb;break a}else break b;else{k[$>>2]=(k[$>>2]|0)+1;break b}break}default:{Bb=352;break a}}}while(0);Kc=Kc+1|0}while(Kc>>>0<(k[qa>>2]|0)>>>0)}while(0);c:do if(k[hb>>2]|0){Kc=(vb|0)==0;Jc=0;while(1){Gc=k[tb>>2]|0;Ic=k[Gc+(Jc*12|0)>>2]|0;d:do switch(k[Ic+8>>2]|0){case 2:{bc=k[Gc+(Jc*12|0)+4>>2]|0;if(!Kc)if(!(bf(a,$,vb,k[Ic>>2]&65535,2,bc,bc,k[Gc+(Jc*12|0)+8>>2]|0)|0)){Dc=vb;break a}else break d;else{k[$>>2]=(k[$>>2]|0)+1;break d}break}case 7:{bc=k[Gc+(Jc*12|0)+4>>2]|0;if(!Kc)if(!(bf(a,$,vb,k[Ic>>2]&65535,7,bc,bc,k[Gc+(Jc*12|0)+8>>2]|0)|0)){Dc=vb;break a}else break d;else{k[$>>2]=(k[$>>2]|0)+1;break d}break}case 1:{bc=k[Gc+(Jc*12|0)+4>>2]|0;if(!Kc)if(!(bf(a,$,vb,k[Ic>>2]&65535,1,bc,bc,k[Gc+(Jc*12|0)+8>>2]|0)|0)){Dc=vb;break a}else break d;else{k[$>>2]=(k[$>>2]|0)+1;break d}break}case 6:{bc=k[Gc+(Jc*12|0)+4>>2]|0;if(!Kc)if(!(bf(a,$,vb,k[Ic>>2]&65535,6,bc,bc,k[Gc+(Jc*12|0)+8>>2]|0)|0)){Dc=vb;break a}else break d;else{k[$>>2]=(k[$>>2]|0)+1;break d}break}case 3:{bc=k[Ic>>2]&65535;Mb=k[Gc+(Jc*12|0)+4>>2]|0;Jb=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}if((Mb|0)<=-1){Bb=370;break a}if(k[c>>2]&128)Td(Jb,Mb);if(!(bf(a,$,vb,bc,3,Mb,Mb<<1,Jb)|0)){Ab=vb;Bb=593;break a}break}case 8:{Jb=k[Ic>>2]&65535;Mb=k[Gc+(Jc*12|0)+4>>2]|0;bc=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}if((Mb|0)<=-1){Bb=377;break a}if(k[c>>2]&128)Td(bc,Mb);if(!(bf(a,$,vb,Jb,8,Mb,Mb<<1,bc)|0)){Ab=vb;Bb=593;break a}break}case 4:{bc=k[Ic>>2]&65535;Mb=k[Gc+(Jc*12|0)+4>>2]|0;Jb=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}if(Mb>>>0>=1073741824){Bb=384;break a}if(k[c>>2]&128)Vd(Jb,Mb);if(!(bf(a,$,vb,bc,4,Mb,Mb<<2,Jb)|0)){Ab=vb;Bb=593;break a}break}case 9:{Jb=k[Ic>>2]&65535;Mb=k[Gc+(Jc*12|0)+4>>2]|0;bc=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}if(Mb>>>0>=1073741824){Bb=391;break a}if(k[c>>2]&128)Vd(bc,Mb);if(!(bf(a,$,vb,Jb,9,Mb,Mb<<2,bc)|0)){Ab=vb;Bb=593;break a}break}case 16:{bc=k[Ic>>2]&65535;Mb=k[Gc+(Jc*12|0)+4>>2]|0;Jb=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}if(Mb>>>0>=536870912){Bb=398;break a}Ob=k[c>>2]|0;if(!(Ob&524288)){Bb=400;break a}if(Ob&128)Wd(Jb,Mb);if(!(bf(a,$,vb,bc,16,Mb,Mb<<3,Jb)|0)){Ab=vb;Bb=593;break a}break}case 17:{Jb=k[Ic>>2]&65535;Mb=k[Gc+(Jc*12|0)+4>>2]|0;bc=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}if(Mb>>>0>=536870912){Bb=407;break a}Ob=k[c>>2]|0;if(!(Ob&524288)){Bb=409;break a}if(Ob&128)Wd(bc,Mb);if(!(bf(a,$,vb,Jb,17,Mb,Mb<<3,bc)|0)){Ab=vb;Bb=593;break a}break}case 5:{if(!(ff(a,$,vb,k[Ic>>2]&65535,k[Gc+(Jc*12|0)+4>>2]|0,k[Gc+(Jc*12|0)+8>>2]|0)|0)){Ab=vb;Bb=593;break a}break}case 10:{bc=k[Ic>>2]&65535;Mb=k[Gc+(Jc*12|0)+4>>2]|0;Jb=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}Ob=Mb<<1;Ec=Mb<<3;yb=me(Ec)|0;if(!yb){Pc=vb;Bb=418;break a}if(Mb){lc=Jb;Jb=yb;Nb=0;while(1){Qc=+o[lc>>2];Mc=~~Qc;Nc=Qc==+(Mc|0);do if(Qc<0.0){if(Nc){k[Jb>>2]=Mc;k[Jb+4>>2]=1;break}if(Qc>-1.0){k[Jb>>2]=0-~~(Qc*-2147483648.0);k[Jb+4>>2]=2147483647;break}else{k[Jb>>2]=-2147483647;k[Jb+4>>2]=~~(2147483648.0/-Qc);break}}else{if(Nc){k[Jb>>2]=Mc;k[Jb+4>>2]=1;break}if(Qc<1.0){k[Jb>>2]=~~(Qc*2147483648.0);k[Jb+4>>2]=2147483647;break}else{k[Jb>>2]=2147483647;k[Jb+4>>2]=~~(2147483648.0/Qc);break}}while(0);Nb=Nb+1|0;if((Nb|0)==(Mb|0))break;else{lc=lc+4|0;Jb=Jb+8|0}}}if(k[c>>2]&128)Vd(yb,Ob);Jb=bf(a,$,vb,bc,10,Mb,Ec,yb)|0;ne(yb);if(!Jb){Ab=vb;Bb=593;break a}break}case 11:{Jb=k[Ic>>2]&65535;lc=k[Gc+(Jc*12|0)+4>>2]|0;Nb=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}if(lc>>>0>=1073741824){Bb=437;break a}if(k[c>>2]&128)Xd(Nb,lc);if(!(bf(a,$,vb,Jb,11,lc,lc<<2,Nb)|0)){Ab=vb;Bb=593;break a}break}case 12:{Nb=k[Ic>>2]&65535;lc=k[Gc+(Jc*12|0)+4>>2]|0;Jb=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}if(lc>>>0>=536870912){Bb=444;break a}if(k[c>>2]&128)Yd(Jb,lc);if(!(bf(a,$,vb,Nb,12,lc,lc<<3,Jb)|0)){Ab=vb;Bb=593;break a}break}case 13:{Jb=k[Ic>>2]&65535;lc=k[Gc+(Jc*12|0)+4>>2]|0;Nb=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}if(lc>>>0>=1073741824){Bb=451;break a}if(k[c>>2]&128)Vd(Nb,lc);if(!(bf(a,$,vb,Jb,13,lc,lc<<2,Nb)|0)){Ab=vb;Bb=593;break a}break}case 18:{Nb=k[Ic>>2]&65535;lc=k[Gc+(Jc*12|0)+4>>2]|0;Jb=k[Gc+(Jc*12|0)+8>>2]|0;if(Kc){k[$>>2]=(k[$>>2]|0)+1;break d}Mc=k[c>>2]|0;if(!(Mc&524288)){Nc=lc<<2;Lc=me(Nc)|0;if(!Lc){Rc=vb;Bb=465;break a}if(lc){Sc=Jb;Tc=0;Uc=Lc;while(1){Vc=Sc;Wc=k[Vc>>2]|0;Xc=k[Vc+4>>2]|0;if(Xc>>>0>0|(Xc|0)==0&Wc>>>0>4294967295){Yc=Lc;Zc=vb;Bb=467;break a}k[Uc>>2]=Wc;Tc=Tc+1|0;if(Tc>>>0>=lc>>>0)break;else{Sc=Sc+8|0;Uc=Uc+4|0}}if(lc>>>0>=1073741824){Bb=470;break a}}if(k[c>>2]&128)Vd(Lc,lc);Uc=bf(a,$,vb,Nb,13,lc,Nc,Lc)|0;ne(Lc);_c=Uc}else{if(lc>>>0>=536870912){Bb=459;break a}if(Mc&128)Wd(Jb,lc);_c=bf(a,$,vb,Nb,18,lc,lc<<3,Jb)|0}if(!_c){Ab=vb;Bb=593;break a}break}default:{Bb=475;break a}}while(0);Jc=Jc+1|0;if(Jc>>>0>=(k[hb>>2]|0)>>>0)break c}}while(0);if(vb){$c=vb;ad=wb;Bb=548;break}Jc=me((k[$>>2]|0)*24|0)|0;if(!Jc){bd=Jc;Bb=479;break}if(ma){Kc=ib;if((k[Kc>>2]|0)==0&(k[Kc+4>>2]|0)==0){Kc=xb[k[jb>>2]&63](k[kb>>2]|0,0,0,2)|0;Gc=sr(Kc|0,L|0,1,0)|0;Kc=L;Ic=Gc&-2;Gc=ib;k[Gc>>2]=Ic;k[Gc+4>>2]=Kc;Gc=k[c>>2]|0;Uc=(Gc&524288|0)!=0;do if(!(Gc&8192)){if(!Uc){k[V>>2]=Ic;if(Gc&128)Rd(V);Sc=k[pb>>2]|0;if(!Sc){k[pb>>2]=k[ib>>2];xb[k[jb>>2]&63](k[kb>>2]|0,4,0,0)|0;if((nb[k[mb>>2]&63](k[kb>>2]|0,V,4)|0)==4)break;else{cd=Jc;Bb=503;break a}}else dd=Sc;while(1){Sc=xb[k[jb>>2]&63](k[kb>>2]|0,dd,0,0)|0;if(!((Sc|0)==(dd|0)&(L|0)==0)){ed=Jc;Bb=506;break a}if((nb[k[ob>>2]&63](k[kb>>2]|0,W,2)|0)!=2){ed=Jc;Bb=506;break a}if(k[c>>2]&128)Qd(W);Sc=dd+2|0;xb[k[jb>>2]&63](k[kb>>2]|0,((m[W>>1]|0)*12|0)+Sc|0,0,0)|0;if((nb[k[ob>>2]&63](k[kb>>2]|0,X,4)|0)!=4){fd=Jc;Bb=510;break a}if(k[c>>2]&128)Rd(X);dd=k[X>>2]|0;if(!dd){gd=Sc;break}}xb[k[jb>>2]&63](k[kb>>2]|0,((m[W>>1]|0)*12|0)+gd|0,0,0)|0;if((nb[k[mb>>2]&63](k[kb>>2]|0,V,4)|0)==4)break;else{hd=Jc;Bb=515;break a}}Sc=Y;k[Sc>>2]=Ic;k[Sc+4>>2]=Kc;if(Gc&128)Sd(Y);Sc=lb;Tc=k[Sc>>2]|0;yb=k[Sc+4>>2]|0;if((Tc|0)==0&(yb|0)==0){Sc=ib;Ec=k[Sc+4>>2]|0;Mb=lb;k[Mb>>2]=k[Sc>>2];k[Mb+4>>2]=Ec;xb[k[jb>>2]&63](k[kb>>2]|0,8,0,0)|0;if((nb[k[mb>>2]&63](k[kb>>2]|0,Y,8)|0)==8)break;else{id=Jc;Bb=520;break a}}else{jd=Tc;kd=yb}while(1){yb=xb[k[jb>>2]&63](k[kb>>2]|0,jd,kd,0)|0;if(!((yb|0)==(jd|0)&(L|0)==(kd|0))){ld=Jc;Bb=523;break a}if((nb[k[ob>>2]&63](k[kb>>2]|0,Z,8)|0)!=8){ld=Jc;Bb=523;break a}if(k[c>>2]&128)Sd(Z);yb=Z;Tc=k[yb>>2]|0;Ec=k[yb+4>>2]|0;if(Ec>>>0>0|(Ec|0)==0&Tc>>>0>65535){md=Jc;Bb=527;break a}Ec=k[jb>>2]|0;yb=k[kb>>2]|0;Mb=sr(jd|0,kd|0,8,0)|0;Sc=sr(Mb|0,L|0,(Tc&65535)*20|0,0)|0;Tc=L;xb[Ec&63](yb,Sc,Tc,0)|0;if((nb[k[ob>>2]&63](k[kb>>2]|0,_,8)|0)!=8){nd=Jc;Bb=529;break a}if(k[c>>2]&128)Sd(_);yb=_;jd=k[yb>>2]|0;kd=k[yb+4>>2]|0;if((jd|0)==0&(kd|0)==0){od=Sc;pd=Tc;break}}xb[k[jb>>2]&63](k[kb>>2]|0,od,pd,0)|0;if((nb[k[mb>>2]&63](k[kb>>2]|0,Y,8)|0)!=8){qd=Jc;Bb=534;break a}}else if(Uc){Tc=U;k[Tc>>2]=Ic;k[Tc+4>>2]=Kc;if(Gc&128)Sd(U);Tc=pa;xb[k[jb>>2]&63](k[kb>>2]|0,k[Tc>>2]|0,k[Tc+4>>2]|0,0)|0;if((nb[k[mb>>2]&63](k[kb>>2]|0,U,8)|0)!=8){rd=Jc;Bb=494;break a}Tc=(j[oa>>1]|0)+-1<<16>>16;j[oa>>1]=Tc;if(!(Tc<<16>>16)){k[c>>2]=k[c>>2]&-8193;break}else{Tc=pa;Sc=sr(k[Tc>>2]|0,k[Tc+4>>2]|0,8,0)|0;Tc=pa;k[Tc>>2]=Sc;k[Tc+4>>2]=L;break}}else{k[T>>2]=Ic;if(Gc&128)Rd(T);Tc=pa;xb[k[jb>>2]&63](k[kb>>2]|0,k[Tc>>2]|0,k[Tc+4>>2]|0,0)|0;if((nb[k[mb>>2]&63](k[kb>>2]|0,T,4)|0)!=4){sd=Jc;Bb=487;break a}Tc=(j[oa>>1]|0)+-1<<16>>16;j[oa>>1]=Tc;if(!(Tc<<16>>16)){k[c>>2]=k[c>>2]&-8193;break}else{Tc=pa;Sc=sr(k[Tc>>2]|0,k[Tc+4>>2]|0,4,0)|0;Tc=pa;k[Tc>>2]=Sc;k[Tc+4>>2]=L;break}}while(0)}}else{Gc=xb[k[jb>>2]&63](k[kb>>2]|0,0,0,2)|0;Ic=sr(Gc|0,L|0,1,0)|0;Gc=ib;k[Gc>>2]=Ic&-2;k[Gc+4>>2]=L}if(!rb){Gc=ib;Ic=k[Gc+4>>2]|0;Kc=d;k[Kc>>2]=k[Gc>>2];k[Kc+4>>2]=Ic}Ic=k[$>>2]|0;if(!(k[c>>2]&524288)){Kc=(Ic*12|2)+4|0;Gc=ib;Uc=k[Gc>>2]|0;Tc=k[Gc+4>>2]|0;Gc=sr(Uc|0,Tc|0,Kc|0,0)|0;td=Gc;ud=0;vd=Tc;wd=Uc;xd=0;yd=Kc;zd=Kc}else{Kc=(Ic*20|0)+16|0;Ic=ib;Uc=k[Ic>>2]|0;Tc=k[Ic+4>>2]|0;Ic=sr(Uc|0,Tc|0,Kc|0,0)|0;td=Ic;ud=L;vd=Tc;wd=Uc;xd=0;yd=Kc;zd=Kc}Kc=la;k[Kc>>2]=td;k[Kc+4>>2]=ud;if(ud>>>0<xd>>>0|(ud|0)==(xd|0)&td>>>0<yd>>>0|(ud>>>0<vd>>>0|(ud|0)==(vd|0)&td>>>0<wd>>>0)){Ad=Jc;Bb=543;break}if(!((td&1|0)==0&0==0)){Kc=sr(td|0,ud|0,1,0)|0;Uc=la;k[Uc>>2]=Kc;k[Uc+4>>2]=L}if(!ma){vb=Jc;wb=zd;continue}j[sb>>1]=(j[sb>>1]|0)+1<<16>>16;vb=Jc;wb=zd}switch(Bb|0){case 76:{vc(k[kb>>2]|0,140996,150005,Q);Dc=Kb;break}case 141:{vc(k[kb>>2]|0,140996,150005,P);Dc=$b;break}case 152:{vc(k[kb>>2]|0,140996,150005,O);Dc=dc;break}case 191:{vc(k[kb>>2]|0,141032,150005,N);Dc=kc;break}case 193:{Ja(141062,141079,1956,141094);break}case 210:{vc(k[kb>>2]|0,140996,150005,K);Dc=nc;break}case 268:{vc(k[kb>>2]|0,141133,150005,J);Dc=Bc;break}case 273:{Ja(141062,141079,1956,141094);break}case 289:{vc(k[kb>>2]|0,141171,150005,I);Dc=Fc;break}case 293:{Ja(141199,141079,1868,141171);break}case 295:{Ja(141207,141079,1869,141171);break}case 313:{Ja(141227,141079,643,140888);break}case 315:{Ja(141253,141079,644,140888);break}case 317:{Ja(141287,141079,645,140888);break}case 322:{Ja(141309,141079,655,140888);break}case 324:{Ja(141335,141079,656,140888);break}case 326:{Ja(141287,141079,657,140888);break}case 333:{Ja(141357,141079,666,140888);break}case 335:{Ja(141335,141079,667,140888);break}case 337:{Ja(141287,141079,668,140888);break}case 344:{Ja(141382,141079,678,140888);break}case 346:{Ja(141412,141079,679,140888);break}case 348:{Ja(141447,141079,680,140888);break}case 352:{Ja(141469,141079,687,140888);break}case 370:{Ja(141062,141079,1956,141094);break}case 377:{Ja(141062,141079,1979,141471);break}case 384:{Ja(141511,141079,2e3,141528);break}case 391:{Ja(141511,141079,2023,141566);break}case 398:{Ja(141605,141079,2047,141622);break}case 400:{Ja(141661,141079,2049,141622);break}case 407:{Ja(141605,141079,2072,141689);break}case 409:{Ja(141661,141079,2074,141689);break}case 418:{vc(k[kb>>2]|0,141729,150005,D);Dc=Pc;break}case 437:{Ja(141511,141079,2239,141772);break}case 444:{Ja(141605,141079,2264,141811);break}case 451:{Ja(141511,141079,2275,141851);break}case 459:{Ja(141605,141079,2285,141888);break}case 465:{vc(k[kb>>2]|0,141926,150005,C);Dc=Rc;break}case 467:{vc(k[kb>>2]|0,141926,141960,B);ne(Yc);Ab=Zc;Bb=593;break}case 470:{Ja(141511,141079,2275,141851);break}case 475:{Ja(141469,141079,763,140888);break}case 479:{vc(k[kb>>2]|0,140888,150005,A);Ab=bd;Bb=593;break}case 487:{vc(k[kb>>2]|0,142028,142046,z);Ab=sd;Bb=593;break}case 494:{vc(k[kb>>2]|0,142028,142046,y);Ab=rd;Bb=593;break}case 503:{vc(k[kb>>2]|0,k[a>>2]|0,142082,x);Ab=cd;Bb=593;break}case 506:{vc(k[kb>>2]|0,142028,140364,w);Ab=ed;Bb=593;break}case 510:{vc(k[kb>>2]|0,142028,140395,v);Ab=fd;Bb=593;break}case 515:{vc(k[kb>>2]|0,142028,140425,u);Ab=hd;Bb=593;break}case 520:{vc(k[kb>>2]|0,k[a>>2]|0,142082,t);Ab=id;Bb=593;break}case 523:{vc(k[kb>>2]|0,142028,140364,s);Ab=ld;Bb=593;break}case 527:{vc(k[kb>>2]|0,142028,140454,q);Ab=md;Bb=593;break}case 529:{vc(k[kb>>2]|0,142028,140395,p);Ab=nd;Bb=593;break}case 534:{vc(k[kb>>2]|0,142028,140425,n);Ab=qd;Bb=593;break}case 543:{vc(k[kb>>2]|0,140888,142108,l);Ab=Ad;Bb=593;break}case 548:{do if((ma?(k[ka>>2]&131072|0)!=0:0)?(Ad=pa,(k[Ad>>2]|0)==0&(k[Ad+4>>2]|0)==0):0){Ad=k[$>>2]|0;if(!Ad)Ja(142140,141079,809,140888);else{Bd=0;Cd=$c}while(1){if((j[Cd>>1]|0)==330){Dd=Bd;break}Bd=Bd+1|0;if(Bd>>>0>=Ad>>>0){Bb=552;break}else Cd=Cd+24|0}if((Bb|0)==552)Ja(142140,141079,809,140888);Ad=ib;Jc=k[Ad>>2]|0;l=k[Ad+4>>2]|0;if(!(k[c>>2]&524288)){Ad=sr(Dd*12|0,0,10,0)|0;qd=sr(Ad|0,L|0,Jc|0,l|0)|0;Ad=pa;k[Ad>>2]=qd;k[Ad+4>>2]=L;break}else{Ad=sr(Dd*20|0,0,20,0)|0;qd=sr(Ad|0,L|0,Jc|0,l|0)|0;l=pa;k[l>>2]=qd;k[l+4>>2]=L;break}}while(0);pa=me(ad)|0;if(!pa){vc(k[kb>>2]|0,140888,150005,h);Ab=$c;Bb=593;break}h=k[c>>2]|0;Dd=k[$>>2]|0;if(h&524288){Cd=pa;k[Cd>>2]=Dd;k[Cd+4>>2]=0;if(!(h&128))Ed=Dd;else{Sd(pa);Ed=k[$>>2]|0}Cd=pa+8|0;if(!Ed)Fd=Cd;else{Ed=pa;Bd=0;ka=Cd;Cd=$c;while(1){j[ka>>1]=j[Cd>>1]|0;ma=k[c>>2]|0;if(!(ma&128))Gd=ma;else{Qd(ka);Gd=k[c>>2]|0}ma=Ed+10|0;j[ma>>1]=j[Cd+2>>1]|0;if(Gd&128)Qd(ma);ma=Ed+12|0;qe(ma,Cd+8|0,8);if(k[c>>2]&128)Sd(ma);ma=Ed;Ed=Ed+20|0;qe(Ed,Cd+16|0,8);Bd=Bd+1|0;l=ma+28|0;if(Bd>>>0>=(k[$>>2]|0)>>>0){Fd=l;break}else{ka=l;Cd=Cd+24|0}}}qe(Fd,a+24|0,8);if(k[c>>2]&128)Sd(Fd)}else{j[pa>>1]=Dd;if(!(h&128))Hd=Dd;else{Qd(pa);Hd=k[$>>2]|0}Dd=pa+2|0;if(!Hd)Id=Dd;else{Hd=0;h=Dd;Dd=$c;while(1){j[h>>1]=j[Dd>>1]|0;Fd=k[c>>2]|0;if(!(Fd&128))Jd=Fd;else{Qd(h);Jd=k[c>>2]|0}Fd=h+2|0;j[Fd>>1]=j[Dd+2>>1]|0;if(Jd&128)Qd(Fd);Fd=h+4|0;k[ha>>2]=k[Dd+8>>2];qe(Fd,ha,4);if(k[c>>2]&128)Rd(Fd);qe(h+8|0,Dd+16|0,4);Fd=h+12|0;Hd=Hd+1|0;if(Hd>>>0>=(k[$>>2]|0)>>>0){Id=Fd;break}else{h=Fd;Dd=Dd+24|0}}}k[ha>>2]=k[a+24>>2];if(k[c>>2]&128)Rd(ha);qe(Id,ha,4)}ne($c);$c=ib;ha=ib;do if((xb[k[jb>>2]&63](k[kb>>2]|0,k[$c>>2]|0,k[$c+4>>2]|0,0)|0)==(k[ha>>2]|0)?(L|0)==(k[ha+4>>2]|0):0){if((nb[k[mb>>2]&63](k[kb>>2]|0,pa,ad)|0)!=(ad|0)){vc(k[kb>>2]|0,140888,142148,f);break}ne(pa);if(!ja){ia=1;r=e;return ia|0}Rb(a);k[c>>2]=k[c>>2]&-2097161;qb[k[a+564>>2]&127](a);Sb(a)|0;ia=1;r=e;return ia|0}else vc(k[kb>>2]|0,140888,142148,g);while(0);ne(pa);ia=0;r=e;return ia|0}}if((Bb|0)==593)if(!Ab){ia=0;r=e;return ia|0}else Dc=Ab;ne(Dc);ia=0;r=e;return ia|0}function bf(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;var i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;i=r;r=r+32|0;l=i+16|0;m=i+8|0;n=i;o=i+20|0;p=k[b>>2]|0;a:do if(!p)q=0;else{s=0;while(1){t=j[c+(s*24|0)>>1]|0;if(t<<16>>16==d<<16>>16)break;if((t&65535)>(d&65535)){q=s;break a}t=s+1|0;if(t>>>0<p>>>0)s=t;else{q=t;break a}}Ja(142340,141079,2301,142361)}while(0);if(q>>>0<p>>>0){s=p;do{p=c+(s*24|0)|0;s=s+-1|0;t=c+(s*24|0)|0;k[p>>2]=k[t>>2];k[p+4>>2]=k[t+4>>2];k[p+8>>2]=k[t+8>>2];k[p+12>>2]=k[t+12>>2];k[p+16>>2]=k[t+16>>2];k[p+20>>2]=k[t+20>>2]}while(s>>>0>q>>>0)}j[c+(q*24|0)>>1]=d;j[c+(q*24|0)+2>>1]=e;e=c+(q*24|0)+8|0;k[e>>2]=f;k[e+4>>2]=0;e=c+(q*24|0)+16|0;q=e;k[q>>2]=0;k[q+4>>2]=0;q=a+12|0;c=k[q>>2]&524288;do if(((c>>>17)+4|0)>>>0<g>>>0){f=(c|0)==0;d=a+464|0;s=d;t=k[s>>2]|0;p=k[s+4>>2]|0;s=sr(t|0,p|0,g|0,0)|0;u=f?s:s;s=f?0:L;if(s>>>0<p>>>0|(s|0)==(p|0)&u>>>0<t>>>0|(s>>>0<0|(s|0)==0&u>>>0<g>>>0)){vc(k[a+628>>2]|0,142361,142108,n);v=0;r=i;return v|0}f=a+628|0;w=xb[k[a+640>>2]&63](k[f>>2]|0,t,p,0)|0;if(!((w|0)==(t|0)&(L|0)==(p|0))){vc(k[f>>2]|0,142361,142387,m);v=0;r=i;return v|0}if((g|0)<=-1)Ja(142413,141079,2335,142361);if((nb[k[a+636>>2]&63](k[f>>2]|0,h,g)|0)!=(g|0)){vc(k[f>>2]|0,142361,142387,l);v=0;r=i;return v|0}f=sr(u&1|0,0,u|0,s|0)|0;s=d;k[s>>2]=f;k[s+4>>2]=L;s=k[q>>2]|0;if(s&524288){f=e;k[f>>2]=t;k[f+4>>2]=p;if(!(s&128))break;Sd(e);break}k[o>>2]=t;if(s&128)Rd(o);qe(e,o,4)}else qe(e,h,g);while(0);k[b>>2]=(k[b>>2]|0)+1;v=1;r=i;return v|0}function cf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var f=0,g=0,h=0,i=0;f=r;r=r+16|0;g=f;if(!c){k[b>>2]=(k[b>>2]|0)+1;h=1;r=f;return h|0}if(!(e>=0.0))Ja(142292,141079,2084,142303);do if(!(e<=0.0)){i=~~e>>>0;if(+(i>>>0)==e){k[g>>2]=i;k[g+4>>2]=1;break}if(e<1.0){k[g>>2]=~~(e*4294967295.0)>>>0;k[g+4>>2]=-1;break}else{k[g>>2]=-1;k[g+4>>2]=~~(4294967295.0/e)>>>0;break}}else{k[g>>2]=0;k[g+4>>2]=1}while(0);if(k[a+12>>2]&128){Rd(g);Rd(g+4|0)}h=bf(a,b,c,d,5,1,8,g)|0;r=f;return h|0}function df(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;g=r;r=r+16|0;h=g+8|0;i=g;if(!c){k[b>>2]=(k[b>>2]|0)+1;j=1;r=g;return j|0}l=a+12|0;m=k[l>>2]|0;if(m&524288){if(e>>>0>=536870912)Ja(141605,141079,2047,141622);if(m&128)Wd(f,e);j=bf(a,b,c,d,16,e,e<<3,f)|0;r=g;return j|0}m=e<<2;n=me(m)|0;if(!n){vc(k[a+628>>2]|0,142256,150005,i);j=0;r=g;return j|0}do if(e){i=f;o=0;p=n;while(1){q=i;s=k[q>>2]|0;t=k[q+4>>2]|0;if(t>>>0>0|(t|0)==0&s>>>0>4294967295){u=13;break}k[p>>2]=s;o=o+1|0;if(o>>>0>=e>>>0){u=15;break}else{i=i+8|0;p=p+4|0}}if((u|0)==13){vc(k[a+628>>2]|0,142256,141960,h);ne(n);j=0;r=g;return j|0}else if((u|0)==15){if(e>>>0<1073741824)break;Ja(141511,141079,2e3,141528)}}while(0);if(k[l>>2]&128)Vd(n,e);l=bf(a,b,c,d,4,e,m,n)|0;ne(n);j=l;r=g;return j|0}function ef(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,l=0,n=0,q=0,s=0,t=0,u=0;g=r;r=r+16|0;h=e<<3;l=me(h)|0;if(!l){vc(k[a+628>>2]|0,142217,150005,g);n=0;r=g;return n|0}a:do switch(m[a+86>>1]|0|0){case 3:{if((m[a+84>>1]|0)>=33){if(!c){k[b>>2]=(k[b>>2]|0)+1;q=1;break a}if(e>>>0>=536870912)Ja(141605,141079,2264,141811);if(k[a+12>>2]&128)Yd(f,e);q=bf(a,b,c,d,12,e,h,f)|0;break a}if(e){s=0;do{o[l+(s<<2)>>2]=+p[f+(s<<3)>>3];s=s+1|0}while((s|0)!=(e|0))}if(!c){k[b>>2]=(k[b>>2]|0)+1;q=1;break a}if(e>>>0>=1073741824)Ja(141511,141079,2239,141772);if(k[a+12>>2]&128)Xd(l,e);q=bf(a,b,c,d,11,e,e<<2,l)|0;break}case 2:{s=j[a+84>>1]|0;if((s&65535)<9){if(e){t=0;do{i[l+t>>0]=~~+p[f+(t<<3)>>3];t=t+1|0}while((t|0)!=(e|0))}if(!c){k[b>>2]=(k[b>>2]|0)+1;q=1;break a}else{q=bf(a,b,c,d,6,e,e,l)|0;break a}}t=(e|0)==0;if((s&65535)<17){if(!t){u=0;do{j[l+(u<<1)>>1]=~~+p[f+(u<<3)>>3];u=u+1|0}while((u|0)!=(e|0))}if(!c){k[b>>2]=(k[b>>2]|0)+1;q=1;break a}if((e|0)<=-1)Ja(141062,141079,1979,141471);if(k[a+12>>2]&128)Td(l,e);q=bf(a,b,c,d,8,e,e<<1,l)|0;break a}else{if(!t){u=0;do{k[l+(u<<2)>>2]=~~+p[f+(u<<3)>>3];u=u+1|0}while((u|0)!=(e|0))}if(!c){k[b>>2]=(k[b>>2]|0)+1;q=1;break a}if(e>>>0>=1073741824)Ja(141511,141079,2023,141566);if(k[a+12>>2]&128)Vd(l,e);q=bf(a,b,c,d,9,e,e<<2,l)|0;break a}break}case 1:{u=j[a+84>>1]|0;if((u&65535)<9){if(e){t=0;do{i[l+t>>0]=~~+p[f+(t<<3)>>3];t=t+1|0}while((t|0)!=(e|0))}if(!c){k[b>>2]=(k[b>>2]|0)+1;q=1;break a}else{q=bf(a,b,c,d,1,e,e,l)|0;break a}}t=(e|0)==0;if((u&65535)<17){if(!t){s=0;do{j[l+(s<<1)>>1]=~~+p[f+(s<<3)>>3];s=s+1|0}while((s|0)!=(e|0))}if(!c){k[b>>2]=(k[b>>2]|0)+1;q=1;break a}if((e|0)<=-1)Ja(141062,141079,1956,141094);if(k[a+12>>2]&128)Td(l,e);q=bf(a,b,c,d,3,e,e<<1,l)|0;break a}else{if(!t){s=0;do{k[l+(s<<2)>>2]=~~+p[f+(s<<3)>>3]>>>0;s=s+1|0}while((s|0)!=(e|0))}if(!c){k[b>>2]=(k[b>>2]|0)+1;q=1;break a}if(e>>>0>=1073741824)Ja(141511,141079,2e3,141528);if(k[a+12>>2]&128)Vd(l,e);q=bf(a,b,c,d,4,e,e<<2,l)|0;break a}break}default:q=0}while(0);ne(l);n=q;r=g;return n|0}function ff(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,l=0,m=0,n=0,p=0.0,q=0;g=r;r=r+16|0;if(!c){k[b>>2]=(k[b>>2]|0)+1;h=1;r=g;return h|0}i=e<<1;j=e<<3;l=me(j)|0;if(!l){vc(k[a+628>>2]|0,142175,150005,g);h=0;r=g;return h|0}if(e){m=f;f=l;n=0;while(1){p=+o[m>>2];do if(!(p<=0.0)){q=~~p>>>0;if(p==+(q>>>0)){k[f>>2]=q;k[f+4>>2]=1;break}if(p<1.0){k[f>>2]=~~(p*4294967296.0)>>>0;k[f+4>>2]=-1;break}else{k[f>>2]=-1;k[f+4>>2]=~~(4294967296.0/p)>>>0;break}}else{k[f>>2]=0;k[f+4>>2]=1}while(0);n=n+1|0;if((n|0)==(e|0))break;else{m=m+4|0;f=f+8|0}}}if(k[a+12>>2]&128)Vd(l,i);i=bf(a,b,c,d,5,e,j,l)|0;ne(l);h=i;r=g;return h|0}function gf(a,b){a=a|0;b=b|0;k[a+504>>2]=6;k[a+500>>2]=0;k[a+508>>2]=6;k[a+520>>2]=0;k[a+516>>2]=6;return 1}function hf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=r;r=r+32|0;c=b+8|0;d=b;e=b+12|0;f=a+88|0;g=Xe(j[f>>1]|0)|0;k[d>>2]=m[f>>1];Bq(e,142602,d)|0;d=k[a+628>>2]|0;f=k[a>>2]|0;if(!g)h=e;else h=k[g>>2]|0;k[c>>2]=h;vc(d,f,142605,c);r=b;return 0}function jf(a,b){a=a|0;b=b|0;k[a+504>>2]=7;k[a+532>>2]=12;k[a+540>>2]=12;k[a+548>>2]=12;k[a+536>>2]=13;k[a+544>>2]=13;k[a+552>>2]=13;k[a+560>>2]=23;return 1}function kf(a){a=a|0;return 1}function lf(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,l=0,m=0;d=r;r=r+32|0;e=d;f=a+608|0;g=k[f>>2]|0;if((g|0)<(c|0)){h=k[a+628>>2]|0;k[e>>2]=k[a+444>>2];i=e+8|0;k[i>>2]=g;k[i+4>>2]=((g|0)<0)<<31>>31;i=e+16|0;k[i>>2]=c;k[i+4>>2]=((c|0)<0)<<31>>31;vc(h,142682,142697,e);j=0;r=d;return j|0}e=a+604|0;a=k[e>>2]|0;if((a|0)==(b|0)){l=b;m=g}else{qe(b,a,c);l=k[e>>2]|0;m=k[f>>2]|0}k[e>>2]=l+c;k[f>>2]=m-c;j=1;r=d;return j|0}function mf(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,l=0,m=0,n=0,o=0,p=0;if((c|0)<=0){e=1;return e|0}d=a+608|0;f=a+592|0;g=a+604|0;h=c;c=b;while(1){b=k[d>>2]|0;i=k[f>>2]|0;j=(b+h|0)>(i|0)?i-b|0:h;if((j|0)<=0){l=4;break}m=k[g>>2]|0;if((m|0)==(c|0)){n=c;o=b;p=i}else{qe(m,c,j);n=k[g>>2]|0;o=k[d>>2]|0;p=k[f>>2]|0}k[g>>2]=n+j;m=o+j|0;k[d>>2]=m;c=c+j|0;h=h-j|0;if((m|0)>=(p|0)?(je(a)|0)==0:0){e=-1;l=10;break}if((h|0)<=0){e=1;l=10;break}}if((l|0)==4)Ja(142646,142652,55,142667);else if((l|0)==10)return e|0;return 0}function nf(a,b){a=a|0;b=b|0;var c=0;c=ha(k[a+580>>2]|0,b)|0;b=a+604|0;k[b>>2]=(k[b>>2]|0)+c;b=a+608|0;k[b>>2]=(k[b>>2]|0)-c;return 1}function of(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,j=0,m=0,n=0,o=0,p=0,q=0,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;if(!(c-b&4))e=c;else{k[c>>2]=0;e=c+4|0}if(e>>>0>b>>>0){c=b;b=0;while(1){f=k[c>>2]|0;if(f>>>0>d>>>0|(f+b|0)>>>0>d>>>0){g=d-b|0;k[c>>2]=g;h=g}else h=f;if(!h)j=b;else{f=b>>>3;g=a+f|0;m=b&7;n=8-m|0;if(h>>>0>n>>>0){if(!m){o=g;p=h}else{i[g>>0]=(l[g>>0]|0)&255<<n;o=a+(f+1)|0;p=h-n|0}n=p>>>3;if(!n){q=o;r=p}else{if(p>>>0>63){if(!(o&3)){s=o;t=n}else{f=o;u=n;while(1){v=f+1|0;i[f>>0]=0;w=u+-1|0;if((w|0)!=0&(v&3|0)!=0){f=v;u=w}else{s=v;t=w;break}}}u=t>>>2;f=u<<2;qr(s|0,0,f|0)|0;x=s+f|0;y=t-(u<<2)|0}else{x=o;y=n}switch(y|0){case 15:{i[x+14>>0]=0;z=17;break}case 14:{z=17;break}case 13:{z=18;break}case 12:{z=19;break}case 11:{z=20;break}case 10:{z=21;break}case 9:{z=22;break}case 8:{z=23;break}case 7:{z=24;break}case 6:{z=25;break}case 5:{z=26;break}case 4:{z=27;break}case 3:{z=28;break}case 2:{z=29;break}case 1:{z=30;break}default:A=x}if((z|0)==17){z=0;i[x+13>>0]=0;z=18}if((z|0)==18){z=0;i[x+12>>0]=0;z=19}if((z|0)==19){z=0;i[x+11>>0]=0;z=20}if((z|0)==20){z=0;i[x+10>>0]=0;z=21}if((z|0)==21){z=0;i[x+9>>0]=0;z=22}if((z|0)==22){z=0;i[x+8>>0]=0;z=23}if((z|0)==23){z=0;i[x+7>>0]=0;z=24}if((z|0)==24){z=0;i[x+6>>0]=0;z=25}if((z|0)==25){z=0;i[x+5>>0]=0;z=26}if((z|0)==26){z=0;i[x+4>>0]=0;z=27}if((z|0)==27){z=0;i[x+3>>0]=0;z=28}if((z|0)==28){z=0;i[x+2>>0]=0;z=29}if((z|0)==29){z=0;i[x+1>>0]=0;z=30}if((z|0)==30){z=0;i[x>>0]=0;A=x+y|0}q=A;r=p&7}if(r)i[q>>0]=(l[q>>0]|0)&255>>>r}else i[g>>0]=((l[142803+h>>0]|0)>>>m^255)&(l[g>>0]|0);j=(k[c>>2]|0)+b|0}u=c+4|0;f=k[u>>2]|0;if(f>>>0>d>>>0|(f+j|0)>>>0>d>>>0){w=d-j|0;k[u>>2]=w;B=w}else B=f;if(!B)C=j;else{f=j>>>3;w=a+f|0;v=j&7;D=8-v|0;if(B>>>0>D>>>0){if(!v){E=w;F=B}else{i[w>>0]=l[w>>0]|0|255>>>v;E=a+(f+1)|0;F=B-D|0}D=F>>>3;if(!D){G=E;H=F}else{if(F>>>0>63){if(!(E&3)){I=E;J=D}else{f=E;K=D;while(1){L=f+1|0;i[f>>0]=-1;M=K+-1|0;if((M|0)!=0&(L&3|0)!=0){f=L;K=M}else{I=L;J=M;break}}}K=J>>>2;f=K<<2;qr(I|0,-1,f|0)|0;N=I+f|0;O=J-(K<<2)|0}else{N=E;O=D}switch(O|0){case 15:{i[N+14>>0]=-1;z=49;break}case 14:{z=49;break}case 13:{z=50;break}case 12:{z=51;break}case 11:{z=52;break}case 10:{z=53;break}case 9:{z=54;break}case 8:{z=55;break}case 7:{z=56;break}case 6:{z=57;break}case 5:{z=58;break}case 4:{z=59;break}case 3:{z=60;break}case 2:{z=61;break}case 1:{z=62;break}default:P=N}if((z|0)==49){z=0;i[N+13>>0]=-1;z=50}if((z|0)==50){z=0;i[N+12>>0]=-1;z=51}if((z|0)==51){z=0;i[N+11>>0]=-1;z=52}if((z|0)==52){z=0;i[N+10>>0]=-1;z=53}if((z|0)==53){z=0;i[N+9>>0]=-1;z=54}if((z|0)==54){z=0;i[N+8>>0]=-1;z=55}if((z|0)==55){z=0;i[N+7>>0]=-1;z=56}if((z|0)==56){z=0;i[N+6>>0]=-1;z=57}if((z|0)==57){z=0;i[N+5>>0]=-1;z=58}if((z|0)==58){z=0;i[N+4>>0]=-1;z=59}if((z|0)==59){z=0;i[N+3>>0]=-1;z=60}if((z|0)==60){z=0;i[N+2>>0]=-1;z=61}if((z|0)==61){z=0;i[N+1>>0]=-1;z=62}if((z|0)==62){z=0;i[N>>0]=-1;P=N+O|0}G=P;H=F&7}if(H)i[G>>0]=l[G>>0]|0|65280>>>H}else i[w>>0]=l[w>>0]|0|(l[142803+B>>0]|0)>>>v;C=(k[u>>2]|0)+j|0}c=c+8|0;if(c>>>0>=e>>>0){Q=C;break}else b=C}}else Q=0;if((Q|0)==(d|0))return;else Ja(142812,142823,453,142834)}function pf(a,b){a=a|0;b=b|0;var c=0,d=0;b=r;r=r+16|0;c=b+8|0;if(!(tf(a)|0)){d=1;r=b;return d|0}if(!(_b(a,7992,1)|0)){vc(k[a+628>>2]|0,142852,142870,b);d=0;r=b;return d|0}else{k[c>>2]=1;d=Ob(a,65536,c)|0;r=b;return d|0}return 0}function qf(a,b){a=a|0;b=b|0;var c=0,d=0;b=r;r=r+16|0;c=b+8|0;if(!(tf(a)|0)){d=0;r=b;return d|0}if(!(_b(a,8028,1)|0)){vc(k[a+628>>2]|0,142917,142935,b);d=0;r=b;return d|0}else{k[a+532>>2]=14;k[a+540>>2]=14;k[a+548>>2]=14;k[a+536>>2]=15;k[a+544>>2]=15;k[a+552>>2]=15;k[a+528>>2]=8;k[c>>2]=1;d=Ob(a,65536,c)|0;r=b;return d|0}return 0}function rf(a,b){a=a|0;b=b|0;var c=0,d=0;b=r;r=r+16|0;c=b;if(!(tf(a)|0)){d=0;r=b;return d|0}k[a+532>>2]=16;k[a+540>>2]=16;k[a+548>>2]=16;k[c>>2]=7;d=Ob(a,65536,c)|0;r=b;return d|0}function sf(a,b){a=a|0;b=b|0;var c=0,d=0;b=r;r=r+16|0;c=b;if(!(tf(a)|0)){d=0;r=b;return d|0}k[a+532>>2]=16;k[a+540>>2]=16;k[a+548>>2]=16;k[c>>2]=11;d=Ob(a,65536,c)|0;r=b;return d|0}function tf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=r;r=r+32|0;c=b+16|0;if(!(_b(a,8100,5)|0)){vc(k[a+628>>2]|0,143889,143903,b);d=0;r=b;return d|0}e=me(96)|0;f=a+576|0;k[f>>2]=e;if(!e){vc(k[a+628>>2]|0,143889,143955,b+8|0);d=0;r=b;return d|0}g=k[a+8>>2]|0;k[e>>2]=g;h=a+668|0;i=a+672|0;k[e+32>>2]=k[i>>2];k[i>>2]=11;k[e+36>>2]=k[h>>2];k[h>>2]=12;h=a+676|0;k[e+40>>2]=k[h>>2];k[h>>2]=9;k[e+28>>2]=0;if(!g){g=a+12|0;k[g>>2]=k[g>>2]|256}k[e+64>>2]=0;k[c>>2]=3;Ob(a,65540,c)|0;k[(k[f>>2]|0)+80>>2]=0;k[a+504>>2]=9;k[a+508>>2]=10;k[a+512>>2]=24;k[a+532>>2]=17;k[a+540>>2]=17;k[a+548>>2]=17;k[a+516>>2]=10;k[a+524>>2]=25;k[a+528>>2]=11;k[a+536>>2]=18;k[a+544>>2]=18;k[a+552>>2]=18;k[a+556>>2]=2;k[a+564>>2]=3;d=1;r=b;return d|0}function uf(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,m=0,n=0,o=0,p=0,q=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,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,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,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0,Kd=0,Ld=0,Md=0,Nd=0,Od=0,Pd=0,Qd=0,Rd=0,Sd=0,Td=0,Ud=0,Vd=0,Wd=0,Xd=0,Yd=0,Zd=0,_d=0,$d=0,ae=0,be=0,ce=0;d=r;r=r+176|0;e=d+144|0;f=d+120|0;g=d+104|0;h=d+88|0;i=d+72|0;j=d+56|0;m=d+40|0;n=d+24|0;o=d+8|0;p=k[a+576>>2]|0;q=k[p+12>>2]|0;s=k[p+44>>2]|0;t=p+8|0;if((c|0)%(k[t>>2]|0)|0){vc(k[a+628>>2]|0,143789,153793,d);u=-1;r=d;return u|0}v=p+48|0;w=k[v>>2]|0;x=p+52|0;y=k[x>>2]|0;z=p+56|0;A=k[z>>2]|0;B=a+604|0;C=k[B>>2]|0;D=a+608|0;E=k[D>>2]|0;F=C+E|0;do if((c|0)>0){G=p+72|0;H=p+68|0;I=(q|0)>0;J=p+92|0;K=a+628|0;L=a+12|0;M=a+492|0;N=a+452|0;O=p+60|0;P=b;Q=c;R=k[H>>2]|0;S=k[G>>2]|0;T=w;U=y;V=A;W=C;a:while(1){b:do if(I){X=S;Y=T;Z=U;_=0;$=0;aa=k[R>>2]|0;ba=W;ca=S;da=R+4|0;c:while(1){ea=(ca|0)==(S|0);d:do if(ea){fa=Y;ga=Z;ha=0;ia=_;ja=$;ka=aa;la=ba;ma=da;while(1){do if((ga|0)<7)if(la>>>0>=F>>>0)if(!ga){na=P;oa=S;pa=fa;qa=0;ra=V;sa=ha;ta=ja;ua=la;va=S;wa=88;break a}else{xa=fa;ya=7;za=la;break}else{xa=(l[s+(l[la>>0]|0)>>0]|0)<<ga|fa;ya=ga+8|0;za=la+1|0;break}else{xa=fa;ya=ga;za=la}while(0);Aa=xa&127;Ba=l[8280+(Aa<<3)+1>>0]|0;Ca=ya-Ba|0;Da=xa>>>Ba;switch(l[8280+(Aa<<3)>>0]|0|0){case 6:{Ea=Ca;Fa=Da;Ga=ha;Ha=ja;Ia=za;Ja=S;wa=77;break c;break}case 12:{Ka=Ba;La=Ca;Ma=Da;Na=ya;Oa=ha;Pa=ja;Qa=za;Ra=S;wa=78;break c;break}case 2:{Sa=Ca;Ta=Da;Ua=ha;Va=ja;Wa=ka;Xa=za;Ya=ma;wa=22;break d;break}case 3:{Za=Ca;_a=Da;$a=ha;ab=ja;bb=ia;cb=ka;db=za;eb=ma;wa=62;break d;break}case 4:{fb=Aa;gb=Ca;hb=Da;ib=ha;jb=ja;kb=ia;lb=ka;mb=za;nb=ma;wa=66;break d;break}case 5:{ob=Aa;pb=Ca;qb=Da;rb=ha;sb=ja;tb=ka;ub=za;vb=ma;wa=70;break d;break}case 1:break;default:{wb=Da;xb=Ca;yb=ha;zb=ja;Bb=za;Cb=S;wa=85;break c}}Aa=(k[ma>>2]|0)+ka|0;Ba=ia+ha+Aa|0;if((q|0)>(Aa|0)){fa=Da;ga=Ca;ha=Ba;ia=0-Aa|0;ja=Aa;ka=Aa+(k[ma+4>>2]|0)|0;la=za;ma=ma+8|0}else{Db=Da;Eb=Ca;Fb=Ba;Gb=Aa;Hb=za;Ib=S;wa=99;break c}}}else{ma=Y;la=Z;ka=0;ja=_;ia=$;ha=aa;ga=ba;fa=da;while(1){do if((la|0)<7)if(ga>>>0>=F>>>0)if(!la){na=P;oa=S;pa=ma;qa=0;ra=V;sa=ka;ta=ia;ua=ga;va=ca;wa=88;break a}else{Jb=ma;Kb=7;Lb=ga;break}else{Jb=(l[s+(l[ga>>0]|0)>>0]|0)<<la|ma;Kb=la+8|0;Lb=ga+1|0;break}else{Jb=ma;Kb=la;Lb=ga}while(0);Aa=Jb&127;Ba=l[8280+(Aa<<3)+1>>0]|0;Ca=Kb-Ba|0;Da=Jb>>>Ba;switch(l[8280+(Aa<<3)>>0]|0|0){case 6:{Ea=Ca;Fa=Da;Ga=ka;Ha=ia;Ia=Lb;Ja=ca;wa=77;break c;break}case 12:{Ka=Ba;La=Ca;Ma=Da;Na=Kb;Oa=ka;Pa=ia;Qa=Lb;Ra=ca;wa=78;break c;break}case 2:{Sa=Ca;Ta=Da;Ua=ka;Va=ia;Wa=ha;Xa=Lb;Ya=fa;wa=22;break d;break}case 3:{Za=Ca;_a=Da;$a=ka;ab=ia;bb=ja;cb=ha;db=Lb;eb=fa;wa=62;break d;break}case 4:{fb=Aa;gb=Ca;hb=Da;ib=ka;jb=ia;kb=ja;lb=ha;mb=Lb;nb=fa;wa=66;break d;break}case 5:{ob=Aa;pb=Ca;qb=Da;rb=ka;sb=ia;tb=ha;ub=Lb;vb=fa;wa=70;break d;break}case 1:break;default:{wb=Da;xb=Ca;yb=ka;zb=ia;Bb=Lb;Cb=ca;wa=85;break c}}if((ha|0)<=(ia|0)&(ha|0)<(q|0)){Aa=ha;Ba=fa;while(1){Mb=(k[Ba>>2]|0)+Aa+(k[Ba+4>>2]|0)|0;Nb=Ba+8|0;if((Mb|0)<=(ia|0)&(Mb|0)<(q|0)){Aa=Mb;Ba=Nb}else{Ob=Mb;Pb=Nb;break}}}else{Ob=ha;Pb=fa}Ba=(k[Pb>>2]|0)+Ob|0;Aa=ja+ka+Ba|0;if((q|0)>(Ba|0)){ma=Da;la=Ca;ka=Aa;ja=0-Ba|0;ia=Ba;ha=Ba+(k[Pb+4>>2]|0)|0;ga=Lb;fa=Pb+8|0}else{Db=Da;Eb=Ca;Fb=Aa;Gb=Ba;Hb=Lb;Ib=ca;wa=99;break c}}}while(0);if((wa|0)==22){wa=0;if(!(ca-X&4)){fa=Ta;ga=Sa;ha=Ua;ia=Va;ja=Xa;e:while(1){do if((ga|0)<12){if(ja>>>0>=F>>>0)if(!ga){na=P;oa=S;pa=fa;qa=0;ra=V;sa=ha;ta=ia;ua=ja;va=ca;wa=88;break a}else{Qb=fa;Rb=12;Sb=ja;break}ka=ja+1|0;la=(l[s+(l[ja>>0]|0)>>0]|0)<<ga|fa;ma=ga+8|0;if((ma|0)<12)if(ka>>>0<F>>>0){Qb=(l[s+(l[ka>>0]|0)>>0]|0)<<ma|la;Rb=ga+16|0;Sb=ja+2|0}else{Qb=la;Rb=12;Sb=ka}else{Qb=la;Rb=ma;Sb=ka}}else{Qb=fa;Rb=ga;Sb=ja}while(0);ka=Qb&4095;ma=l[9304+(ka<<3)+1>>0]|0;la=Rb-ma|0;Ba=Qb>>>ma;switch(l[9304+(ka<<3)>>0]|0|0){case 7:{Tb=ka;Ub=la;Vb=Ba;Wb=ha;Xb=ia;Yb=Sb;break e;break}case 11:case 9:break;default:{Zb=Ba;_b=la;$b=ha;ac=ia;bc=Sb;cc=ca;wa=87;break c}}ma=k[9304+(ka<<3)+4>>2]|0;fa=Ba;ga=la;ha=ma+ha|0;ia=ma+ia|0;ja=Sb}ja=k[9304+(Tb<<3)+4>>2]|0;ia=ca+4|0;k[ca>>2]=ja+Wb;ha=Vb;ga=Ub;fa=0;ma=ja+Xb|0;ja=Yb;f:while(1){do if((ga|0)<13){if(ja>>>0>=F>>>0)if(!ga){na=P;oa=S;pa=ha;qa=0;ra=V;sa=fa;ta=ma;ua=ja;va=ia;wa=88;break a}else{dc=ha;ec=13;fc=ja;break}la=ja+1|0;Ba=(l[s+(l[ja>>0]|0)>>0]|0)<<ga|ha;ka=ga+8|0;if((ka|0)<13)if(la>>>0<F>>>0){dc=(l[s+(l[la>>0]|0)>>0]|0)<<ka|Ba;ec=ga+16|0;fc=ja+2|0}else{dc=Ba;ec=13;fc=la}else{dc=Ba;ec=ka;fc=la}}else{dc=ha;ec=ga;fc=ja}while(0);la=dc&8191;ka=l[42072+(la<<3)+1>>0]|0;Ba=ec-ka|0;Aa=dc>>>ka;switch(l[42072+(la<<3)>>0]|0|0){case 8:{gc=la;hc=Ba;ic=Aa;jc=fa;kc=ma;lc=fc;break f;break}case 11:case 10:break;default:{mc=Aa;nc=Ba;oc=fa;pc=ma;qc=fc;rc=ia;wa=86;break c}}ka=k[42072+(la<<3)+4>>2]|0;ha=Aa;ga=Ba;fa=ka+fa|0;ma=ka+ma|0;ja=fc}ja=k[42072+(gc<<3)+4>>2]|0;k[ia>>2]=ja+jc;sc=ic;tc=hc;uc=ja+kc|0;wc=lc}else{ja=Ta;ma=Sa;fa=Ua;ga=Va;ha=Xa;g:while(1){do if((ma|0)<13){if(ha>>>0>=F>>>0)if(!ma){na=P;oa=S;pa=ja;qa=0;ra=V;sa=fa;ta=ga;ua=ha;va=ca;wa=88;break a}else{xc=ja;yc=13;zc=ha;break}ka=ha+1|0;Ba=(l[s+(l[ha>>0]|0)>>0]|0)<<ma|ja;Aa=ma+8|0;if((Aa|0)<13)if(ka>>>0<F>>>0){xc=(l[s+(l[ka>>0]|0)>>0]|0)<<Aa|Ba;yc=ma+16|0;zc=ha+2|0}else{xc=Ba;yc=13;zc=ka}else{xc=Ba;yc=Aa;zc=ka}}else{xc=ja;yc=ma;zc=ha}while(0);ka=xc&8191;Aa=l[42072+(ka<<3)+1>>0]|0;Ba=yc-Aa|0;la=xc>>>Aa;switch(l[42072+(ka<<3)>>0]|0|0){case 8:{Ac=ka;Bc=Ba;Cc=la;Dc=fa;Ec=ga;Fc=zc;break g;break}case 11:case 10:break;default:{mc=la;nc=Ba;oc=fa;pc=ga;qc=zc;rc=ca;wa=86;break c}}Aa=k[42072+(ka<<3)+4>>2]|0;ja=la;ma=Ba;fa=Aa+fa|0;ga=Aa+ga|0;ha=zc}ha=k[42072+(Ac<<3)+4>>2]|0;ga=ca+4|0;k[ca>>2]=ha+Dc;fa=Cc;ma=Bc;ja=0;ia=ha+Ec|0;ha=Fc;h:while(1){do if((ma|0)<12){if(ha>>>0>=F>>>0)if(!ma){na=P;oa=S;pa=fa;qa=0;ra=V;sa=ja;ta=ia;ua=ha;va=ga;wa=88;break a}else{Gc=fa;Hc=12;Ic=ha;break}Aa=ha+1|0;Ba=(l[s+(l[ha>>0]|0)>>0]|0)<<ma|fa;la=ma+8|0;if((la|0)<12)if(Aa>>>0<F>>>0){Gc=(l[s+(l[Aa>>0]|0)>>0]|0)<<la|Ba;Hc=ma+16|0;Ic=ha+2|0}else{Gc=Ba;Hc=12;Ic=Aa}else{Gc=Ba;Hc=la;Ic=Aa}}else{Gc=fa;Hc=ma;Ic=ha}while(0);Aa=Gc&4095;la=l[9304+(Aa<<3)+1>>0]|0;Ba=Hc-la|0;ka=Gc>>>la;switch(l[9304+(Aa<<3)>>0]|0|0){case 7:{Jc=Aa;Kc=Ba;Lc=ka;Mc=ja;Nc=ia;Oc=Ic;break h;break}case 11:case 9:break;default:{Zb=ka;_b=Ba;$b=ja;ac=ia;bc=Ic;cc=ga;wa=87;break c}}la=k[9304+(Aa<<3)+4>>2]|0;fa=ka;ma=Ba;ja=la+ja|0;ia=la+ia|0;ha=Ic}ha=k[9304+(Jc<<3)+4>>2]|0;k[ga>>2]=ha+Mc;sc=Lc;tc=Kc;uc=ha+Nc|0;wc=Oc}ha=ca+8|0;if((ha|0)!=(S|0))if((Wa|0)<=(uc|0)&(Wa|0)<(q|0)){ia=Wa;ja=Ya;while(1){ma=(k[ja>>2]|0)+ia+(k[ja+4>>2]|0)|0;fa=ja+8|0;if((ma|0)<=(uc|0)&(ma|0)<(q|0)){ia=ma;ja=fa}else{Pc=sc;Qc=tc;Rc=uc;Sc=ma;Tc=wc;Uc=ha;Vc=fa;break}}}else{Pc=sc;Qc=tc;Rc=uc;Sc=Wa;Tc=wc;Uc=ha;Vc=Ya}else{Pc=sc;Qc=tc;Rc=uc;Sc=Wa;Tc=wc;Uc=S;Vc=Ya}}else if((wa|0)==62){wa=0;if(!ea?(cb|0)<=(ab|0)&(cb|0)<(q|0):0){ja=cb;ia=eb;while(1){ga=(k[ia>>2]|0)+ja+(k[ia+4>>2]|0)|0;fa=ia+8|0;if((ga|0)<=(ab|0)&(ga|0)<(q|0)){ja=ga;ia=fa}else{Wc=ga;Xc=fa;break}}}else{Wc=cb;Xc=eb}k[ca>>2]=bb+$a+Wc;Pc=_a;Qc=Za;Rc=Wc;Sc=(k[Xc>>2]|0)+Wc|0;Tc=db;Uc=ca+4|0;Vc=Xc+4|0}else if((wa|0)==66){wa=0;if(!ea?(lb|0)<=(jb|0)&(lb|0)<(q|0):0){ia=lb;ja=nb;while(1){ha=(k[ja>>2]|0)+ia+(k[ja+4>>2]|0)|0;fa=ja+8|0;if((ha|0)<=(jb|0)&(ha|0)<(q|0)){ia=ha;ja=fa}else{Yc=ha;Zc=fa;break}}}else{Yc=lb;Zc=nb}ja=k[8280+(fb<<3)+4>>2]|0;k[ca>>2]=kb+ib+Yc+ja;Pc=hb;Qc=gb;Rc=ja+Yc|0;Sc=(k[Zc>>2]|0)+Yc|0;Tc=mb;Uc=ca+4|0;Vc=Zc+4|0}else if((wa|0)==70){wa=0;ja=(ca|0)!=(S|0);if(ja?(tb|0)<=(sb|0)&(tb|0)<(q|0):0){ia=tb;ea=vb;while(1){fa=(k[ea>>2]|0)+ia+(k[ea+4>>2]|0)|0;ha=ea+8|0;if((fa|0)<=(sb|0)&(fa|0)<(q|0)){ia=fa;ea=ha}else{_c=fa;$c=ha;break}}}else{_c=tb;$c=vb}ea=k[8280+(ob<<3)+4>>2]|0;ia=ea+sb|0;if((_c|0)<=(ia|0)&(ja|(_c|0)<(ia|0))){ad=pb;bd=qb;cd=rb;dd=sb;ed=ub;fd=ca;wa=74;break}k[ca>>2]=_c-sb+rb-ea;ia=$c+-4|0;Pc=qb;Qc=pb;Rc=_c-ea|0;Sc=_c-(k[ia>>2]|0)|0;Tc=ub;Uc=ca+4|0;Vc=ia}if((q|0)>(Rc|0)){Y=Pc;Z=Qc;_=0-Rc|0;$=Rc;aa=Sc;ba=Tc;ca=Uc;da=Vc}else{gd=Pc;hd=Qc;id=V;jd=Rc;kd=Tc;ld=Uc;break b}}do if((wa|0)==74){wa=0;da=k[K>>2]|0;ca=(k[L>>2]&1024|0)!=0;ba=k[(ca?M:N)>>2]|0;k[o>>2]=k[J>>2];k[o+4>>2]=ca?142996:143001;k[o+8>>2]=ba;k[o+12>>2]=dd;vc(da,143789,143007,o);md=bd;nd=ad;od=V;pd=cd;qd=dd;rd=ed;sd=fd}else if((wa|0)==77){wa=0;k[Ja>>2]=q-Ha;da=k[K>>2]|0;ba=(k[L>>2]&1024|0)!=0;ca=k[(ba?M:N)>>2]|0;k[n>>2]=k[J>>2];k[n+4>>2]=ba?142996:143001;k[n+8>>2]=ca;k[n+12>>2]=Ha;vc(da,143789,143800,n);md=Fa;nd=Ea;od=V;pd=Ga;qd=Ha;rd=Ia;sd=Ja+4|0}else if((wa|0)==78){wa=0;da=Ra+4|0;k[Ra>>2]=q-Pa;do if((La|0)<4)if(Qa>>>0>=F>>>0)if((Na|0)==(Ka|0)){na=P;oa=S;pa=Ma;qa=La;ra=V;sa=Oa;ta=Pa;ua=Qa;va=da;wa=88;break a}else{td=Ma;ud=4;vd=Qa;break}else{td=(l[s+(l[Qa>>0]|0)>>0]|0)<<La|Ma;ud=La+8|0;vd=Qa+1|0;break}else{td=Ma;ud=La;vd=Qa}while(0);if(td&15){ja=k[K>>2]|0;ca=(k[L>>2]&1024|0)!=0;ba=k[(ca?M:N)>>2]|0;k[m>>2]=k[J>>2];k[m+4>>2]=ca?142996:143001;k[m+8>>2]=ba;k[m+12>>2]=Pa;vc(ja,143789,143007,m)}md=td>>>4;nd=ud+-4|0;od=1;pd=Oa;qd=Pa;rd=vd;sd=da}else if((wa|0)==86){wa=0;ja=k[K>>2]|0;ba=(k[L>>2]&1024|0)!=0;ca=k[(ba?M:N)>>2]|0;k[i>>2]=k[J>>2];k[i+4>>2]=ba?142996:143001;k[i+8>>2]=ca;k[i+12>>2]=pc;vc(ja,143789,143007,i);md=mc;nd=nc;od=V;pd=oc;qd=pc;rd=qc;sd=rc}else if((wa|0)==87){wa=0;ja=k[K>>2]|0;ca=(k[L>>2]&1024|0)!=0;ba=k[(ca?M:N)>>2]|0;k[h>>2]=k[J>>2];k[h+4>>2]=ca?142996:143001;k[h+8>>2]=ba;k[h+12>>2]=ac;vc(ja,143789,143007,h);md=Zb;nd=_b;od=V;pd=$b;qd=ac;rd=bc;sd=cc}else if((wa|0)==99){wa=0;if(!Fb){gd=Db;hd=Eb;id=V;jd=Gb;kd=Hb;ld=Ib;break b}if((Gb+Fb|0)<(q|0)){do if((Eb|0)<1)if(Hb>>>0>=F>>>0)if(!Eb){na=P;oa=S;pa=Db;qa=0;ra=V;sa=Fb;ta=Gb;ua=Hb;va=Ib;wa=88;break a}else{wd=Db;xd=1;yd=Hb;break}else{wd=(l[s+(l[Hb>>0]|0)>>0]|0)<<Eb|Db;xd=Eb+8|0;yd=Hb+1|0;break}else{wd=Db;xd=Eb;yd=Hb}while(0);if(!(wd&1)){wb=wd;xb=xd;yb=Fb;zb=Gb;Bb=yd;Cb=Ib;wa=85;break}zd=wd>>>1;Ad=xd+-1|0;Bd=yd}else{zd=Db;Ad=Eb;Bd=Hb}k[Ib>>2]=Fb;gd=zd;hd=Ad;id=V;jd=Gb;kd=Bd;ld=Ib+4|0;break b}while(0);if((wa|0)==85){wa=0;da=k[K>>2]|0;ja=(k[L>>2]&1024|0)!=0;ba=k[(ja?M:N)>>2]|0;k[j>>2]=k[J>>2];k[j+4>>2]=ja?142996:143001;k[j+8>>2]=ba;k[j+12>>2]=zb;vc(da,143789,143007,j);md=wb;nd=xb;od=V;pd=yb;qd=zb;rd=Bb;sd=Cb}if(!pd){gd=md;hd=nd;id=od;jd=qd;kd=rd;ld=sd}else{k[sd>>2]=pd;gd=md;hd=nd;id=od;jd=qd;kd=rd;ld=sd+4|0}}else{gd=T;hd=U;id=V;jd=0;kd=W;ld=S}while(0);do if((jd|0)==(q|0))Cd=ld;else{da=k[J>>2]|0;ba=k[K>>2]|0;ja=(k[L>>2]&1024|0)!=0;ca=k[(ja?M:N)>>2]|0;k[e>>2]=jd>>>0<q>>>0?143089:143103;k[e+4>>2]=da;k[e+8>>2]=ja?142996:143001;k[e+12>>2]=ca;k[e+16>>2]=jd;k[e+20>>2]=q;ie(ba,143789,143124,e);ba=(jd|0)>(q|0);if(ba&ld>>>0>S>>>0){ca=jd;ja=ld;while(1){da=ja+-4|0;aa=ca-(k[da>>2]|0)|0;$=(aa|0)>(q|0);if($&da>>>0>S>>>0){ca=aa;ja=da}else{Dd=$;Ed=aa;Fd=da;break}}}else{Dd=ba;Ed=jd;Fd=ld}if((Ed|0)>=(q|0)){if(!Dd){Cd=Fd;break}k[Fd>>2]=q;k[Fd+4>>2]=0;Cd=Fd+8|0;break}if(!(Fd-S&4))Gd=Fd;else{k[Fd>>2]=0;Gd=Fd+4|0}k[Gd>>2]=q-((Ed|0)<0?0:Ed);Cd=Gd+4|0}while(0);if(id){Hd=P;Id=S;Jd=gd;Kd=hd;Ld=id;Md=kd;Nd=Cd;break}Ab[k[O>>2]&31](P,S,Cd,q);k[Cd>>2]=0;R=k[G>>2]|0;S=k[H>>2]|0;k[G>>2]=S;k[H>>2]=R;ja=k[t>>2]|0;Q=Q-ja|0;k[J>>2]=(k[J>>2]|0)+1;if((Q|0)<=0){Od=gd;Pd=hd;Qd=kd;wa=128;break}else{P=P+ja|0;T=gd;U=hd;V=0;W=kd}}if((wa|0)==128){Rd=k[B>>2]|0;Sd=k[D>>2]|0;Td=Od;Ud=Pd;Vd=0;Wd=Qd;break}do if((wa|0)==88){W=k[K>>2]|0;V=(k[L>>2]&1024|0)!=0;U=k[(V?M:N)>>2]|0;k[g>>2]=k[J>>2];k[g+4>>2]=V?142996:143001;k[g+8>>2]=U;k[g+12>>2]=ta;ie(W,143789,143048,g);if(!sa)Xd=va;else{k[va>>2]=sa;Xd=va+4|0}if((ta|0)==(q|0)){Hd=na;Id=oa;Jd=pa;Kd=qa;Ld=ra;Md=ua;Nd=Xd}else{W=k[J>>2]|0;U=k[K>>2]|0;V=(k[L>>2]&1024|0)!=0;T=k[(V?M:N)>>2]|0;k[f>>2]=ta>>>0<q>>>0?143089:143103;k[f+4>>2]=W;k[f+8>>2]=V?142996:143001;k[f+12>>2]=T;k[f+16>>2]=ta;k[f+20>>2]=q;ie(U,143789,143124,f);U=(ta|0)>(q|0);if(U&Xd>>>0>oa>>>0){T=ta;V=Xd;while(1){W=V+-4|0;P=T-(k[W>>2]|0)|0;Q=(P|0)>(q|0);if(Q&W>>>0>oa>>>0){T=P;V=W}else{Yd=Q;Zd=P;_d=W;break}}}else{Yd=U;Zd=ta;_d=Xd}if((Zd|0)>=(q|0)){if(!Yd){Hd=na;Id=oa;Jd=pa;Kd=qa;Ld=ra;Md=ua;Nd=_d;break}k[_d>>2]=q;k[_d+4>>2]=0;Hd=na;Id=oa;Jd=pa;Kd=qa;Ld=ra;Md=ua;Nd=_d+8|0;break}if(!(_d-oa&4))$d=_d;else{k[_d>>2]=0;$d=_d+4|0}k[$d>>2]=q-((Zd|0)<0?0:Zd);Hd=na;Id=oa;Jd=pa;Kd=qa;Ld=ra;Md=ua;Nd=$d+4|0}}while(0);do if((Kd|0)<13){if(Md>>>0>=F>>>0){ae=Jd;be=(Kd|0)==0?0:13;ce=Md;break}N=Md+1|0;M=(l[s+(l[Md>>0]|0)>>0]|0)<<Kd|Jd;L=Kd+8|0;if((L|0)<13)if(N>>>0<F>>>0){ae=(l[s+(l[N>>0]|0)>>0]|0)<<L|M;be=Kd+16|0;ce=Md+2|0}else{ae=M;be=13;ce=N}else{ae=M;be=L;ce=N}}else{ae=Jd;be=Kd;ce=Md}while(0);Ab[k[O>>2]&31](Hd,Id,Nd,q);k[x>>2]=be+-13;k[v>>2]=ae>>>13;k[z>>2]=Ld;k[D>>2]=(k[B>>2]|0)-ce+(k[D>>2]|0);k[B>>2]=ce;u=(k[J>>2]|0)!=0?1:-1;r=d;return u|0}else{Rd=C;Sd=E;Td=w;Ud=y;Vd=A;Wd=C}while(0);k[x>>2]=Ud;k[v>>2]=Td;k[z>>2]=Vd;k[D>>2]=Rd-Wd+Sd;k[B>>2]=Wd;u=1;r=d;return u|0}function vf(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;d=r;r=r+16|0;e=k[a+576>>2]|0;f=e+8|0;if((c|0)%(k[f>>2]|0)|0){vc(k[a+628>>2]|0,143192,143203,d);g=0;r=d;return g|0}if((c|0)<=0){g=1;r=d;return g|0}h=e+80|0;i=e+12|0;e=b;b=c;while(1){zf(a,e,k[h>>2]|0,k[i>>2]|0);qe(k[h>>2]|0,e,k[f>>2]|0);c=k[f>>2]|0;b=b-c|0;if((b|0)<=0){g=1;break}else e=e+c|0}r=d;return g|0}function wf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=k[a+576>>2]|0;yf(a,1,12);yf(a,1,12);c=b+52|0;if((k[c>>2]|0)==8)return 1;d=a+608|0;if((k[d>>2]|0)>=(k[a+592>>2]|0))je(a)|0;e=b+48|0;b=k[e>>2]&255;f=a+604|0;a=k[f>>2]|0;k[f>>2]=a+1;i[a>>0]=b;k[d>>2]=(k[d>>2]|0)+1;k[e>>2]=0;k[c>>2]=8;return 1}function xf(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,m=0,n=0,o=0,p=0,q=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,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,Bb=0,Cb=0,Db=0,Eb=0,Fb=0;d=r;r=r+112|0;e=d+80|0;f=d+56|0;g=d+40|0;h=d+24|0;i=d+8|0;j=k[a+576>>2]|0;m=k[j+12>>2]|0;n=k[j+44>>2]|0;o=k[j+4>>2]|0;p=j+8|0;if((c|0)%(k[p>>2]|0)|0){vc(k[a+628>>2]|0,142982,153793,d);q=-1;r=d;return q|0}s=j+48|0;t=k[s>>2]|0;u=j+52|0;v=k[u>>2]|0;w=j+56|0;x=k[w>>2]|0;y=a+604|0;z=k[y>>2]|0;A=a+608|0;B=k[A>>2]|0;C=z+B|0;D=k[j+72>>2]|0;do if((c|0)>0){E=j+92|0;F=a+628|0;G=a+12|0;H=a+492|0;I=a+452|0;J=j+60|0;K=(o&4|0)==0;L=(o&8|0)==0;M=D;N=b;O=c;P=t;Q=v;R=x;S=z;a:while(1){T=P;U=Q;V=0;W=S;X=D;b:while(1){Y=T;Z=U;_=0;$=V;aa=W;c:while(1){do if((Z|0)<12){if(aa>>>0>=C>>>0)if(!Z){ba=N;ca=Y;da=R;ea=_;fa=$;ga=aa;ha=X;break a}else{ia=Y;ja=12;ka=aa;break}la=aa+1|0;ma=(l[n+(l[aa>>0]|0)>>0]|0)<<Z|Y;na=Z+8|0;if((na|0)<12)if(la>>>0<C>>>0){ia=(l[n+(l[la>>0]|0)>>0]|0)<<na|ma;ja=Z+16|0;ka=aa+2|0}else{ia=ma;ja=12;ka=la}else{ia=ma;ja=na;ka=la}}else{ia=Y;ja=Z;ka=aa}while(0);la=ia&4095;na=l[9304+(la<<3)+1>>0]|0;ma=ja-na|0;oa=ia>>>na;switch(l[9304+(la<<3)>>0]|0|0){case 12:{pa=oa;qa=ma;ra=1;sa=_;ta=$;ua=ka;va=X;wa=39;break b;break}case 7:{xa=la;ya=ma;za=oa;Aa=_;Ba=$;Ca=ka;break c;break}case 11:case 9:break;default:{Da=ma;Ea=oa;Fa=_;Ga=$;Ha=ka;Ia=X;wa=16;break b}}na=k[9304+(la<<3)+4>>2]|0;Y=oa;Z=ma;_=na+_|0;$=na+$|0;aa=ka}aa=k[9304+(xa<<3)+4>>2]|0;$=aa+Aa|0;_=X+4|0;k[X>>2]=$;Z=aa+Ba|0;if((Z|0)<(m|0)){Ja=za;Ka=ya;La=0;Ma=Z;Na=Ca}else{Oa=za;Pa=ya;Qa=R;Ra=Z;Sa=Ca;Ta=_;break}d:while(1){do if((Ka|0)<13){if(Na>>>0>=C>>>0)if(!Ka){ba=N;ca=Ja;da=R;ea=La;fa=Ma;ga=Na;ha=_;break a}else{Ua=Ja;Va=13;Wa=Na;break}Z=Na+1|0;aa=(l[n+(l[Na>>0]|0)>>0]|0)<<Ka|Ja;Y=Ka+8|0;if((Y|0)<13)if(Z>>>0<C>>>0){Ua=(l[n+(l[Z>>0]|0)>>0]|0)<<Y|aa;Va=Ka+16|0;Wa=Na+2|0}else{Ua=aa;Va=13;Wa=Z}else{Ua=aa;Va=Y;Wa=Z}}else{Ua=Ja;Va=Ka;Wa=Na}while(0);Z=Ua&8191;Y=l[42072+(Z<<3)+1>>0]|0;aa=Va-Y|0;na=Ua>>>Y;switch(l[42072+(Z<<3)>>0]|0|0){case 12:{pa=na;qa=aa;ra=1;sa=La;ta=Ma;ua=Wa;va=_;wa=39;break b;break}case 8:{Xa=Z;Ya=aa;Za=na;_a=La;$a=Ma;ab=Wa;break d;break}case 11:case 10:break;default:{bb=aa;cb=na;db=_;eb=La;fb=Ma;gb=Wa;wa=26;break b}}Y=k[42072+(Z<<3)+4>>2]|0;Ja=na;Ka=aa;La=Y+La|0;Ma=Y+Ma|0;Na=Wa}Y=k[42072+(Xa<<3)+4>>2]|0;aa=Y+_a|0;na=X+8|0;k[_>>2]=aa;Z=Y+$a|0;if((Z|0)>=(m|0)){Oa=Za;Pa=Ya;Qa=R;Ra=Z;Sa=ab;Ta=na;break}T=Za;U=Ya;V=Z;W=ab;X=(aa|$|0)==0?X:na}if((wa|0)==16){wa=0;X=k[F>>2]|0;W=(k[G>>2]&1024|0)!=0;V=k[(W?H:I)>>2]|0;k[i>>2]=k[E>>2];k[i+4>>2]=W?142996:143001;k[i+8>>2]=V;k[i+12>>2]=Ga;vc(X,142982,143007,i);pa=Ea;qa=Da;ra=R;sa=Fa;ta=Ga;ua=Ha;va=Ia;wa=39}else if((wa|0)==26){wa=0;X=k[F>>2]|0;V=(k[G>>2]&1024|0)!=0;W=k[(V?H:I)>>2]|0;k[h>>2]=k[E>>2];k[h+4>>2]=V?142996:143001;k[h+8>>2]=W;k[h+12>>2]=fb;vc(X,142982,143007,h);pa=cb;qa=bb;ra=R;sa=eb;ta=fb;ua=gb;va=db;wa=39}if((wa|0)==39){wa=0;if(!sa){Oa=pa;Pa=qa;Qa=ra;Ra=ta;Sa=ua;Ta=va}else{k[va>>2]=sa;Oa=pa;Pa=qa;Qa=ra;Ra=ta;Sa=ua;Ta=va+4|0}}do if((Ra|0)==(m|0))hb=Ta;else{X=k[E>>2]|0;W=k[F>>2]|0;V=(k[G>>2]&1024|0)!=0;U=k[(V?H:I)>>2]|0;k[e>>2]=Ra>>>0<m>>>0?143089:143103;k[e+4>>2]=X;k[e+8>>2]=V?142996:143001;k[e+12>>2]=U;k[e+16>>2]=Ra;k[e+20>>2]=m;ie(W,142982,143124,e);W=(Ra|0)>(m|0);if(Ta>>>0>D>>>0&W){U=Ra;V=Ta;while(1){X=V+-4|0;T=U-(k[X>>2]|0)|0;na=(T|0)>(m|0);if(X>>>0>D>>>0&na){U=T;V=X}else{ib=na;jb=T;kb=X;break}}}else{ib=W;jb=Ra;kb=Ta}if((jb|0)>=(m|0)){if(!ib){hb=kb;break}k[kb>>2]=m;k[kb+4>>2]=0;hb=kb+8|0;break}if(!(kb-M&4))lb=kb;else{k[kb>>2]=0;lb=kb+4|0}k[lb>>2]=m-((jb|0)<0?0:jb);hb=lb+4|0}while(0);Ab[k[J>>2]&31](N,D,hb,m);if(K)if(!L){V=Pa&-16;U=Oa>>>(Pa-V|0);if(!V){mb=U;nb=0;ob=(Sa&1|0)==0?Sa:Sa+1|0}else{mb=U;nb=V;ob=Sa}}else{mb=Oa;nb=Pa;ob=Sa}else{V=Pa&-8;mb=Oa>>>(Pa-V|0);nb=V;ob=Sa}V=k[p>>2]|0;O=O-V|0;k[E>>2]=(k[E>>2]|0)+1;if((O|0)<=0){pb=mb;qb=nb;rb=Qa;sb=ob;wa=57;break}else{N=N+V|0;P=mb;Q=nb;R=Qa;S=ob}}if((wa|0)==57){tb=k[y>>2]|0;ub=k[A>>2]|0;vb=pb;wb=qb;xb=rb;yb=sb;break}S=k[F>>2]|0;R=(k[G>>2]&1024|0)!=0;Q=k[(R?H:I)>>2]|0;k[g>>2]=k[E>>2];k[g+4>>2]=R?142996:143001;k[g+8>>2]=Q;k[g+12>>2]=fa;ie(S,142982,143048,g);if(!ea)zb=ha;else{k[ha>>2]=ea;zb=ha+4|0}do if((fa|0)==(m|0))Bb=zb;else{S=k[E>>2]|0;Q=k[F>>2]|0;R=(k[G>>2]&1024|0)!=0;P=k[(R?H:I)>>2]|0;k[f>>2]=fa>>>0<m>>>0?143089:143103;k[f+4>>2]=S;k[f+8>>2]=R?142996:143001;k[f+12>>2]=P;k[f+16>>2]=fa;k[f+20>>2]=m;ie(Q,142982,143124,f);Q=(fa|0)>(m|0);if(zb>>>0>D>>>0&Q){P=fa;R=zb;while(1){S=R+-4|0;N=P-(k[S>>2]|0)|0;O=(N|0)>(m|0);if(S>>>0>D>>>0&O){P=N;R=S}else{Cb=O;Db=N;Eb=S;break}}}else{Cb=Q;Db=fa;Eb=zb}if((Db|0)>=(m|0)){if(!Cb){Bb=Eb;break}k[Eb>>2]=m;k[Eb+4>>2]=0;Bb=Eb+8|0;break}if(!(Eb-M&4))Fb=Eb;else{k[Eb>>2]=0;Fb=Eb+4|0}k[Fb>>2]=m-((Db|0)<0?0:Db);Bb=Fb+4|0}while(0);Ab[k[J>>2]&31](ba,D,Bb,m);k[u>>2]=0;k[s>>2]=ca;k[w>>2]=da;k[A>>2]=(k[y>>2]|0)-ga+(k[A>>2]|0);k[y>>2]=ga;q=-1;r=d;return q|0}else{tb=z;ub=B;vb=t;wb=v;xb=x;yb=z}while(0);k[u>>2]=wb;k[s>>2]=vb;k[w>>2]=xb;k[A>>2]=tb-yb+ub;k[y>>2]=yb;q=1;r=d;return q|0}function yf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=k[a+576>>2]|0;e=d+52|0;f=k[e>>2]|0;g=d+48|0;d=k[g>>2]|0;if(f>>>0>=c>>>0)if(c>>>0<9){h=c;j=f;l=d}else Ja(143169,142823,609,143180);else{m=a+608|0;n=a+592|0;o=a+604|0;p=c;c=k[m>>2]|0;q=f;f=d;while(1){d=p-q|0;if((c|0)>=(k[n>>2]|0))je(a)|0;r=k[o>>2]|0;k[o>>2]=r+1;i[r>>0]=b>>>d|f;c=(k[m>>2]|0)+1|0;k[m>>2]=c;if(d>>>0<=8){h=d;j=8;l=0;break}else{p=d;q=8;f=0}}}f=j-h|0;q=(k[8064+(h<<2)>>2]&b)<<f|l;if((j|0)!=(h|0)){s=f;t=q;k[g>>2]=t;k[e>>2]=s;return}f=a+608|0;if((k[f>>2]|0)>=(k[a+592>>2]|0))je(a)|0;h=a+604|0;a=k[h>>2]|0;k[h>>2]=a+1;i[a>>0]=q;k[f>>2]=(k[f>>2]|0)+1;s=8;t=0;k[g>>2]=t;k[e>>2]=s;return}function zf(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,j=0,n=0,o=0,p=0,q=0,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;e=i[b>>0]|0;f=(d|0)>0;a:do if(f&e<<24>>24>-1){if((d|0)>63){b:do if(!(b&3)){g=d;h=b;j=0;n=10}else{c:do if(!(e<<24>>24)){o=b;p=d;q=0;while(1){r=q+8|0;p=p+-8|0;o=o+1|0;if(!(o&3)){s=r;t=p;u=o;break}v=i[o>>0]|0;if(v<<24>>24){w=v;x=r;break c}else q=r}if((t|0)>31){g=t;h=u;j=s;n=10;break b}else{y=t;z=u;A=s;break b}}else{w=e;x=0}while(0);B=(l[143242+(w&255)>>0]|0)+x|0;break a}while(0);d:do if((n|0)==10)while(1){n=0;if(k[h>>2]|0){y=g;z=h;A=j;break d}q=j+32|0;o=g+-32|0;p=h+4|0;if((o|0)>31){g=o;h=p;j=q;n=10}else{y=o;z=p;A=q;break}}while(0);C=z;D=y;E=A}else{C=b;D=d;E=0}e:do if((D|0)>7){q=C;p=D;o=E;while(1){r=i[q>>0]|0;if(r<<24>>24){F=r;G=o;break}r=o+8|0;v=p+-8|0;H=q+1|0;if((v|0)>7){q=H;p=v;o=r}else{I=H;J=v;K=r;break e}}B=(l[143242+(F&255)>>0]|0)+G|0;break a}else{I=C;J=D;K=E}while(0);if((J|0)>0){o=l[143242+(l[I>>0]|0)>>0]|0;B=((o|0)>(J|0)?J:o)+K|0}else B=K}else B=0;while(0);K=i[c>>0]|0;f:do if(f&K<<24>>24>-1){if((d|0)>63){g:do if(!(c&3)){L=d;M=c;N=0;n=28}else{h:do if(!(K<<24>>24)){J=c;I=d;E=0;while(1){D=E+8|0;I=I+-8|0;J=J+1|0;if(!(J&3)){O=D;P=I;Q=J;break}C=i[J>>0]|0;if(C<<24>>24){R=C;S=D;break h}else E=D}if((P|0)>31){L=P;M=Q;N=O;n=28;break g}else{T=P;U=Q;V=O;break g}}else{R=K;S=0}while(0);W=(l[143242+(R&255)>>0]|0)+S|0;break f}while(0);i:do if((n|0)==28)while(1){n=0;if(k[M>>2]|0){T=L;U=M;V=N;break i}E=N+32|0;J=L+-32|0;I=M+4|0;if((J|0)>31){L=J;M=I;N=E;n=28}else{T=J;U=I;V=E;break}}while(0);X=U;Y=T;Z=V}else{X=c;Y=d;Z=0}j:do if((Y|0)>7){E=X;I=Y;J=Z;while(1){D=i[E>>0]|0;if(D<<24>>24){_=D;$=J;break}D=J+8|0;C=I+-8|0;G=E+1|0;if((C|0)>7){E=G;I=C;J=D}else{aa=G;ba=C;ca=D;break j}}W=(l[143242+(_&255)>>0]|0)+$|0;break f}else{aa=X;ba=Y;ca=Z}while(0);if((ba|0)>0){J=l[143242+(l[aa>>0]|0)>>0]|0;W=((J|0)>(ba|0)?ba:J)+ca|0}else W=ca}else W=0;while(0);ca=a+576|0;ba=a+608|0;aa=a+592|0;Z=a+604|0;Y=0;X=B;B=W;while(1){if(B>>>0<d>>>0){if(!((l[c+(B>>>3)>>0]|0)&1<<(B&7^7)))da=Bf(c,B,d)|0;else da=Af(c,B,d)|0;ea=da+B|0}else ea=d;do if(ea>>>0<X>>>0){W=k[ca>>2]|0;$=W+52|0;_=k[$>>2]|0;V=W+48|0;W=k[V>>2]|0;if(_>>>0<4){T=4;U=k[ba>>2]|0;n=_;N=W;while(1){M=T-n|0;if((U|0)>=(k[aa>>2]|0))je(a)|0;L=k[Z>>2]|0;k[Z>>2]=L+1;i[L>>0]=1>>>M|N;U=(k[ba>>2]|0)+1|0;k[ba>>2]=U;if(M>>>0<=8){fa=M;ga=8;ha=0;break}else{T=M;n=8;N=0}}}else{fa=4;ga=_;ha=W}N=ga-fa|0;n=(k[8064+(fa<<2)>>2]&1)<<N|ha;if((ga|0)==(fa|0)){if((k[ba>>2]|0)>=(k[aa>>2]|0))je(a)|0;T=k[Z>>2]|0;k[Z>>2]=T+1;i[T>>0]=n;k[ba>>2]=(k[ba>>2]|0)+1;ia=8;ja=0}else{ia=N;ja=n}k[V>>2]=ja;k[$>>2]=ia;ka=ea}else{n=B-X+3|0;if(n>>>0<7){yf(a,m[125028+(n*6|0)+2>>1]|0,m[125028+(n*6|0)>>1]|0);ka=X;break}if(X>>>0<d>>>0){if(!((l[b+(X>>>3)>>0]|0)&1<<(X&7^7)))la=Bf(b,X,d)|0;else la=Af(b,X,d)|0;ma=la+X|0}else ma=d;n=k[ca>>2]|0;N=n+52|0;T=k[N>>2]|0;U=n+48|0;n=k[U>>2]|0;if(T>>>0<3){M=3;L=k[ba>>2]|0;S=T;R=n;while(1){K=M-S|0;if((L|0)>=(k[aa>>2]|0))je(a)|0;O=k[Z>>2]|0;k[Z>>2]=O+1;i[O>>0]=1>>>K|R;L=(k[ba>>2]|0)+1|0;k[ba>>2]=L;if(K>>>0<=8){na=K;oa=8;pa=0;break}else{M=K;S=8;R=0}}}else{na=3;oa=T;pa=n}R=oa-na|0;S=(k[8064+(na<<2)>>2]&1)<<R|pa;if((oa|0)==(na|0)){if((k[ba>>2]|0)>=(k[aa>>2]|0))je(a)|0;M=k[Z>>2]|0;k[Z>>2]=M+1;i[M>>0]=S;k[ba>>2]=(k[ba>>2]|0)+1;qa=8;ra=0}else{qa=R;ra=S}k[U>>2]=ra;k[N>>2]=qa;if((Y|0)!=(0-X|0)?((l[b+(Y>>>3)>>0]|0)&1<<(Y&7^7)|0)!=0:0){Cf(a,X-Y|0,124374);Cf(a,ma-X|0,123720);ka=ma;break}Cf(a,X-Y|0,123720);Cf(a,ma-X|0,124374);ka=ma}while(0);if(ka>>>0>=d>>>0)break;if(!((l[b+(ka>>>3)>>0]|0)&1<<(ka&7^7))){S=Bf(b,ka,d)|0;R=(Af(c,ka,d)|0)+ka|0;sa=S;ta=Bf(c,R,d)|0;ua=R}else{R=Af(b,ka,d)|0;S=(Bf(c,ka,d)|0)+ka|0;sa=R;ta=Af(c,S,d)|0;ua=S}Y=ka;X=sa+ka|0;B=ta+ua|0}return}function Af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,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;d=c-b|0;c=b>>3;e=a+c|0;if((d|0)<=0){f=0;return f|0}g=b&7;do if(g){b=l[143533+((l[e>>0]|0)<<g&255)>>0]|0;h=8-g|0;j=b>>>0>h>>>0?h:b;b=(j|0)>(d|0)?d:j;if((b+g|0)<8){f=b;return f|0}else{m=a+(c+1)|0;n=d-b|0;o=b;break}}else{m=e;n=d;o=0}while(0);if((n|0)>63){do if(!(m&3)){p=n;q=m;r=o;s=12}else{d=m;e=n;c=o;while(1){a=i[d>>0]|0;if(a<<24>>24!=-1){t=a;u=c;break}a=c+8|0;g=e+-8|0;b=d+1|0;if(!(b&3)){v=a;w=g;x=b;s=11;break}else{d=b;e=g;c=a}}if((s|0)==11)if((w|0)>31){p=w;q=x;r=v;s=12;break}else{y=w;z=x;A=v;break}f=(l[143533+(t&255)>>0]|0)+u|0;return f|0}while(0);a:do if((s|0)==12)while(1){s=0;if((k[q>>2]|0)!=-1){y=p;z=q;A=r;break a}u=r+32|0;t=p+-32|0;v=q+4|0;if((t|0)>31){p=t;q=v;r=u;s=12}else{y=t;z=v;A=u;break}}while(0);B=z;C=y;D=A}else{B=m;C=n;D=o}b:do if((C|0)>7){o=B;n=C;m=D;while(1){A=i[o>>0]|0;if(A<<24>>24!=-1){E=A;F=m;break}A=m+8|0;y=n+-8|0;z=o+1|0;if((y|0)>7){o=z;n=y;m=A}else{G=z;H=y;I=A;break b}}f=(l[143533+(E&255)>>0]|0)+F|0;return f|0}else{G=B;H=C;I=D}while(0);if((H|0)<=0){f=I;return f|0}D=l[143533+(l[G>>0]|0)>>0]|0;f=((D|0)>(H|0)?H:D)+I|0;return f|0}function Bf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,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;d=c-b|0;c=b>>3;e=a+c|0;if((d|0)<=0){f=0;return f|0}g=b&7;do if(g){b=l[143242+((l[e>>0]|0)<<g&255)>>0]|0;h=8-g|0;j=b>>>0>h>>>0?h:b;b=(j|0)>(d|0)?d:j;if((b+g|0)<8){f=b;return f|0}else{m=a+(c+1)|0;n=d-b|0;o=b;break}}else{m=e;n=d;o=0}while(0);if((n|0)>63){do if(!(m&3)){p=n;q=m;r=o;s=12}else{d=m;e=n;c=o;while(1){a=i[d>>0]|0;if(a<<24>>24){t=a;u=c;break}a=c+8|0;g=e+-8|0;b=d+1|0;if(!(b&3)){v=a;w=g;x=b;s=11;break}else{d=b;e=g;c=a}}if((s|0)==11)if((w|0)>31){p=w;q=x;r=v;s=12;break}else{y=w;z=x;A=v;break}f=(l[143242+(t&255)>>0]|0)+u|0;return f|0}while(0);a:do if((s|0)==12)while(1){s=0;if(k[q>>2]|0){y=p;z=q;A=r;break a}u=r+32|0;t=p+-32|0;v=q+4|0;if((t|0)>31){p=t;q=v;r=u;s=12}else{y=t;z=v;A=u;break}}while(0);B=z;C=y;D=A}else{B=m;C=n;D=o}b:do if((C|0)>7){o=B;n=C;m=D;while(1){A=i[o>>0]|0;if(A<<24>>24){E=A;F=m;break}A=m+8|0;y=n+-8|0;z=o+1|0;if((y|0)>7){o=z;n=y;m=A}else{G=z;H=y;I=A;break b}}f=(l[143242+(E&255)>>0]|0)+F|0;return f|0}else{G=B;H=C;I=D}while(0);if((H|0)<=0){f=I;return f|0}D=l[143242+(l[G>>0]|0)>>0]|0;f=((D|0)>(H|0)?H:D)+I|0;return f|0}function Cf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,p=0,q=0,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;d=k[a+576>>2]|0;e=d+52|0;f=k[e>>2]|0;g=d+48|0;d=k[g>>2]|0;a:do if((b|0)>2623){h=c+620|0;l=c+618|0;n=a+608|0;o=a+592|0;p=a+604|0;q=c+622|0;r=b;s=f;t=d;while(1){u=m[h>>1]|0;v=j[l>>1]|0;w=v&65535;if(w>>>0<=s>>>0)if((v&65535)<9){x=s;y=t;z=w}else break;else{v=k[n>>2]|0;A=s;B=t;C=w;while(1){w=C-A|0;if((v|0)>=(k[o>>2]|0))je(a)|0;D=k[p>>2]|0;k[p>>2]=D+1;i[D>>0]=u>>>w|B;v=(k[n>>2]|0)+1|0;k[n>>2]=v;if(w>>>0<=8){x=8;y=0;z=w;break}else{A=8;B=0;C=w}}}C=x-z|0;B=(k[8064+(z<<2)>>2]&u)<<C|y;if((x|0)==(z|0)){if((k[n>>2]|0)>=(k[o>>2]|0))je(a)|0;A=k[p>>2]|0;k[p>>2]=A+1;i[A>>0]=B;k[n>>2]=(k[n>>2]|0)+1;E=8;F=0}else{E=C;F=B}B=r-(j[q>>1]|0)|0;if((B|0)>2623){r=B;s=E;t=F}else{G=B;H=E;I=F;break a}}Ja(143169,142823,651,143498)}else{G=b;H=f;I=d}while(0);if((G|0)>63){d=G>>6;f=d+63|0;b=c+(f*6|0)+4|0;if((j[b>>1]|0)!=(d<<6|0))Ja(143506,142823,656,143498);d=m[c+(f*6|0)+2>>1]|0;F=j[c+(f*6|0)>>1]|0;f=F&65535;if(f>>>0<=H>>>0)if((F&65535)<9){J=H;K=I;L=f}else Ja(143169,142823,661,143498);else{F=a+608|0;E=a+592|0;z=a+604|0;x=k[F>>2]|0;y=H;t=I;s=f;while(1){f=s-y|0;if((x|0)>=(k[E>>2]|0))je(a)|0;r=k[z>>2]|0;k[z>>2]=r+1;i[r>>0]=d>>>f|t;x=(k[F>>2]|0)+1|0;k[F>>2]=x;if(f>>>0<=8){J=8;K=0;L=f;break}else{y=8;t=0;s=f}}}s=J-L|0;t=(k[8064+(L<<2)>>2]&d)<<s|K;if((J|0)==(L|0)){L=a+608|0;if((k[L>>2]|0)>=(k[a+592>>2]|0))je(a)|0;J=a+604|0;K=k[J>>2]|0;k[J>>2]=K+1;i[K>>0]=t;k[L>>2]=(k[L>>2]|0)+1;M=8;N=0}else{M=s;N=t}O=G-(j[b>>1]|0)|0;P=M;Q=N}else{O=G;P=H;Q=I}I=m[c+(O*6|0)+2>>1]|0;H=j[c+(O*6|0)>>1]|0;O=H&65535;if(O>>>0<=P>>>0)if((H&65535)<9){R=P;S=Q;T=O}else Ja(143169,142823,668,143498);else{H=a+608|0;c=a+592|0;G=a+604|0;N=k[H>>2]|0;M=P;P=Q;Q=O;while(1){O=Q-M|0;if((N|0)>=(k[c>>2]|0))je(a)|0;b=k[G>>2]|0;k[G>>2]=b+1;i[b>>0]=I>>>O|P;N=(k[H>>2]|0)+1|0;k[H>>2]=N;if(O>>>0<=8){R=8;S=0;T=O;break}else{M=8;P=0;Q=O}}}Q=R-T|0;P=(k[8064+(T<<2)>>2]&I)<<Q|S;if((R|0)!=(T|0)){U=Q;V=P;k[g>>2]=V;k[e>>2]=U;return}Q=a+608|0;if((k[Q>>2]|0)>=(k[a+592>>2]|0))je(a)|0;T=a+604|0;a=k[T>>2]|0;k[T>>2]=a+1;i[a>>0]=P;k[Q>>2]=(k[Q>>2]|0)+1;U=8;V=0;k[g>>2]=V;k[e>>2]=U;return}function Df(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=k[a+576>>2]|0;if(!d)Ja(154168,142823,1199,144538);a:do if((b|0)>=327)if((b|0)<65536)switch(b|0){case 327:{e=j[d+16>>1]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;j[g>>1]=e;h=1;return h|0}case 328:{e=k[d+20>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);f=k[g>>2]|0;k[c>>2]=g+4;k[f>>2]=e;h=1;return h|0}default:break a}else switch(b|0){case 65536:{e=k[d+4>>2]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[g>>2]=e;h=1;return h|0}case 65540:{e=k[d+60>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);f=k[g>>2]|0;k[c>>2]=g+4;k[f>>2]=e;h=1;return h|0}default:break a}else switch(b|0){case 293:case 292:{e=k[d+28>>2]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);g=k[f>>2]|0;k[c>>2]=f+4;k[g>>2]=e;h=1;return h|0}case 326:{e=k[d+24>>2]|0;g=(k[c>>2]|0)+(4-1)&~(4-1);f=k[g>>2]|0;k[c>>2]=g+4;k[f>>2]=e;h=1;return h|0}default:break a}while(0);h=nb[k[d+32>>2]&63](a,b,c)|0;return h|0}function Ef(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0;d=a+576|0;e=k[d>>2]|0;if(!e)Ja(154168,142823,1152,144504);f=k[e+36>>2]|0;if(!f)Ja(144518,142823,1153,144504);a:do if((b|0)<327)switch(b|0){case 292:{if((j[a+88>>1]|0)!=3)break a;g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;k[e+28>>2]=h;break a;break}case 293:{if((j[a+88>>1]|0)!=4)break a;h=(k[c>>2]|0)+(4-1)&~(4-1);g=k[h>>2]|0;k[c>>2]=h+4;k[e+28>>2]=g;break a;break}case 326:{g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;k[e+24>>2]=h;break a;break}default:{i=15;break a}}else{if((b|0)<65536)switch(b|0){case 327:{h=(k[c>>2]|0)+(4-1)&~(4-1);g=k[h>>2]|0;k[c>>2]=h+4;j[e+16>>1]=g;break a;break}case 328:{g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;k[e+20>>2]=h;break a;break}default:{i=15;break a}}switch(b|0){case 65536:{h=(k[c>>2]|0)+(4-1)&~(4-1);g=k[h>>2]|0;k[c>>2]=h+4;k[e+4>>2]=g;l=1;return l|0}case 65540:{g=(k[c>>2]|0)+(4-1)&~(4-1);h=k[g>>2]|0;k[c>>2]=g+4;k[(k[d>>2]|0)+60>>2]=h;l=1;return l|0}default:{i=15;break a}}}while(0);if((i|0)==15){l=nb[f&63](a,b,c)|0;return l|0}c=cc(a,b)|0;if(!c){l=0;return l|0}b=j[c+24>>1]|0;c=a+40+(((b&65535)>>>5&65535)<<2)|0;k[c>>2]=1<<(b&31)|k[c>>2];c=a+12|0;k[c>>2]=k[c>>2]|8;l=1;return l|0}function Ff(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;d=r;r=r+64|0;e=d+56|0;f=d+48|0;g=d+40|0;h=d+32|0;i=d+24|0;l=d+16|0;n=d+8|0;o=d;p=k[a+576>>2]|0;if(!p)Ja(154168,142823,1232,144253);q=a+48|0;s=k[q>>2]|0;if(!(s&512))t=s;else{if((j[a+88>>1]|0)==4){zq(144266,18,1,b)|0;s=p+28|0;if(!(k[s>>2]&2))u=s;else{k[o>>2]=144305;wq(b,144285,o)|0;u=s}}else{zq(144307,18,1,b)|0;s=p+28|0;o=k[s>>2]|0;if(!(o&1)){v=o;w=144305}else{k[n>>2]=144305;wq(b,144326,n)|0;v=k[s>>2]|0;w=144341}if(!(v&4)){x=v;y=w}else{k[l>>2]=w;wq(b,144343,l)|0;x=k[s>>2]|0;y=144341}if(!(x&2))u=s;else{k[i>>2]=y;wq(b,144285,i)|0;u=s}}s=k[u>>2]|0;k[h>>2]=s;k[h+4>>2]=s;wq(b,144357,h)|0;t=k[q>>2]|0}if(!(t&8))z=t;else{zq(144373,11,1,b)|0;t=p+16|0;switch(m[t>>1]|0){case 0:{zq(144385,6,1,b)|0;break}case 1:{zq(144392,21,1,b)|0;break}case 2:{zq(144414,19,1,b)|0;break}default:{}}h=m[t>>1]|0;k[g>>2]=h;k[g+4>>2]=h;wq(b,144434,g)|0;z=k[q>>2]|0}if(!(z&4))A=z;else{k[f>>2]=k[p+24>>2];wq(b,144448,f)|0;A=k[q>>2]|0}if(A&16){k[e>>2]=k[p+20>>2];wq(b,144470,e)|0}e=k[p+40>>2]|0;if(!e){r=d;return}vb[e&127](a,b,c);r=d;return}function Gf(a){a=a|0;return 1}function Hf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;b=r;r=r+32|0;c=b+16|0;d=b+8|0;e=a+576|0;f=k[e>>2]|0;if((j[a+84>>1]|0)!=1){vc(k[a+628>>2]|0,144065,144080,b);g=0;r=b;return g|0}if(!(k[a+12>>2]&1024)){h=Pd(a)|0;i=a+56|0}else{h=de(a)|0;i=a+68|0}l=k[i>>2]|0;k[f+8>>2]=h;k[f+12>>2]=l;i=f+28|0;if(!(k[i>>2]&1)){m=(j[a+88>>1]|0)==4;n=f+64|0;k[n>>2]=0;o=l>>>0<4294967264?l+31&-32:0;if(m){p=o;q=n;s=n;t=9}else{u=n;v=n;w=0;x=o;t=10}}else{o=f+64|0;k[o>>2]=0;p=l>>>0<4294967264?l+31&-32:0;q=o;s=o;t=9}if((t|0)==9?(p&2147483616|0)==(p|0):0){u=s;v=q;w=1;x=p<<1;t=10}if(((t|0)==10?(x|0)!=0:0)?(t=x<<1,!((t|0)==0|(x&2147483647|0)!=(x|0))):0){p=Ee(a,t,4,144177)|0;k[u>>2]=p;if(!p){g=0;r=b;return g|0}qr(p|0,0,x<<3|0)|0;k[f+72>>2]=k[u>>2];if(w)k[f+68>>2]=(k[v>>2]|0)+(x<<2);else k[f+68>>2]=0;if((j[a+88>>1]|0)==3?(k[i>>2]&1|0)!=0:0){k[a+532>>2]=19;k[a+540>>2]=19;k[a+548>>2]=19}i=k[e>>2]|0;if(!w){k[i+80>>2]=0;g=1;r=b;return g|0}w=me(h)|0;k[i+80>>2]=w;if(w){g=1;r=b;return g|0}vc(k[a+628>>2]|0,144065,144202,c);g=0;r=b;return g|0}c=k[a+628>>2]|0;w=k[a>>2]|0;k[d>>2]=l;vc(c,w,144134,d);g=0;r=b;return g|0}function If(a,b){a=a|0;b=b|0;var c=0,d=0;b=k[a+576>>2]|0;if(!b)Ja(154187,142823,152,144051);k[b+52>>2]=0;k[b+48>>2]=0;k[b+56>>2]=0;c=Zd((j[a+94>>1]|0)!=2&1)|0;k[b+44>>2]=c;c=k[b+68>>2]|0;if(!c){d=b+92|0;k[d>>2]=0;return 1}k[c>>2]=k[b+12>>2];k[c+4>>2]=0;d=b+92|0;k[d>>2]=0;return 1}function Jf(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,m=0,n=0,o=0,p=0,q=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,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,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;d=r;r=r+128|0;e=d+104|0;f=d+80|0;g=d+56|0;h=d+40|0;i=d+24|0;j=d+8|0;m=k[a+576>>2]|0;n=k[m+12>>2]|0;o=k[m+44>>2]|0;p=m+8|0;if((c|0)%(k[p>>2]|0)|0){vc(k[a+628>>2]|0,144038,153793,d);q=-1;r=d;return q|0}s=m+48|0;t=k[s>>2]|0;u=m+52|0;v=k[u>>2]|0;w=m+56|0;x=k[w>>2]|0;y=a+604|0;z=k[y>>2]|0;A=a+608|0;B=k[A>>2]|0;C=z+B|0;D=k[m+72>>2]|0;a:do if((c|0)>0){E=m+92|0;F=a+628|0;G=a+12|0;H=a+492|0;I=a+452|0;J=m+60|0;K=D;L=b;M=c;N=t;O=v;P=x;Q=z;b:while(1){c:do if(!P){R=N;S=O;T=Q;while(1){do if((S|0)<11){if(T>>>0>=C>>>0)if(!S){U=L;V=R;W=0;X=T;Y=67;break b}else{Z=R;_=11;$=T;break}aa=T+1|0;ba=(l[o+(l[T>>0]|0)>>0]|0)<<S|R;ca=S+8|0;if((ca|0)<11)if(aa>>>0<C>>>0){Z=(l[o+(l[aa>>0]|0)>>0]|0)<<ca|ba;_=S+16|0;$=T+2|0}else{Z=ba;_=11;$=aa}else{Z=ba;_=ca;$=aa}}else{Z=R;_=S;$=T}while(0);if(!(Z&2047)){da=Z;ea=_;fa=$;break c}R=Z>>>1;S=_+-1|0;T=$}}else{da=N;ea=O;fa=Q}while(0);while(1){do if((ea|0)<8)if(fa>>>0>=C>>>0)if(!ea){U=L;V=da;W=P;X=fa;Y=67;break b}else{ga=da;ha=8;ia=fa;break}else{ga=(l[o+(l[fa>>0]|0)>>0]|0)<<ea|da;ha=ea+8|0;ia=fa+1|0;break}else{ga=da;ha=ea;ia=fa}while(0);if(ga&255){ja=ga;ka=ha;la=ia;break}da=ga>>>8;ea=ha+-8|0;fa=ia}T=ja;S=ka;while(1){R=S+-1|0;aa=T>>>1;if(!(T&1)){T=aa;S=R}else{ma=aa;na=R;oa=0;pa=la;qa=D;break}}d:while(1){S=ma;T=na;R=0;aa=oa;ca=pa;e:while(1){do if((T|0)<12){if(ca>>>0>=C>>>0)if(!T){ra=L;sa=S;ta=R;ua=aa;va=ca;wa=qa;Y=44;break b}else{xa=S;ya=12;za=ca;break}ba=ca+1|0;Aa=(l[o+(l[ca>>0]|0)>>0]|0)<<T|S;Ba=T+8|0;if((Ba|0)<12)if(ba>>>0<C>>>0){xa=(l[o+(l[ba>>0]|0)>>0]|0)<<Ba|Aa;ya=T+16|0;za=ca+2|0}else{xa=Aa;ya=12;za=ba}else{xa=Aa;ya=Ba;za=ba}}else{xa=S;ya=T;za=ca}while(0);ba=xa&4095;Ba=l[9304+(ba<<3)+1>>0]|0;Aa=ya-Ba|0;Ca=xa>>>Ba;switch(l[9304+(ba<<3)>>0]|0|0){case 12:{Da=Ca;Ea=Aa;Fa=1;Ga=R;Ha=aa;Ia=za;Ja=qa;Y=55;break d;break}case 7:{Ka=ba;La=Aa;Ma=Ca;Na=R;Oa=aa;Pa=za;break e;break}case 11:case 9:break;default:{Qa=Aa;Ra=Ca;Sa=R;Ta=aa;Ua=za;Va=qa;Y=32;break d}}Ba=k[9304+(ba<<3)+4>>2]|0;S=Ca;T=Aa;R=Ba+R|0;aa=Ba+aa|0;ca=za}ca=k[9304+(Ka<<3)+4>>2]|0;aa=ca+Na|0;R=qa+4|0;k[qa>>2]=aa;T=ca+Oa|0;if((T|0)<(n|0)){Wa=Ma;Xa=La;Ya=0;Za=T;_a=Pa}else{$a=Ma;ab=La;bb=0;cb=T;db=Pa;eb=R;break}f:while(1){do if((Xa|0)<13){if(_a>>>0>=C>>>0)if(!Xa){ra=L;sa=Wa;ta=Ya;ua=Za;va=_a;wa=R;Y=44;break b}else{fb=Wa;gb=13;hb=_a;break}T=_a+1|0;ca=(l[o+(l[_a>>0]|0)>>0]|0)<<Xa|Wa;S=Xa+8|0;if((S|0)<13)if(T>>>0<C>>>0){fb=(l[o+(l[T>>0]|0)>>0]|0)<<S|ca;gb=Xa+16|0;hb=_a+2|0}else{fb=ca;gb=13;hb=T}else{fb=ca;gb=S;hb=T}}else{fb=Wa;gb=Xa;hb=_a}while(0);T=fb&8191;S=l[42072+(T<<3)+1>>0]|0;ca=gb-S|0;Ba=fb>>>S;switch(l[42072+(T<<3)>>0]|0|0){case 12:{Da=Ba;Ea=ca;Fa=1;Ga=Ya;Ha=Za;Ia=hb;Ja=R;Y=55;break d;break}case 8:{ib=T;jb=ca;kb=Ba;lb=Ya;mb=Za;nb=hb;break f;break}case 11:case 10:break;default:{ob=ca;pb=Ba;qb=R;rb=Ya;sb=Za;tb=hb;Y=42;break d}}S=k[42072+(T<<3)+4>>2]|0;Wa=Ba;Xa=ca;Ya=S+Ya|0;Za=S+Za|0;_a=hb}S=k[42072+(ib<<3)+4>>2]|0;ca=S+lb|0;Ba=qa+8|0;k[R>>2]=ca;T=S+mb|0;if((T|0)>=(n|0)){$a=kb;ab=jb;bb=0;cb=T;db=nb;eb=Ba;break}ma=kb;na=jb;oa=T;pa=nb;qa=(ca|aa|0)==0?qa:Ba}if((Y|0)==32){Y=0;Ba=k[F>>2]|0;ca=(k[G>>2]&1024|0)!=0;T=k[(ca?H:I)>>2]|0;k[j>>2]=k[E>>2];k[j+4>>2]=ca?142996:143001;k[j+8>>2]=T;k[j+12>>2]=Ta;vc(Ba,144038,143007,j);Da=Ra;Ea=Qa;Fa=0;Ga=Sa;Ha=Ta;Ia=Ua;Ja=Va;Y=55}else if((Y|0)==42){Y=0;Ba=k[F>>2]|0;T=(k[G>>2]&1024|0)!=0;ca=k[(T?H:I)>>2]|0;k[i>>2]=k[E>>2];k[i+4>>2]=T?142996:143001;k[i+8>>2]=ca;k[i+12>>2]=sb;vc(Ba,144038,143007,i);Da=pb;Ea=ob;Fa=0;Ga=rb;Ha=sb;Ia=tb;Ja=qb;Y=55}if((Y|0)==55){Y=0;if(!Ga){$a=Da;ab=Ea;bb=Fa;cb=Ha;db=Ia;eb=Ja}else{k[Ja>>2]=Ga;$a=Da;ab=Ea;bb=Fa;cb=Ha;db=Ia;eb=Ja+4|0}}do if((cb|0)==(n|0))ub=eb;else{Ba=k[E>>2]|0;ca=k[F>>2]|0;T=(k[G>>2]&1024|0)!=0;S=k[(T?H:I)>>2]|0;k[f>>2]=cb>>>0<n>>>0?143089:143103;k[f+4>>2]=Ba;k[f+8>>2]=T?142996:143001;k[f+12>>2]=S;k[f+16>>2]=cb;k[f+20>>2]=n;ie(ca,144038,143124,f);ca=(cb|0)>(n|0);if(ca&eb>>>0>D>>>0){S=cb;T=eb;while(1){Ba=T+-4|0;Aa=S-(k[Ba>>2]|0)|0;Ca=(Aa|0)>(n|0);if(Ca&Ba>>>0>D>>>0){S=Aa;T=Ba}else{vb=Ca;wb=Aa;xb=Ba;break}}}else{vb=ca;wb=cb;xb=eb}if((wb|0)>=(n|0)){if(!vb){ub=xb;break}k[xb>>2]=n;k[xb+4>>2]=0;ub=xb+8|0;break}if(!(xb-K&4))yb=xb;else{k[xb>>2]=0;yb=xb+4|0}k[yb>>2]=n-((wb|0)<0?0:wb);ub=yb+4|0}while(0);Ab[k[J>>2]&31](L,D,ub,n);T=k[p>>2]|0;M=M-T|0;k[E>>2]=(k[E>>2]|0)+1;if((M|0)<=0){zb=$a;Bb=ab;Cb=bb;Db=db;Y=71;break}else{L=L+T|0;N=$a;O=ab;P=bb;Q=db}}do if((Y|0)==44){Q=k[F>>2]|0;P=(k[G>>2]&1024|0)!=0;O=k[(P?H:I)>>2]|0;k[h>>2]=k[E>>2];k[h+4>>2]=P?142996:143001;k[h+8>>2]=O;k[h+12>>2]=ua;ie(Q,144038,143048,h);if(!ta)Eb=wa;else{k[wa>>2]=ta;Eb=wa+4|0}if((ua|0)==(n|0)){Fb=ra;Gb=sa;Hb=0;Ib=va;Jb=Eb}else{Q=k[E>>2]|0;O=k[F>>2]|0;P=(k[G>>2]&1024|0)!=0;N=k[(P?H:I)>>2]|0;k[g>>2]=ua>>>0<n>>>0?143089:143103;k[g+4>>2]=Q;k[g+8>>2]=P?142996:143001;k[g+12>>2]=N;k[g+16>>2]=ua;k[g+20>>2]=n;ie(O,144038,143124,g);O=(ua|0)>(n|0);if(O&Eb>>>0>D>>>0){N=ua;P=Eb;while(1){Q=P+-4|0;L=N-(k[Q>>2]|0)|0;M=(L|0)>(n|0);if(M&Q>>>0>D>>>0){N=L;P=Q}else{Kb=M;Lb=L;Mb=Q;break}}}else{Kb=O;Lb=ua;Mb=Eb}if((Lb|0)>=(n|0)){if(!Kb){Fb=ra;Gb=sa;Hb=0;Ib=va;Jb=Mb;break}k[Mb>>2]=n;k[Mb+4>>2]=0;Fb=ra;Gb=sa;Hb=0;Ib=va;Jb=Mb+8|0;break}if(!(Mb-K&4))Nb=Mb;else{k[Mb>>2]=0;Nb=Mb+4|0}k[Nb>>2]=n-((Lb|0)<0?0:Lb);Fb=ra;Gb=sa;Hb=0;Ib=va;Jb=Nb+4|0}}else if((Y|0)==67)if(n){P=k[E>>2]|0;N=k[F>>2]|0;Q=(k[G>>2]&1024|0)!=0;L=k[(Q?H:I)>>2]|0;k[e>>2]=143089;k[e+4>>2]=P;k[e+8>>2]=Q?142996:143001;k[e+12>>2]=L;k[e+16>>2]=0;k[e+20>>2]=n;ie(N,144038,143124,e);N=D+4|0;k[D>>2]=n;if((n|0)>0){Fb=U;Gb=V;Hb=W;Ib=X;Jb=N}else{k[N>>2]=0;Fb=U;Gb=V;Hb=W;Ib=X;Jb=D+8|0}}else{Fb=U;Gb=V;Hb=W;Ib=X;Jb=D}else if((Y|0)==71){Ob=k[y>>2]|0;Pb=k[A>>2]|0;Qb=zb;Rb=Bb;Sb=Cb;Tb=Db;break a}while(0);Ab[k[J>>2]&31](Fb,D,Jb,n);k[u>>2]=0;k[s>>2]=Gb;k[w>>2]=Hb;k[A>>2]=(k[y>>2]|0)-Ib+(k[A>>2]|0);k[y>>2]=Ib;q=-1;r=d;return q|0}else{Ob=z;Pb=B;Qb=t;Rb=v;Sb=x;Tb=z}while(0);k[u>>2]=Rb;k[s>>2]=Qb;k[w>>2]=Sb;k[A>>2]=Ob-Tb+Pb;k[y>>2]=Tb;q=1;r=d;return q|0}function Kf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0.0;b=k[a+576>>2]|0;if(!b)Ja(154187,142823,723,144024);k[b+52>>2]=8;k[b+48>>2]=0;k[b+76>>2]=0;c=k[b+80>>2]|0;if(c)pe(c,0,k[b+8>>2]|0);if(!(k[b+28>>2]&1)){d=0;e=0;f=b+88|0;k[f>>2]=e;g=b+84|0;k[g>>2]=d;h=b+92|0;k[h>>2]=0;return 1}i=+o[a+120>>2];c=((j[a+124>>1]|0)==3?i*2.5399999618530273:i)>150.0?4:2;d=c+-1|0;e=c;f=b+88|0;k[f>>2]=e;g=b+84|0;k[g>>2]=d;h=b+92|0;k[h>>2]=0;return 1}function Lf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=k[a+576>>2]|0;c=b+52|0;if((k[c>>2]|0)==8)return 1;d=a+608|0;if((k[d>>2]|0)>=(k[a+592>>2]|0))je(a)|0;e=b+48|0;b=k[e>>2]&255;f=a+604|0;a=k[f>>2]|0;k[f>>2]=a+1;i[a>>0]=b;k[d>>2]=(k[d>>2]|0)+1;k[e>>2]=0;k[c>>2]=8;return 1}function Mf(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,j=0,l=0,m=0,n=0,o=0,p=0,q=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;d=r;r=r+16|0;e=a+576|0;f=k[e>>2]|0;g=f+8|0;if((c|0)%(k[g>>2]|0)|0){vc(k[a+628>>2]|0,143992,143203,d);h=0;r=d;return h|0}if((c|0)<=0){h=1;r=d;return h|0}j=f+4|0;l=a+608|0;m=a+592|0;n=a+604|0;o=f+28|0;p=f+12|0;q=f+76|0;s=f+84|0;t=f+88|0;u=f+80|0;f=b;b=c;a:while(1){if(!(k[j>>2]&2)){c=k[e>>2]|0;v=c+52|0;w=k[v>>2]|0;x=c+48|0;y=k[x>>2]|0;z=c+28|0;do if(!((w|0)==4|(k[z>>2]&4|0)==0)){A=(w|0)<4?4:-4;B=A+w|0;if(w>>>0>=B>>>0){if(B>>>0>=9){C=14;break a}D=0-A|0;E=y;break}A=k[l>>2]|0;F=w;G=y&255;H=B;while(1){B=H-F|0;if((A|0)>=(k[m>>2]|0))je(a)|0;I=k[n>>2]|0;k[n>>2]=I+1;i[I>>0]=G;I=(k[l>>2]|0)+1|0;k[l>>2]=I;if(B>>>0>8){A=I;F=8;G=0;H=B}else{J=B;K=I;break}}H=8-J|0;if((J|0)==8){if((K|0)>=(k[m>>2]|0))je(a)|0;G=k[n>>2]|0;k[n>>2]=G+1;i[G>>0]=0;k[l>>2]=(k[l>>2]|0)+1;D=8;E=0}else{D=H;E=0}}else{D=w;E=y}while(0);if(!(k[z>>2]&1)){L=1;M=12}else{L=(k[c+76>>2]|0)==0|2;M=13}if(M>>>0<=D>>>0){C=26;break}y=k[l>>2]|0;w=D;H=E;G=M;while(1){F=G-w|0;if((y|0)>=(k[m>>2]|0))je(a)|0;A=k[n>>2]|0;k[n>>2]=A+1;i[A>>0]=L>>>F|H;A=(k[l>>2]|0)+1|0;k[l>>2]=A;if(F>>>0>8){y=A;w=8;H=0;G=F}else{N=F;O=A;break}}G=8-N|0;H=(k[8064+(N<<2)>>2]&L)<<G;if((N|0)==8){if((O|0)>=(k[m>>2]|0))je(a)|0;w=k[n>>2]|0;k[n>>2]=w+1;i[w>>0]=H;k[l>>2]=(k[l>>2]|0)+1;P=8;Q=0}else{P=G;Q=H}k[x>>2]=Q;k[v>>2]=P}do if(k[o>>2]&1){if(!(k[q>>2]|0)){Pf(a,f,k[p>>2]|0);k[q>>2]=1;R=k[s>>2]|0}else{zf(a,f,k[u>>2]|0,k[p>>2]|0);H=(k[s>>2]|0)+-1|0;k[s>>2]=H;R=H}if(!R){k[q>>2]=0;k[s>>2]=(k[t>>2]|0)+-1;break}else{qe(k[u>>2]|0,f,k[g>>2]|0);break}}else Pf(a,f,k[p>>2]|0);while(0);v=k[g>>2]|0;b=b-v|0;if((b|0)<=0){h=1;C=41;break}else f=f+v|0}if((C|0)==14)Ja(144003,142823,702,144013);else if((C|0)==26)Ja(143169,142823,708,144013);else if((C|0)==41){r=d;return h|0}return 0}function Nf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=k[a+576>>2]|0;if(k[b+4>>2]&1)return;if(!(k[b+28>>2]&1)){c=1;d=12}else{c=(k[b+76>>2]|0)==0|2;d=13}yf(a,c,d);yf(a,c,d);yf(a,c,d);yf(a,c,d);yf(a,c,d);yf(a,c,d);d=a+608|0;if((k[d>>2]|0)>=(k[a+592>>2]|0))je(a)|0;c=b+48|0;e=k[c>>2]&255;f=a+604|0;a=k[f>>2]|0;k[f>>2]=a+1;i[a>>0]=e;k[d>>2]=(k[d>>2]|0)+1;k[c>>2]=0;k[b+52>>2]=8;return}function Of(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+576|0;c=k[b>>2]|0;if(!c)Ja(154168,142823,1110,143980);k[a+672>>2]=k[c+32>>2];k[a+668>>2]=k[c+36>>2];k[a+676>>2]=k[c+40>>2];d=k[c+64>>2]|0;if(d)ne(d);d=k[c+80>>2]|0;if(!d){e=k[b>>2]|0;ne(e);k[b>>2]=0;Ve(a);return}ne(d);e=k[b>>2]|0;ne(e);k[b>>2]=0;Ve(a);return}function Pf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;d=k[a+576>>2]|0;e=0;do{f=Bf(b,e,c)|0;Cf(a,f,123720);g=f+e|0;if(g>>>0>=c>>>0)break;f=Af(b,g,c)|0;Cf(a,f,124374);e=f+g|0}while(e>>>0<c>>>0);c=d+4|0;e=k[c>>2]|0;if(!(e&12))return;b=d+52|0;if((k[b>>2]|0)==8)h=e;else{e=a+608|0;if((k[e>>2]|0)>=(k[a+592>>2]|0))je(a)|0;g=d+48|0;f=k[g>>2]&255;j=a+604|0;l=k[j>>2]|0;k[j>>2]=l+1;i[l>>0]=f;k[e>>2]=(k[e>>2]|0)+1;k[g>>2]=0;k[b>>2]=8;h=k[c>>2]|0}if(!(h&8))return;h=a+604|0;c=k[h>>2]|0;if(!(c&1))return;g=a+608|0;if((k[g>>2]|0)<(k[a+592>>2]|0))m=c;else{je(a)|0;m=k[h>>2]|0}a=d+48|0;d=k[a>>2]&255;k[h>>2]=m+1;i[m>>0]=d;k[g>>2]=(k[g>>2]|0)+1;k[a>>2]=0;k[b>>2]=8;return}
function Bb(a){a=a|0;var b=0;b=r;r=r+a|0;r=r+15&-16;return b|0}function Cb(){return r|0}function Db(a){a=a|0;r=a}function Eb(a,b){a=a|0;b=b|0;r=a;s=b}function Fb(a,b){a=a|0;b=b|0;if(!w){w=a;x=b}}function Gb(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0]}function Hb(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0];i[t+4>>0]=i[a+4>>0];i[t+5>>0]=i[a+5>>0];i[t+6>>0]=i[a+6>>0];i[t+7>>0]=i[a+7>>0]}function Ib(a){a=a|0;L=a}function Jb(){return L|0}function Kb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=r;r=r+16|0;d=c;e=c+4|0;k[e>>2]=0;k[d>>2]=e;Pb(a,b,d)|0;r=c;return k[e>>2]|0}function Lb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0;if(k[a+8>>2]|0)wc(a)|0;qb[k[a+564>>2]&127](a);Rb(a);b=k[a+32>>2]|0;if(b)ne(b);b=a+680|0;c=k[b>>2]|0;if(c){d=c;do{k[b>>2]=k[d>>2];ne(k[d+8>>2]|0);ne(d);d=k[b>>2]|0}while((d|0)!=0)}d=k[a+588>>2]|0;b=a+12|0;if((d|0)!=0?(k[b>>2]&512|0)!=0:0)ne(d);if(k[b>>2]&2048){b=k[a+616>>2]|0;Ab[k[a+624>>2]&31](k[a+628>>2]|0,k[a+612>>2]|0,b,((b|0)<0)<<31>>31)}b=a+656|0;d=k[b>>2]|0;if((d|0)!=0?(c=a+660|0,e=k[c>>2]|0,(e|0)!=0):0){f=d;d=e;e=0;while(1){g=k[f+(e<<2)>>2]|0;if((j[g+24>>1]|0)==65?(h=k[g+28>>2]|0,(Rq(129700,h,4)|0)==0):0){ne(h);ne(g);i=k[c>>2]|0}else i=d;g=e+1|0;if(g>>>0>=i>>>0)break;f=k[b>>2]|0;d=i;e=g}ne(k[b>>2]|0)}b=a+688|0;e=k[b>>2]|0;if(!e){ne(a);return}i=a+684|0;d=e;e=0;while(1){f=k[i>>2]|0;if(!(k[f+(e<<4)+4>>2]|0))l=d;else{ne(k[f+(e<<4)+12>>2]|0);l=k[b>>2]|0}e=e+1|0;if(e>>>0>=l>>>0)break;else d=l}ne(k[i>>2]|0);ne(a);return}function Mb(a){a=a|0;var b=0,c=0;b=k[a+644>>2]|0;c=k[a+628>>2]|0;Lb(a);ub[b&63](c)|0;return}function Nb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=k[a>>2]|0;if(d){ne(d);k[a>>2]=0}if(!b)return;d=me(c)|0;k[a>>2]=d;if(!d)return;qe(d,b,c);return}function Ob(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=r;r=r+48|0;e=d+16|0;f=d;g=d+24|0;k[g>>2]=c;c=$b(a,b,0)|0;if(!c){h=k[a+628>>2]|0;k[f>>2]=k[a>>2];k[f+4>>2]=b>>>0>65535?128936:155687;k[f+8>>2]=b;vc(h,128944,128957,f);j=0;r=d;return j|0}if(((b|0)!=257?(k[a+12>>2]&64|0)!=0:0)?(i[c+26>>0]|0)==0:0){f=k[a+628>>2]|0;h=k[c+28>>2]|0;k[e>>2]=k[a>>2];k[e+4>>2]=h;vc(f,128944,128978,e);j=0;r=d;return j|0}j=nb[k[a+668>>2]&63](a,b,g)|0;r=d;return j|0}function Pb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=$b(a,b,0)|0;if(!c){f=0;r=d;return f|0}if(b>>>0<=65535?(g=j[c+24>>1]|0,(1<<(g&31)&k[a+40+(((g&65535)>>>5&65535)<<2)>>2]|0)==0):0){f=0;r=d;return f|0}f=nb[k[a+672>>2]&63](a,b,e)|0;r=d;return f|0}function Qb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=$b(a,b,0)|0;if(!d){e=0;return e|0}if(b>>>0<=65535?(f=j[d+24>>1]|0,(1<<(f&31)&k[a+40+(((f&65535)>>>5&65535)<<2)>>2]|0)==0):0){e=0;return e|0}e=nb[k[a+672>>2]&63](a,b,c)|0;return e|0}function Rb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;pe(a+40|0,0,4);b=a+108|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+112|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+140|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+144|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+148|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+160|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+188|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+220|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+212|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+200|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+204|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+208|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+172|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+176|0;c=k[b>>2]|0;if(c){ne(c);k[b>>2]=0}b=a+44|0;k[b>>2]=k[b>>2]&-385;b=a+224|0;c=k[b>>2]|0;d=a+228|0;if((c|0)>0){a=c;c=0;while(1){e=k[(k[d>>2]|0)+(c*12|0)+8>>2]|0;if(!e)f=a;else{ne(e);f=k[b>>2]|0}c=c+1|0;if((c|0)>=(f|0))break;else a=f}}k[b>>2]=0;b=k[d>>2]|0;if(!b)return;ne(b);k[d>>2]=0;return}function Sb(a){a=a|0;var b=0,c=0;Tb(a)|0;b=a+16|0;c=a+456|0;k[c>>2]=0;k[c+4>>2]=0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[a+444>>2]=-1;k[a+452>>2]=-1;return 0}function Tb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0;b=r;r=r+16|0;c=b;Zb(a,Yb()|0);pe(a+40|0,0,192);j[a+94>>1]=1;j[a+84>>1]=1;j[a+92>>1]=1;j[a+96>>1]=1;j[a+98>>1]=1;k[a+100>>2]=-1;k[a+68>>2]=0;k[a+72>>2]=0;k[a+76>>2]=1;k[a+180>>2]=1;j[a+124>>1]=2;j[a+86>>1]=1;k[a+64>>2]=1;j[a+192>>1]=2;j[a+194>>1]=2;j[a+196>>1]=1;k[a+652>>2]=3;k[a+664>>2]=0;k[a+668>>2]=5;k[a+672>>2]=6;k[a+676>>2]=0;d=a+688|0;e=k[d>>2]|0;if(e){f=a+684|0;g=e;e=0;while(1){h=k[f>>2]|0;if(!(k[h+(e<<4)+4>>2]|0))i=g;else{ne(k[h+(e<<4)+12>>2]|0);i=k[d>>2]|0}e=e+1|0;if(e>>>0>=i>>>0)break;else g=i}ne(k[f>>2]|0);k[d>>2]=0;k[f>>2]=0}f=k[20]|0;if(!f){k[c>>2]=1;Ob(a,259,c)|0;l=a+12|0;m=k[l>>2]|0;n=m&-1033;k[l>>2]=n;r=b;return 1}qb[f&127](a);k[c>>2]=1;Ob(a,259,c)|0;l=a+12|0;m=k[l>>2]|0;n=m&-1033;k[l>>2]=n;r=b;return 1}function Ub(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0;c=r;r=r+16|0;d=c;if(!(k[a+12>>2]&524288)){e=k[a+428>>2]|0;f=0}else{g=a+432|0;e=k[g>>2]|0;f=k[g+4>>2]|0}g=d;k[g>>2]=e;k[g+4>>2]=f;a:do if(b<<16>>16!=0&((e|0)!=0|(f|0)!=0)){g=b;while(1){if(!(Xb(a,d,0)|0)){h=0;break}i=g+-1<<16>>16;l=d;m=k[l>>2]|0;n=k[l+4>>2]|0;if(i<<16>>16!=0&((m|0)!=0|(n|0)!=0))g=i;else{o=m;p=n;q=i;break a}}r=c;return h|0}else{o=e;p=f;q=b}while(0);f=a+24|0;k[f>>2]=o;k[f+4>>2]=p;j[a+448>>1]=(b&65535)+65535-(q&65535);j[a+38>>1]=0;h=fc(a)|0;r=c;return h|0}function Vb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,q=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.0,X=0.0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=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;d=r;r=r+208|0;e=d+160|0;f=d+144|0;g=d+128|0;h=d+104|0;n=d+88|0;q=d+80|0;s=d+64|0;t=d+48|0;u=d+40|0;v=d+32|0;w=d+24|0;x=d+204|0;y=d+200|0;z=d+207|0;A=d+206|0;B=d+198|0;C=d+196|0;D=d+192|0;E=d+188|0;F=d+16|0;G=d+8|0;H=d+184|0;I=d;J=a+40|0;K=$b(a,b,0)|0;if(!K){L=0;r=d;return L|0}M=(j[K+24>>1]|0)==65;N=M?0:b;a:do if((N|0)<297){do switch(N|0){case 254:{O=(k[c>>2]|0)+(4-1)&~(4-1);P=k[O>>2]|0;k[c>>2]=O+4;k[a+80>>2]=P;Q=1;R=219;break a;break}case 256:{P=(k[c>>2]|0)+(4-1)&~(4-1);O=k[P>>2]|0;k[c>>2]=P+4;k[a+56>>2]=O;Q=1;R=219;break a;break}case 257:{O=(k[c>>2]|0)+(4-1)&~(4-1);P=k[O>>2]|0;k[c>>2]=O+4;k[a+60>>2]=P;Q=1;R=219;break a;break}case 258:{P=(k[c>>2]|0)+(4-1)&~(4-1);O=k[P>>2]|0;k[c>>2]=P+4;j[a+84>>1]=O;if(!(k[a+12>>2]&128)){Q=1;R=219;break a}switch(O&65535|0){case 8:{k[a+652>>2]=3;Q=1;R=219;break a;break}case 16:{k[a+652>>2]=4;Q=1;R=219;break a;break}case 24:{k[a+652>>2]=5;Q=1;R=219;break a;break}case 32:{k[a+652>>2]=6;Q=1;R=219;break a;break}case 64:{k[a+652>>2]=7;Q=1;R=219;break a;break}case 128:{k[a+652>>2]=7;Q=1;R=219;break a;break}default:{Q=1;R=219;break a}}break}case 259:{O=(k[c>>2]|0)+(4-1)&~(4-1);P=k[O>>2]|0;k[c>>2]=O+4;O=P&65535;if(k[J>>2]&128){if((j[a+88>>1]|0)==(P&65535)<<16>>16){Q=1;R=219;break a}qb[k[a+564>>2]&127](a);S=a+12|0;k[S>>2]=k[S>>2]&-33}S=We(a,O)|0;if(!S){T=0;break a}j[a+88>>1]=P;Q=S;R=219;break a;break}case 262:{S=(k[c>>2]|0)+(4-1)&~(4-1);P=k[S>>2]|0;k[c>>2]=S+4;j[a+90>>1]=P;Q=1;R=219;break a;break}case 263:{P=(k[c>>2]|0)+(4-1)&~(4-1);S=k[P>>2]|0;k[c>>2]=P+4;j[a+92>>1]=S;Q=1;R=219;break a;break}case 266:{S=(k[c>>2]|0)+(4-1)&~(4-1);P=k[S>>2]|0;k[c>>2]=S+4;S=P&65535;if((S+-1|0)>>>0>1){U=S;R=223;break a}j[a+94>>1]=P;Q=1;R=219;break a;break}case 274:{P=(k[c>>2]|0)+(4-1)&~(4-1);S=k[P>>2]|0;k[c>>2]=P+4;P=S&65535;if((P+-1|0)>>>0>7){U=P;R=223;break a}j[a+96>>1]=S;Q=1;R=219;break a;break}case 277:{S=(k[c>>2]|0)+(4-1)&~(4-1);P=k[S>>2]|0;k[c>>2]=S+4;if(!(P&65535)){U=0;R=223;break a}j[a+98>>1]=P;Q=1;R=219;break a;break}case 278:{P=(k[c>>2]|0)+(4-1)&~(4-1);S=k[P>>2]|0;k[c>>2]=P+4;if(!S){V=0;R=226;break a}k[a+100>>2]=S;if(k[J>>2]&4){Q=1;R=219;break a}k[a+72>>2]=S;k[a+68>>2]=k[a+56>>2];Q=1;R=219;break a;break}case 280:{S=(k[c>>2]|0)+(4-1)&~(4-1);P=k[S>>2]|0;k[c>>2]=S+4;j[a+104>>1]=P;Q=1;R=219;break a;break}case 281:{P=(k[c>>2]|0)+(4-1)&~(4-1);S=k[P>>2]|0;k[c>>2]=P+4;j[a+106>>1]=S;Q=1;R=219;break a;break}case 282:{S=(k[c>>2]|0)+(8-1)&~(8-1);W=+p[S>>3];k[c>>2]=S+8;if(W<0.0)X=W;else{o[a+116>>2]=W;Q=1;R=219;break a}break}case 283:{S=(k[c>>2]|0)+(8-1)&~(8-1);W=+p[S>>3];k[c>>2]=S+8;if(W<0.0)X=W;else{o[a+120>>2]=W;Q=1;R=219;break a}break}case 284:{S=(k[c>>2]|0)+(4-1)&~(4-1);P=k[S>>2]|0;k[c>>2]=S+4;S=P&65535;if((S+-1|0)>>>0>1){U=S;R=223;break a}j[a+126>>1]=P;Q=1;R=219;break a;break}case 286:{P=(k[c>>2]|0)+(8-1)&~(8-1);W=+p[P>>3];k[c>>2]=P+8;o[a+128>>2]=W;Q=1;R=219;break a;break}case 287:{P=(k[c>>2]|0)+(8-1)&~(8-1);W=+p[P>>3];k[c>>2]=P+8;o[a+132>>2]=W;Q=1;R=219;break a;break}case 296:{P=(k[c>>2]|0)+(4-1)&~(4-1);S=k[P>>2]|0;k[c>>2]=P+4;P=S&65535;if((P+-1|0)>>>0>2){U=P;R=223;break a}j[a+124>>1]=S;Q=1;R=219;break a;break}default:{R=163;break a}}while(0);S=cc(a,b)|0;P=k[a+628>>2]|0;if(!S)Y=129632;else Y=k[S+28>>2]|0;k[e>>2]=k[a>>2];p[e+8>>3]=X;k[e+16>>2]=Y;vc(P,129317,129670,e);L=0;r=d;return L|0}else{if((N|0)>=340){if((N|0)>=32995)if((N|0)>=32997){if((N|0)<32998){switch(N|0){case 32997:break;default:{R=163;break a}}P=(k[c>>2]|0)+(4-1)&~(4-1);S=k[P>>2]|0;k[c>>2]=P+4;k[a+64>>2]=S;Q=1;R=219;break}if((N|0)<65563){switch(N|0){case 32998:break;default:{R=163;break a}}S=(k[c>>2]|0)+(4-1)&~(4-1);P=k[S>>2]|0;k[c>>2]=S+4;if(!P){V=0;R=226;break}k[a+76>>2]=P;Q=1;R=219;break}switch(N|0){case 65563:break;default:{R=163;break a}}P=(k[c>>2]|0)+(4-1)&~(4-1);S=k[P>>2]|0;k[c>>2]=P+4;P=a+12|0;O=k[P>>2]|0;if((S&65535|0)==1){k[P>>2]=O|4194304;Q=1;R=219;break}else{k[P>>2]=O&-4194305;Q=1;R=219;break}}else switch(N|0){case 32995:{O=(k[c>>2]|0)+(4-1)&~(4-1);P=k[O>>2]|0;k[c>>2]=O+4;O=(P&65535|0)!=0;j[a+156>>1]=O&1;if(!O){Q=1;R=219;break a}j[x>>1]=1;O=a+160|0;P=k[O>>2]|0;if(P){ne(P);k[O>>2]=0}P=me(2)|0;k[O>>2]=P;if(!P){Q=1;R=219;break a}qe(P,x,2);Q=1;R=219;break a;break}case 32996:{P=(k[c>>2]|0)+(4-1)&~(4-1);O=k[P>>2]|0;k[c>>2]=P+4;P=O&65535;switch(P|0){case 0:{Z=4;break}case 1:{Z=2;break}case 2:{Z=1;break}case 3:{Z=3;break}default:{U=P;R=223;break a}}j[a+86>>1]=Z;Q=1;R=219;break a;break}default:{R=163;break a}}switch(N|0){case 340:{P=a+108|0;if(!(k[a+12>>2]&4194304)){O=(k[c>>2]|0)+(8-1)&~(8-1);W=+p[O>>3];k[c>>2]=O+8;O=j[a+98>>1]|0;S=O&65535;_=k[P>>2]|0;if(_)ne(_);_=me(S<<3)|0;k[P>>2]=_;if(O<<16>>16==0|(_|0)==0){Q=1;R=219;break a}else $=S;while(1){$=$+-1|0;p[_+($<<3)>>3]=W;if(!$){Q=1;R=219;break a}}}_=(k[c>>2]|0)+(4-1)&~(4-1);S=k[_>>2]|0;k[c>>2]=_+4;_=m[a+98>>1]|0;O=k[P>>2]|0;if(O){ne(O);k[P>>2]=0}if(!S){Q=1;R=219;break a}O=_<<3;_=me(O)|0;k[P>>2]=_;if(!_){Q=1;R=219;break a}qe(_,S,O);Q=1;R=219;break a;break}case 341:{O=a+112|0;if(!(k[a+12>>2]&4194304)){S=(k[c>>2]|0)+(8-1)&~(8-1);W=+p[S>>3];k[c>>2]=S+8;S=j[a+98>>1]|0;_=S&65535;aa=k[O>>2]|0;if(aa)ne(aa);aa=me(_<<3)|0;k[O>>2]=aa;if(S<<16>>16==0|(aa|0)==0){Q=1;R=219;break a}else ba=_;while(1){ba=ba+-1|0;p[aa+(ba<<3)>>3]=W;if(!ba){Q=1;R=219;break a}}}aa=(k[c>>2]|0)+(4-1)&~(4-1);P=k[aa>>2]|0;k[c>>2]=aa+4;aa=m[a+98>>1]|0;_=k[O>>2]|0;if(_){ne(_);k[O>>2]=0}if(!P){Q=1;R=219;break a}_=aa<<3;aa=me(_)|0;k[O>>2]=aa;if(!aa){Q=1;R=219;break a}qe(aa,P,_);Q=1;R=219;break a;break}case 531:{_=(k[c>>2]|0)+(4-1)&~(4-1);P=k[_>>2]|0;k[c>>2]=_+4;j[a+196>>1]=P;Q=1;R=219;break a;break}case 530:{P=(k[c>>2]|0)+(4-1)&~(4-1);_=k[P>>2]|0;k[c>>2]=P+4;j[a+192>>1]=_;_=(k[c>>2]|0)+(4-1)&~(4-1);P=k[_>>2]|0;k[c>>2]=_+4;j[a+194>>1]=P;Q=1;R=219;break a;break}case 532:{P=a+212|0;_=(k[c>>2]|0)+(4-1)&~(4-1);aa=k[_>>2]|0;k[c>>2]=_+4;_=k[P>>2]|0;if(_){ne(_);k[P>>2]=0}if(!aa){Q=1;R=219;break a}_=me(24)|0;k[P>>2]=_;if(!_){Q=1;R=219;break a}qe(_,aa,24);Q=1;R=219;break a;break}default:{R=163;break a}}}do switch(N|0){case 297:{aa=(k[c>>2]|0)+(4-1)&~(4-1);_=k[aa>>2]|0;k[c>>2]=aa+4;j[a+136>>1]=_;_=(k[c>>2]|0)+(4-1)&~(4-1);aa=k[_>>2]|0;k[c>>2]=_+4;j[a+138>>1]=aa;Q=1;R=219;break a;break}case 321:{aa=(k[c>>2]|0)+(4-1)&~(4-1);_=k[aa>>2]|0;k[c>>2]=aa+4;j[a+152>>1]=_;_=(k[c>>2]|0)+(4-1)&~(4-1);aa=k[_>>2]|0;k[c>>2]=_+4;j[a+154>>1]=aa;Q=1;R=219;break a;break}case 320:{aa=1<<m[a+84>>1];_=a+140|0;P=(k[c>>2]|0)+(4-1)&~(4-1);S=k[P>>2]|0;k[c>>2]=P+4;P=k[_>>2]|0;if(P){ne(P);k[_>>2]=0}if(((S|0)!=0?(P=aa<<1,(aa&2147483647|0)==(aa|0)):0)?(ca=me(P)|0,k[_>>2]=ca,(ca|0)!=0):0)qe(ca,S,P);P=a+144|0;S=(k[c>>2]|0)+(4-1)&~(4-1);ca=k[S>>2]|0;k[c>>2]=S+4;S=k[P>>2]|0;if(S){ne(S);k[P>>2]=0}if(((ca|0)!=0?(S=aa<<1,(aa&2147483647|0)==(aa|0)):0)?(_=me(S)|0,k[P>>2]=_,(_|0)!=0):0)qe(_,ca,S);S=a+148|0;ca=(k[c>>2]|0)+(4-1)&~(4-1);_=k[ca>>2]|0;k[c>>2]=ca+4;ca=k[S>>2]|0;if(ca){ne(ca);k[S>>2]=0}if(!_){Q=1;R=219;break a}ca=aa<<1;if((aa&2147483647|0)!=(aa|0)){Q=1;R=219;break a}aa=me(ca)|0;k[S>>2]=aa;if(!aa){Q=1;R=219;break a}qe(aa,_,ca);Q=1;R=219;break a;break}case 338:{ca=(k[c>>2]|0)+(4-1)&~(4-1);_=k[ca>>2]|0;k[c>>2]=ca+4;ca=_&65535;if(ca>>>0>(m[a+98>>1]|0)>>>0){U=ca;R=223;break a}_=(k[c>>2]|0)+(4-1)&~(4-1);aa=k[_>>2]|0;k[c>>2]=_+4;_=(aa|0)==0;if(_&(ca|0)!=0){U=ca;R=223;break a}if(!ca)da=0;else{S=0;while(1){P=aa+(S<<1)|0;ea=j[P>>1]|0;if((ea&65535)>2){if(ea<<16>>16!=999){U=ca;R=223;break a}j[P>>1]=2}S=S+1|0;if(S>>>0>=ca>>>0){da=ca;break}}}j[a+156>>1]=da;ca=a+160|0;S=k[ca>>2]|0;if(S){ne(S);k[ca>>2]=0}if(_){Q=1;R=219;break a}S=da<<1;P=me(S)|0;k[ca>>2]=P;if(!P){Q=1;R=219;break a}qe(P,aa,S);Q=1;R=219;break a;break}case 322:{S=(k[c>>2]|0)+(4-1)&~(4-1);P=k[S>>2]|0;k[c>>2]=S+4;if(P&15){if(k[a+8>>2]|0){V=P;R=226;break a}S=k[a+628>>2]|0;ca=k[a>>2]|0;k[w>>2]=P;ie(S,ca,129236,w)}k[a+68>>2]=P;P=a+12|0;k[P>>2]=k[P>>2]|1024;Q=1;R=219;break a;break}case 323:{P=(k[c>>2]|0)+(4-1)&~(4-1);ca=k[P>>2]|0;k[c>>2]=P+4;if(ca&15){if(k[a+8>>2]|0){V=ca;R=226;break a}P=k[a+628>>2]|0;S=k[a>>2]|0;k[v>>2]=ca;ie(P,S,129276,v)}k[a+72>>2]=ca;ca=a+12|0;k[ca>>2]=k[ca>>2]|1024;Q=1;R=219;break a;break}case 339:{ca=(k[c>>2]|0)+(4-1)&~(4-1);S=k[ca>>2]|0;k[c>>2]=ca+4;ca=S&65535;if((ca+-1|0)>>>0>5){U=ca;R=223;break a}P=S&65535;j[a+86>>1]=P;if(((ca|0)==5?(j[a+84>>1]|0)==32:0)?(ca=a+652|0,(k[ca>>2]|0)==6):0){k[ca>>2]=4;Q=1;R=219;break a}if((P+-5&65535)>=2){Q=1;R=219;break a}if((j[a+84>>1]|0)!=64){Q=1;R=219;break a}P=a+652|0;if((k[P>>2]|0)!=7){Q=1;R=219;break a}k[P>>2]=6;Q=1;R=219;break a;break}case 330:{if(k[a+12>>2]&8192){P=k[a+628>>2]|0;k[u>>2]=k[a>>2];vc(P,129317,129332,u);T=0;break a}P=(k[c>>2]|0)+(4-1)&~(4-1);ca=k[P>>2]|0;k[c>>2]=P+4;P=a+184|0;j[P>>1]=ca;ca=a+188|0;S=(k[c>>2]|0)+(4-1)&~(4-1);ea=k[S>>2]|0;k[c>>2]=S+4;S=m[P>>1]|0;P=k[ca>>2]|0;if(P){ne(P);k[ca>>2]=0}if(!ea){Q=1;R=219;break a}P=S<<3;S=me(P)|0;k[ca>>2]=S;if(!S){Q=1;R=219;break a}qe(S,ea,P);Q=1;R=219;break a;break}case 301:{P=((m[a+98>>1]|0)-(m[a+156>>1]|0)|0)>1?3:1;ea=a+84|0;S=0;do{ca=a+200+(S<<2)|0;fa=(k[c>>2]|0)+(4-1)&~(4-1);ga=k[fa>>2]|0;k[c>>2]=fa+4;fa=1<<m[ea>>1];ia=k[ca>>2]|0;if(ia){ne(ia);k[ca>>2]=0}if(((ga|0)!=0?(ia=fa<<1,(fa&2147483647|0)==(fa|0)):0)?(fa=me(ia)|0,k[ca>>2]=fa,(fa|0)!=0):0)qe(fa,ga,ia);S=S+1|0}while((S|0)!=(P|0));Q=1;R=219;break}case 333:{P=(k[c>>2]|0)+(4-1)&~(4-1);S=k[P>>2]|0;k[c>>2]=P+4;P=S&65535;S=(k[c>>2]|0)+(4-1)&~(4-1);ea=k[S>>2]|0;k[c>>2]=S+4;S=j[a+98>>1]|0;b:do if(!P)ja=S;else{aa=ea+P|0;if(!(S<<16>>16)){T=0;break a}else{ka=ea;la=S}while(1){_=ka;while(1){if(_>>>0>=aa>>>0){ja=la;break b}ia=_+1|0;if(!(i[_>>0]|0)){ma=ia;break}else _=ia}la=la+-1<<16>>16;if(!(la<<16>>16)){na=ma;break}else ka=ma}aa=na-ea|0;_=(na|0)!=(ea|0);ia=_&1;if(!_){T=0;break a}_=a+220|0;ga=k[_>>2]|0;if(ga){ne(ga);k[_>>2]=0}if((ea|0)!=0?(ga=me(aa)|0,k[_>>2]=ga,(ga|0)!=0):0)qe(ga,ea,aa);k[a+216>>2]=aa;Q=ia;R=219;break a}while(0);ea=k[a+628>>2]|0;P=S&65535;k[t>>2]=k[a>>2];k[t+4>>2]=P;k[t+8>>2]=P-(ja&65535);vc(ea,128944,129363,t);T=0;break a;break}default:{R=163;break a}}while(0)}while(0);c:do if((R|0)==163){if(!M){t=k[a+628>>2]|0;ja=k[K+28>>2]|0;k[s>>2]=k[a>>2];k[s+4>>2]=b>>>0>65535?128936:155687;k[s+8>>2]=ja;vc(t,129317,129173,s);T=0;break}t=a+224|0;ja=k[t>>2]|0;na=a+228|0;do if((ja|0)>0){ma=k[na>>2]|0;ka=0;while(1){la=ma+(ka*12|0)|0;if((k[k[la>>2]>>2]|0)==(b|0)){oa=la;pa=ka;break}ka=ka+1|0;if((ka|0)>=(ja|0)){R=172;break}}if((R|0)==172){qa=na;ra=ma;R=173;break}ka=ma+(pa*12|0)+8|0;S=k[ka>>2]|0;if(!S)sa=oa;else{ne(S);k[ka>>2]=0;sa=oa}}else{qa=na;ra=k[na>>2]|0;R=173}while(0);do if((R|0)==173){na=ja+1|0;k[t>>2]=na;ka=oe(ra,na*12|0)|0;if(!ka){na=k[a+628>>2]|0;k[q>>2]=k[a>>2];vc(na,129317,129420,q);T=0;break c}else{k[qa>>2]=ka;na=(k[t>>2]|0)+-1|0;S=ka+(na*12|0)|0;k[S>>2]=K;k[ka+(na*12|0)+8>>2]=0;k[ka+(na*12|0)+4>>2]=0;sa=S;break}}while(0);t=K+8|0;ja=bc(k[t>>2]|0)|0;if(!ja){S=k[a+628>>2]|0;na=k[t>>2]|0;ka=k[K+28>>2]|0;k[n>>2]=k[a>>2];k[n+4>>2]=na;k[n+8>>2]=ka;vc(S,129317,129475,n);T=0;break}S=K+27|0;ka=(i[S>>0]|0)!=0;if((k[t>>2]|0)==2){do if(ka)if((j[K+6>>1]|0)==-3){na=(k[c>>2]|0)+(4-1)&~(4-1);la=k[na>>2]|0;k[c>>2]=na+4;na=(k[c>>2]|0)+(4-1)&~(4-1);u=k[na>>2]|0;k[c>>2]=na+4;ta=la;ua=u;break}else Ja(129506,129019,529,129317);else{u=(k[c>>2]|0)+(4-1)&~(4-1);la=k[u>>2]|0;k[c>>2]=u+4;ta=(Qq(la)|0)+1|0;ua=la}while(0);k[sa+4>>2]=ta;la=sa+8|0;u=k[la>>2]|0;if(u){ne(u);k[la>>2]=0}if(!ua){Q=1;R=219;break}u=me(ta)|0;k[la>>2]=u;if(!u){Q=1;R=219;break}qe(u,ua,ta);Q=1;R=219;break}u=K+6|0;la=j[u>>1]|0;na=la<<16>>16;d:do if(ka){v=(k[c>>2]|0)+(4-1)&~(4-1);w=k[v>>2]|0;k[c>>2]=v+4;v=sa+4|0;k[v>>2]=w;va=v;wa=w;R=195}else switch(la<<16>>16){case -3:case -1:{w=sa+4|0;k[w>>2]=1;xa=w;ya=1;break d;break}case -2:{w=m[a+98>>1]|0;v=sa+4|0;k[v>>2]=w;va=v;wa=w;R=195;break d;break}default:{w=sa+4|0;k[w>>2]=na;va=w;wa=na;R=195;break d}}while(0);if((R|0)==195)if(!wa){na=k[a+628>>2]|0;la=k[K+28>>2]|0;ka=k[t>>2]|0;w=j[u>>1]|0;v=l[S>>0]|0;k[h>>2]=k[a>>2];k[h+4>>2]=la;k[h+8>>2]=ka;k[h+12>>2]=w;k[h+16>>2]=v;vc(na,129317,129544,h);T=0;break}else{xa=va;ya=wa}na=Ee(a,ya,ja,129607)|0;v=sa+8|0;k[v>>2]=na;if(!na)T=0;else{if((k[K>>2]|0)==336?(Oq(k[K+28>>2]|0,131343)|0)==0:0){w=(k[c>>2]|0)+(4-1)&~(4-1);ka=k[w>>2]|0;k[c>>2]=w+4;j[y>>1]=ka;ka=(k[c>>2]|0)+(4-1)&~(4-1);w=k[ka>>2]|0;k[c>>2]=ka+4;j[y+2>>1]=w;qe(k[v>>2]|0,y,4);Q=1;R=219;break}if(((i[S>>0]|0)==0?(m[u>>1]|0)<=65532:0)?(v=k[xa>>2]|0,(v|0)<=1):0){if((v|0)!=1)Ja(129221,129019,597,129317);do switch(k[t>>2]|0){case 7:case 1:{v=(k[c>>2]|0)+(4-1)&~(4-1);w=k[v>>2]|0;k[c>>2]=v+4;i[z>>0]=w;qe(na,z,ja);Q=1;R=219;break c;break}case 6:{w=(k[c>>2]|0)+(4-1)&~(4-1);v=k[w>>2]|0;k[c>>2]=w+4;i[A>>0]=v;qe(na,A,ja);Q=1;R=219;break c;break}case 3:{v=(k[c>>2]|0)+(4-1)&~(4-1);w=k[v>>2]|0;k[c>>2]=v+4;j[B>>1]=w;qe(na,B,ja);Q=1;R=219;break c;break}case 8:{w=(k[c>>2]|0)+(4-1)&~(4-1);v=k[w>>2]|0;k[c>>2]=w+4;j[C>>1]=v;qe(na,C,ja);Q=1;R=219;break c;break}case 13:case 4:{v=(k[c>>2]|0)+(4-1)&~(4-1);w=k[v>>2]|0;k[c>>2]=v+4;k[D>>2]=w;qe(na,D,ja);Q=1;R=219;break c;break}case 9:{w=(k[c>>2]|0)+(4-1)&~(4-1);v=k[w>>2]|0;k[c>>2]=w+4;k[E>>2]=v;qe(na,E,ja);Q=1;R=219;break c;break}case 18:case 16:{v=(k[c>>2]|0)+(8-1)&~(8-1);w=v;ka=k[w>>2]|0;la=k[w+4>>2]|0;k[c>>2]=v+8;v=F;k[v>>2]=ka;k[v+4>>2]=la;qe(na,F,ja);Q=1;R=219;break c;break}case 17:{la=(k[c>>2]|0)+(8-1)&~(8-1);v=la;ka=k[v>>2]|0;w=k[v+4>>2]|0;k[c>>2]=la+8;la=G;k[la>>2]=ka;k[la+4>>2]=w;qe(na,G,ja);Q=1;R=219;break c;break}case 11:case 10:case 5:{w=(k[c>>2]|0)+(8-1)&~(8-1);X=+p[w>>3];k[c>>2]=w+8;o[H>>2]=X;qe(na,H,ja);Q=1;R=219;break c;break}case 12:{w=(k[c>>2]|0)+(8-1)&~(8-1);X=+p[w>>3];k[c>>2]=w+8;p[I>>3]=X;qe(na,I,ja);Q=1;R=219;break c;break}default:{pe(na,0,ja);T=0;break c}}while(0)}t=(k[c>>2]|0)+(4-1)&~(4-1);u=k[t>>2]|0;k[c>>2]=t+4;qe(na,u,ha(k[xa>>2]|0,ja)|0);Q=1;R=219}}else if((R|0)==223){u=cc(a,b)|0;t=k[a+628>>2]|0;if(!u)za=129632;else za=k[u+28>>2]|0;k[g>>2]=k[a>>2];k[g+4>>2]=U;k[g+8>>2]=za;vc(t,129317,129640,g);L=0;r=d;return L|0}else if((R|0)==226){t=cc(a,b)|0;u=k[a+628>>2]|0;if(!t)Aa=129632;else Aa=k[t+28>>2]|0;k[f>>2]=k[a>>2];k[f+4>>2]=V;k[f+8>>2]=Aa;vc(u,129317,129640,f);L=0;r=d;return L|0}while(0);if((R|0)==219){R=cc(a,b)|0;if(R){b=j[R+24>>1]|0;R=a+40+(((b&65535)>>>5&65535)<<2)|0;k[R>>2]=1<<(b&31)|k[R>>2]}R=a+12|0;k[R>>2]=k[R>>2]|8;T=Q}L=T;r=d;return L|0}function Wb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,q=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,B=0;d=r;r=r+16|0;e=d;f=$b(a,b,0)|0;if(!f){g=0;r=d;return g|0}h=(j[f+24>>1]|0)==65;l=h?0:b;a:do if((l|0)<297)do switch(l|0){case 273:{n=37;break a;break}case 279:{n=38;break a;break}case 254:{o=k[a+80>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;g=1;r=d;return g|0}case 256:{o=k[a+56>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;g=1;r=d;return g|0}case 257:{o=k[a+60>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;g=1;r=d;return g|0}case 258:{o=j[a+84>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;g=1;r=d;return g|0}case 259:{o=j[a+88>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;g=1;r=d;return g|0}case 262:{o=j[a+90>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;g=1;r=d;return g|0}case 263:{o=j[a+92>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;g=1;r=d;return g|0}case 266:{o=j[a+94>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;g=1;r=d;return g|0}case 274:{o=j[a+96>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;g=1;r=d;return g|0}case 277:{o=j[a+98>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;g=1;r=d;return g|0}case 278:{o=k[a+100>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;g=1;r=d;return g|0}case 280:{o=j[a+104>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;g=1;r=d;return g|0}case 281:{o=j[a+106>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;g=1;r=d;return g|0}case 282:{o=k[a+116>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;g=1;r=d;return g|0}case 283:{o=k[a+120>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;g=1;r=d;return g|0}case 284:{o=j[a+126>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;g=1;r=d;return g|0}case 286:{o=k[a+128>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;g=1;r=d;return g|0}case 287:{o=k[a+132>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;g=1;r=d;return g|0}case 296:{o=j[a+124>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;g=1;r=d;return g|0}default:{n=60;break a}}while(0);else{if((l|0)<338)switch(l|0){case 324:{n=37;break a;break}case 325:{n=38;break a;break}case 297:{o=j[a+136>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;o=j[a+138>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;g=1;r=d;return g|0}case 321:{o=j[a+152>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;o=j[a+154>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;g=1;r=d;return g|0}case 320:{o=k[a+140>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;o=k[a+144>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;o=k[a+148>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;g=1;r=d;return g|0}case 322:{o=k[a+68>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;g=1;r=d;return g|0}case 323:{o=k[a+72>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;g=1;r=d;return g|0}case 330:{o=j[a+184>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;o=k[a+188>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;g=1;r=d;return g|0}case 301:{o=k[a+200>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;if(((m[a+98>>1]|0)-(m[a+156>>1]|0)|0)<=1){g=1;r=d;return g|0}o=k[a+204>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;o=k[a+208>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;g=1;r=d;return g|0}case 333:{o=k[a+220>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;g=1;r=d;return g|0}default:{n=60;break a}}if((l|0)<531)switch(l|0){case 340:{o=k[a+108>>2]|0;if(k[a+12>>2]&4194304){q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;g=1;r=d;return g|0}t=+p[o>>3];s=j[a+98>>1]|0;if((s&65535)>1){q=s&65535;s=1;u=t;while(1){v=+p[o+(s<<3)>>3];w=v<u?v:u;s=s+1|0;if(s>>>0>=q>>>0){x=w;break}else u=w}}else x=t;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;p[s>>3]=x;g=1;r=d;return g|0}case 341:{s=k[a+112>>2]|0;if(k[a+12>>2]&4194304){q=(k[c>>2]|0)+(4-1)&~(4-1);o=k[q>>2]|0;k[c>>2]=q+4;k[o>>2]=s;g=1;r=d;return g|0}u=+p[s>>3];o=j[a+98>>1]|0;if((o&65535)>1){q=o&65535;o=1;w=u;while(1){v=+p[s+(o<<3)>>3];y=v>w?v:w;o=o+1|0;if(o>>>0>=q>>>0){z=y;break}else w=y}}else z=u;q=(k[c>>2]|0)+(4-1)&~(4-1);o=k[q>>2]|0;k[c>>2]=q+4;p[o>>3]=z;g=1;r=d;return g|0}case 338:{o=j[a+156>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;o=k[a+160>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;k[q>>2]=o;g=1;r=d;return g|0}case 339:{o=j[a+86>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;g=1;r=d;return g|0}case 530:{o=j[a+192>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;o=j[a+194>>1]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=o;g=1;r=d;return g|0}default:{n=60;break a}}if((l|0)<32996){if((l|0)<532){switch(l|0){case 531:break;default:{n=60;break a}}o=j[a+196>>1]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=o;g=1;r=d;return g|0}if((l|0)<32995){switch(l|0){case 532:break;default:{n=60;break a}}o=k[a+212>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;k[s>>2]=o;g=1;r=d;return g|0}switch(l|0){case 32995:break;default:{n=60;break a}}if((j[a+156>>1]|0)==1)A=(j[k[a+160>>2]>>1]|0)==1&1;else A=0;o=(k[c>>2]|0)+(4-1)&~(4-1);s=k[o>>2]|0;k[c>>2]=o+4;j[s>>1]=A;g=1;r=d;return g|0}switch(l|0){case 32998:{s=k[a+76>>2]|0;o=(k[c>>2]|0)+(4-1)&~(4-1);q=k[o>>2]|0;k[c>>2]=o+4;k[q>>2]=s;g=1;r=d;return g|0}case 32996:{switch(m[a+86>>1]|0){case 1:{s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=2;g=1;r=d;return g|0}case 2:{q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=1;g=1;r=d;return g|0}case 3:{s=(k[c>>2]|0)+(4-1)&~(4-1);q=k[s>>2]|0;k[c>>2]=s+4;j[q>>1]=3;g=1;r=d;return g|0}case 4:{q=(k[c>>2]|0)+(4-1)&~(4-1);s=k[q>>2]|0;k[c>>2]=q+4;j[s>>1]=0;g=1;r=d;return g|0}default:{g=1;r=d;return g|0}}break}case 32997:{s=k[a+64>>2]|0;q=(k[c>>2]|0)+(4-1)&~(4-1);o=k[q>>2]|0;k[c>>2]=q+4;k[o>>2]=s;g=1;r=d;return g|0}default:{n=60;break a}}}while(0);if((n|0)==37){gc(a)|0;l=k[a+172>>2]|0;A=(k[c>>2]|0)+(4-1)&~(4-1);s=k[A>>2]|0;k[c>>2]=A+4;k[s>>2]=l;g=1;r=d;return g|0}else if((n|0)==38){gc(a)|0;l=k[a+176>>2]|0;s=(k[c>>2]|0)+(4-1)&~(4-1);A=k[s>>2]|0;k[c>>2]=s+4;k[A>>2]=l;g=1;r=d;return g|0}else if((n|0)==60){if(!h){h=k[a+628>>2]|0;l=k[f+28>>2]|0;k[e>>2]=k[a>>2];k[e+4>>2]=b>>>0>65535?128936:155687;k[e+8>>2]=l;vc(h,129158,129173,e);g=0;r=d;return g|0}e=k[a+224>>2]|0;if((e|0)<=0){g=0;r=d;return g|0}h=k[a+228>>2]|0;a=0;while(1){if((k[k[h+(a*12|0)>>2]>>2]|0)==(b|0)){B=a;break}a=a+1|0;if((a|0)>=(e|0)){g=0;n=91;break}}if((n|0)==91){r=d;return g|0}if(i[f+27>>0]|0){n=k[h+(B*12|0)+4>>2]|0;if((j[f+4>>1]|0)==-3){e=(k[c>>2]|0)+(4-1)&~(4-1);a=k[e>>2]|0;k[c>>2]=e+4;k[a>>2]=n}else{a=(k[c>>2]|0)+(4-1)&~(4-1);e=k[a>>2]|0;k[c>>2]=a+4;j[e>>1]=n}n=k[h+(B*12|0)+8>>2]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);a=k[e>>2]|0;k[c>>2]=e+4;k[a>>2]=n;g=1;r=d;return g|0}if((k[f>>2]|0)==336?(Oq(k[f+28>>2]|0,131343)|0)==0:0){n=h+(B*12|0)+8|0;a=j[k[n>>2]>>1]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);b=k[e>>2]|0;k[c>>2]=e+4;j[b>>1]=a;a=j[(k[n>>2]|0)+2>>1]|0;n=(k[c>>2]|0)+(4-1)&~(4-1);b=k[n>>2]|0;k[c>>2]=n+4;j[b>>1]=a;g=1;r=d;return g|0}a=k[f+8>>2]|0;if(((a|0)!=2?(m[f+4>>1]|0)<=65532:0)?(f=k[h+(B*12|0)+4>>2]|0,(f|0)<=1):0){b=k[h+(B*12|0)+8>>2]|0;if((f|0)!=1)Ja(129221,129019,1077,129158);do switch(a|0){case 7:case 1:{f=i[b>>0]|0;n=(k[c>>2]|0)+(4-1)&~(4-1);e=k[n>>2]|0;k[c>>2]=n+4;i[e>>0]=f;g=1;r=d;return g|0}case 6:{f=i[b>>0]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);n=k[e>>2]|0;k[c>>2]=e+4;i[n>>0]=f;g=1;r=d;return g|0}case 3:{f=j[b>>1]|0;n=(k[c>>2]|0)+(4-1)&~(4-1);e=k[n>>2]|0;k[c>>2]=n+4;j[e>>1]=f;g=1;r=d;return g|0}case 8:{f=j[b>>1]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);n=k[e>>2]|0;k[c>>2]=e+4;j[n>>1]=f;g=1;r=d;return g|0}case 13:case 4:{f=k[b>>2]|0;n=(k[c>>2]|0)+(4-1)&~(4-1);e=k[n>>2]|0;k[c>>2]=n+4;k[e>>2]=f;g=1;r=d;return g|0}case 9:{f=k[b>>2]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);n=k[e>>2]|0;k[c>>2]=e+4;k[n>>2]=f;g=1;r=d;return g|0}case 18:case 16:{f=b;n=k[f>>2]|0;e=k[f+4>>2]|0;f=(k[c>>2]|0)+(4-1)&~(4-1);l=k[f>>2]|0;k[c>>2]=f+4;f=l;k[f>>2]=n;k[f+4>>2]=e;g=1;r=d;return g|0}case 17:{e=b;f=k[e>>2]|0;n=k[e+4>>2]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);l=k[e>>2]|0;k[c>>2]=e+4;e=l;k[e>>2]=f;k[e+4>>2]=n;g=1;r=d;return g|0}case 11:case 10:case 5:{n=k[b>>2]|0;e=(k[c>>2]|0)+(4-1)&~(4-1);f=k[e>>2]|0;k[c>>2]=e+4;k[f>>2]=n;g=1;r=d;return g|0}case 12:{z=+p[b>>3];n=(k[c>>2]|0)+(4-1)&~(4-1);f=k[n>>2]|0;k[c>>2]=n+4;p[f>>3]=z;g=1;r=d;return g|0}default:{g=0;r=d;return g|0}}while(0)}b=k[h+(B*12|0)+8>>2]|0;B=(k[c>>2]|0)+(4-1)&~(4-1);h=k[B>>2]|0;k[c>>2]=B+4;k[h>>2]=b;g=1;r=d;return g|0}return 0}function Xb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,n=0,o=0,p=0,q=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;d=r;r=r+112|0;e=d+88|0;f=d+80|0;g=d+72|0;h=d+64|0;i=d+56|0;j=d+48|0;l=d+40|0;n=d+32|0;o=d+24|0;p=d+16|0;q=d+102|0;s=d+96|0;t=d+8|0;u=d+100|0;v=d+92|0;w=d;x=a+12|0;y=k[x>>2]|0;if(!(y&2048)){z=a+640|0;A=a+628|0;B=b;C=xb[k[z>>2]&63](k[A>>2]|0,k[B>>2]|0,k[B+4>>2]|0,0)|0;B=b;D=(C|0)==(k[B>>2]|0)?(L|0)==(k[B+4>>2]|0):0;if(!(y&524288)){if(D?(B=a+632|0,(nb[k[B>>2]&63](k[A>>2]|0,u,2)|0)==2):0){if(k[x>>2]&128)Qd(u);C=xb[k[z>>2]&63](k[A>>2]|0,(m[u>>1]|0)*12|0,0,1)|0;if(c){u=c;k[u>>2]=C;k[u+4>>2]=L}if((nb[k[B>>2]&63](k[A>>2]|0,v,4)|0)!=4){B=k[A>>2]|0;k[h>>2]=k[a>>2];vc(B,129029,129124,h);E=0;r=d;return E|0}if(k[x>>2]&128)Rd(v);h=b;k[h>>2]=k[v>>2];k[h+4>>2]=0;E=1;r=d;return E|0}h=k[A>>2]|0;k[i>>2]=k[a>>2];vc(h,129029,129089,i);E=0;r=d;return E|0}if(D?(D=a+632|0,(nb[k[D>>2]&63](k[A>>2]|0,w,8)|0)==8):0){if(k[x>>2]&128)Sd(w);i=w;w=k[i>>2]|0;h=k[i+4>>2]|0;if(h>>>0>0|(h|0)==0&w>>>0>65535){vc(k[A>>2]|0,129029,140364,f);E=0;r=d;return E|0}f=xb[k[z>>2]&63](k[A>>2]|0,(w&65535)*20|0,0,1)|0;if(c){w=c;k[w>>2]=f;k[w+4>>2]=L}if((nb[k[D>>2]&63](k[A>>2]|0,b,8)|0)!=8){D=k[A>>2]|0;k[e>>2]=k[a>>2];vc(D,129029,129124,e);E=0;r=d;return E|0}if(!(k[x>>2]&128)){E=1;r=d;return E|0}Sd(b);E=1;r=d;return E|0}e=k[A>>2]|0;k[g>>2]=k[a>>2];vc(e,129029,129089,g);E=0;r=d;return E|0}g=b;e=k[g>>2]|0;A=k[g+4>>2]|0;if(!(y&524288)){y=e+2|0;if(((e|0)==(e|0)&(((e|0)<0)<<31>>31|0)==(A|0)?!((e|0)>2147483645|(y|0)<2):0)?(g=a+616|0,(y|0)<=(k[g>>2]|0)):0){D=a+612|0;qe(q,(k[D>>2]|0)+e|0,2);if(k[x>>2]&128)Qd(q);w=((m[q>>1]|0)*12|0)+y|0;q=w+4|0;if(((y|0)>=0?!((w|0)>2147483643|(q|0)<4):0)?(q|0)<=(k[g>>2]|0):0){if(c){g=c;k[g>>2]=w;k[g+4>>2]=((w|0)<0)<<31>>31}qe(s,(k[D>>2]|0)+w|0,4);if(k[x>>2]&128)Rd(s);w=b;k[w>>2]=k[s>>2];k[w+4>>2]=0;E=1;r=d;return E|0}vc(k[a+628>>2]|0,129029,140395,o);E=0;r=d;return E|0}vc(k[a+628>>2]|0,129029,140364,p);p=b;k[p>>2]=0;k[p+4>>2]=0;E=0;r=d;return E|0}p=e+8|0;if(((e|0)==(e|0)&(((e|0)<0)<<31>>31|0)==(A|0)?!((e|0)>2147483639|(p|0)<8):0)?(A=a+616|0,(p|0)<=(k[A>>2]|0)):0){o=a+612|0;qe(t,(k[o>>2]|0)+e|0,8);if(k[x>>2]&128)Sd(t);e=t;t=k[e>>2]|0;w=k[e+4>>2]|0;if(w>>>0>0|(w|0)==0&t>>>0>65535){vc(k[a+628>>2]|0,129029,129050,l);E=0;r=d;return E|0}l=((t&65535)*20|0)+p|0;t=l+8|0;if(((p|0)>=0?!((l|0)>2147483639|(t|0)<8):0)?(t|0)<=(k[A>>2]|0):0){if(c){A=c;k[A>>2]=l;k[A+4>>2]=((l|0)<0)<<31>>31}qe(b,(k[o>>2]|0)+l|0,8);if(!(k[x>>2]&128)){E=1;r=d;return E|0}Sd(b);E=1;r=d;return E|0}vc(k[a+628>>2]|0,129029,140395,j);E=0;r=d;return E|0}vc(k[a+628>>2]|0,129029,140364,n);E=0;r=d;return E|0}function Yb(){return 84}function Zb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0;c=r;r=r+16|0;d=c;e=a+656|0;f=k[e>>2]|0;if((f|0)!=0?(g=a+660|0,h=k[g>>2]|0,(h|0)!=0):0){i=h;h=f;f=0;while(1){l=k[h+(f<<2)>>2]|0;if((j[l+24>>1]|0)==65?(m=k[l+28>>2]|0,(Rq(129700,m,4)|0)==0):0){ne(m);ne(l);n=k[g>>2]|0}else n=i;l=f+1|0;if(l>>>0>=n>>>0)break;i=n;h=k[e>>2]|0;f=l}ne(k[e>>2]|0);k[e>>2]=0;k[g>>2]=0}if(_b(a,k[b+12>>2]|0,k[b+8>>2]|0)|0){r=c;return}vc(k[a+628>>2]|0,129705,129722,d);r=c;return}function _b(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;d=r;r=r+48|0;e=d;f=d+8|0;g=d+4|0;h=a+664|0;k[h>>2]=0;i=a+656|0;j=k[i>>2]|0;if((j|0)!=0?(l=k[a+660>>2]|0,(l|0)!=0):0){m=De(a,j,l+c|0,4,129751)|0;k[i>>2]=m;n=m}else{m=Ee(a,c,4,129751)|0;k[i>>2]=m;n=m}if(!n){vc(k[a+628>>2]|0,129768,129785,e);o=0;r=d;return o|0}if(!c){p=a+660|0;q=n}else{n=a+660|0;a=f+8|0;e=0;do{m=b+(e*36|0)|0;l=k[m>>2]|0;j=f;s=j+36|0;do{k[j>>2]=0;j=j+4|0}while((j|0)<(s|0));k[g>>2]=f;j=k[h>>2]|0;if(!((j|0)!=0?(k[j>>2]|0)==(l|0):0))t=13;a:do if((t|0)==13){t=0;j=k[i>>2]|0;do if(j){k[f>>2]=l;k[a>>2]=0;s=Iq(g,j,k[n>>2]|0,4,19)|0;if(s){u=k[s>>2]|0;k[h>>2]=u;if(!u)break;else break a}else{k[h>>2]=0;break}}while(0);j=k[n>>2]|0;k[(k[i>>2]|0)+(j<<2)>>2]=m;k[n>>2]=j+1}while(0);e=e+1|0}while((e|0)!=(c|0));p=n;q=k[i>>2]|0}Jq(q,k[p>>2]|0,4,19);o=c;r=d;return o|0}function $b(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=r;r=r+48|0;e=d+4|0;f=d;g=e;h=g+36|0;do{k[g>>2]=0;g=g+4|0}while((g|0)<(h|0));k[f>>2]=e;g=a+664|0;h=k[g>>2]|0;if((h|0)!=0?(k[h>>2]|0)==(b|0):0){if(!c){i=h;r=d;return i|0}if((k[h+8>>2]|0)==(c|0)){i=h;r=d;return i|0}}h=k[a+656>>2]|0;if(!h){i=0;r=d;return i|0}k[e>>2]=b;k[e+8>>2]=c;c=Iq(f,h,k[a+660>>2]|0,4,19)|0;if(!c)j=0;else j=k[c>>2]|0;k[g>>2]=j;i=j;r=d;return i|0}function ac(a){a=a|0;var b=0;switch(a|0){case 7:case 6:case 2:case 1:case 0:{b=1;break}case 8:case 3:{b=2;break}case 13:case 11:case 9:case 4:{b=4;break}case 18:case 17:case 16:case 12:case 10:case 5:{b=8;break}default:b=0}return b|0}function bc(a){a=a|0;var b=0;switch(a|0){case 7:case 2:case 6:case 1:{b=1;break}case 8:case 3:{b=2;break}case 10:case 5:case 13:case 11:case 9:case 4:{b=4;break}case 18:case 17:case 16:case 12:{b=8;break}default:b=0}return b|0}function cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;c=r;r=r+48|0;d=c;e=c+8|0;f=c+4|0;g=e;h=g+36|0;do{k[g>>2]=0;g=g+4|0}while((g|0)<(h|0));k[f>>2]=e;g=a+664|0;h=k[g>>2]|0;if((h|0)!=0?(k[h>>2]|0)==(b|0):0){i=h;r=c;return i|0}h=k[a+656>>2]|0;do if(h){k[e>>2]=b;k[e+8>>2]=0;j=Iq(f,h,k[a+660>>2]|0,4,19)|0;if(!j){k[g>>2]=0;break}l=k[j>>2]|0;k[g>>2]=l;if(l){i=l;r=c;return i|0}}while(0);g=k[a+628>>2]|0;k[d>>2]=b;vc(g,129817,129834,d);i=0;r=c;return i|0}function dc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a=r;r=r+16|0;d=a;e=me(36)|0;if(!e){f=0;r=a;return f|0}pe(e,0,36);k[e>>2]=b;j[e+4>>1]=-3;j[e+6>>1]=-3;k[e+8>>2]=c;k[e+12>>2]=0;do switch(c|0){case 7:case 1:{k[e+16>>2]=40;k[e+20>>2]=40;break}case 2:{k[e+16>>2]=39;k[e+20>>2]=39;break}case 3:{k[e+16>>2]=42;k[e+20>>2]=42;break}case 4:{k[e+16>>2]=44;k[e+20>>2]=44;break}case 11:case 10:case 5:{k[e+16>>2]=48;k[e+20>>2]=48;break}case 6:{k[e+16>>2]=41;k[e+20>>2]=41;break}case 8:{k[e+16>>2]=43;k[e+20>>2]=43;break}case 9:{k[e+16>>2]=45;k[e+20>>2]=45;break}case 12:{k[e+16>>2]=49;k[e+20>>2]=49;break}case 18:case 13:{k[e+16>>2]=50;k[e+20>>2]=50;break}case 16:{k[e+16>>2]=46;k[e+20>>2]=46;break}case 17:{k[e+16>>2]=47;k[e+20>>2]=47;break}default:{k[e+16>>2]=0;k[e+20>>2]=0}}while(0);j[e+24>>1]=65;i[e+26>>0]=1;i[e+27>>0]=1;c=me(32)|0;k[e+28>>2]=c;if(!c){ne(e);f=0;r=a;return f|0}else{k[e+32>>2]=0;k[d>>2]=b;Aq(c,32,129867,d)|0;f=e;r=a;return f|0}return 0}function ec(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=k[a>>2]|0;a=k[b>>2]|0;b=k[c>>2]|0;d=k[a>>2]|0;if((b|0)!=(d|0)){e=b-d|0;return e|0}d=k[c+8>>2]|0;if(!d){e=0;return e|0}e=(k[a+8>>2]|0)-d|0;return e|0}function fc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=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,M=0,N=0,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,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,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,gb=0,hb=0;b=r;r=r+320|0;c=b+288|0;d=b+280|0;e=b+272|0;f=b+264|0;g=b+256|0;h=b+248|0;i=b+240|0;l=b+232|0;n=b+224|0;o=b+216|0;p=b+208|0;q=b+200|0;s=b+192|0;t=b+184|0;u=b+176|0;v=b+168|0;w=b+160|0;x=b+152|0;y=b+144|0;z=b+136|0;A=b+120|0;B=b+112|0;C=b+104|0;D=b+96|0;E=b+88|0;F=b+80|0;G=b+72|0;H=b+64|0;I=b+56|0;J=b+48|0;K=b+40|0;M=b+32|0;N=b+24|0;O=b+16|0;P=b+8|0;Q=b+300|0;R=b+308|0;S=b+306|0;T=b+296|0;U=b+292|0;V=b+304|0;W=a+24|0;X=W;Y=k[X>>2]|0;Z=k[X+4>>2]|0;X=a+16|0;k[X>>2]=Y;k[X+4>>2]=Z;if((Y|0)==0&(Z|0)==0){_=0;r=b;return _|0}X=a+38|0;$=j[X>>1]|0;switch($<<16>>16){case -1:{vc(k[a+628>>2]|0,132827,132846,b);_=0;r=b;return _|0}case 0:break;default:aa=3}a:do if((aa|0)==3?(ba=k[a+32>>2]|0,(ba|0)!=0):0){ca=0;da=0;while(1){ea=ba+(ca<<3)|0;fa=(da&65535)+1<<16>>16;if((k[ea>>2]|0)==(Y|0)?(k[ea+4>>2]|0)==(Z|0):0){_=0;break}if((fa&65535)<($&65535)){ca=fa&65535;da=da+1|0}else break a}r=b;return _|0}while(0);da=$+1<<16>>16;j[X>>1]=da;$=a+36|0;if((da&65535)>(m[$>>1]|0)){ca=a+32|0;ba=De(a,k[ca>>2]|0,da&65535,16,132893)|0;if(!ba){_=0;r=b;return _|0}fa=j[X>>1]|0;if(fa<<16>>16<0)ga=-1;else ga=(fa&65535)<<1&65535;j[$>>1]=ga;k[ca>>2]=ba;ia=fa;ja=ba}else{ia=da;ja=k[a+32>>2]|0}da=ja+((ia&65535)+-1<<3)|0;k[da>>2]=Y;k[da+4>>2]=Z;qb[k[a+564>>2]&127](a);Z=a+448|0;j[Z>>1]=(j[Z>>1]|0)+1<<16>>16;Z=W;da=k[Z>>2]|0;Y=k[Z+4>>2]|0;Z=hc(a,da,Y,Q,W)|0;if(!(Z<<16>>16)){W=k[a+628>>2]|0;ia=P;k[ia>>2]=da;k[ia+4>>2]=Y;vc(W,132906,132924,P);_=0;r=b;return _|0}P=0;W=0;Y=k[Q>>2]|0;while(1){ia=m[Y>>1]|0;if(ia>>>0<(P&65535)>>>0){aa=17;break}W=W+1<<16>>16;if((W&65535)>=(Z&65535))break;else{P=ia+1|0;Y=Y+24|0}}if((aa|0)==17)ie(k[a+628>>2]|0,132963,132991,O);O=0;Y=k[Q>>2]|0;do{P=Y;Y=Y+24|0;O=O+1|0;W=O&65535;if((W&65535)<(Z&65535)){ia=P;da=Y;ja=W;while(1){ba=ia+24|0;if((j[P>>1]|0)==(j[ba>>1]|0))j[ba>>1]=0;ja=ja+1<<16>>16;if((ja&65535)>=(Z&65535))break;else{ba=da;da=da+24|0;ia=ba}}}}while(W<<16>>16!=Z<<16>>16);Y=a+12|0;k[Y>>2]=k[Y>>2]&-1048641;Rb(a);Tb(a)|0;k[N>>2]=1;Ob(a,284,N)|0;O=k[Q>>2]|0;ia=0;while(1){if((j[O>>1]|0)==277){ka=O;la=O;aa=29;break}ia=ia+1<<16>>16;if((ia&65535)>=(Z&65535)){aa=32;break}else O=O+24|0}if((aa|0)==29)if(la){if(ic(a,la,0)|0){j[ka>>1]=0;aa=32}}else aa=32;b:do if((aa|0)==32){ka=k[Q>>2]|0;la=0;while(1){if((j[ka>>1]|0)==259){ma=ka;na=ka;aa=35;break}la=la+1<<16>>16;if((la&65535)>=(Z&65535)){aa=48;break}else ka=ka+24|0}if((aa|0)==35)if(!na)aa=48;else{ka=jc(a,na,R)|0;if((ka|0)==1){la=na+8|0;W=k[la+4>>2]|0;O=a+98|0;if(!(W>>>0<0|((W|0)==0?(k[la>>2]|0)>>>0<(m[O>>1]|0)>>>0:0))){la=kc(a,na,N)|0;if(!la){W=k[N>>2]|0;ia=j[O>>1]|0;O=j[W>>1]|0;j[R>>1]=O;da=W;ja=ia;while(1){ja=ja+-1<<16>>16;da=da+2|0;if(!(ja<<16>>16)){oa=0;break}if((j[da>>1]|0)!=O<<16>>16){oa=5;break}}ne(W);pa=oa}else pa=la}else pa=1;qa=pa}else qa=ka;if(qa){lc(a,qa,132906,136291,0);break}k[M>>2]=m[R>>1];if(!(Ob(a,259,M)|0))break;j[ma>>1]=0}if((aa|0)==48?(k[K>>2]=1,(Ob(a,259,K)|0)==0):0)break;O=a+660|0;da=a+628|0;ja=a+656|0;ia=0;P=k[Q>>2]|0;c:while(1){ba=j[P>>1]|0;d:do if(ba<<16>>16){fa=k[O>>2]|0;e:do if(fa){ca=k[ja>>2]|0;ga=ba&65535;$=-1;X=fa;while(1){ea=($+X|0)/2|0;ra=k[k[ca+(ea<<2)>>2]>>2]|0;if((ra|0)==(ga|0)){sa=ea;break}ta=ra>>>0<ga>>>0;$=ta?ea:$;X=ta?X:ea;if(($+1|0)==(X|0)){ua=ga;aa=59;break e}}while(1){if(!sa){va=0;wa=ba;xa=ca;break e}X=sa+-1|0;if((k[k[ca+(X<<2)>>2]>>2]|0)==(ga|0))sa=X;else{ya=sa;break}}if((ya|0)==-1){ua=ga;aa=59}else{va=ya;wa=ba;xa=ca}}else{ua=ba&65535;aa=59}while(0);f:do if((aa|0)==59){aa=0;fa=k[da>>2]|0;k[J>>2]=ua;k[J+4>>2]=ua;ie(fa,132906,133054,J);if(!(_b(a,dc(a,m[P>>1]|0,m[P+2>>1]|0)|0,1)|0)){fa=k[da>>2]|0;X=m[P>>1]|0;k[I>>2]=X;k[I+4>>2]=X;ie(fa,132906,133099,I);j[P>>1]=0;break d}fa=k[O>>2]|0;if(!fa){aa=68;break c}X=j[P>>1]|0;$=k[ja>>2]|0;ea=X&65535;ta=-1;ra=fa;while(1){fa=(ta+ra|0)/2|0;za=k[k[$+(fa<<2)>>2]>>2]|0;if((za|0)==(ea|0)){Aa=fa;break}Ba=za>>>0<ea>>>0;ta=Ba?fa:ta;ra=Ba?ra:fa;if((ta+1|0)==(ra|0)){aa=68;break c}}while(1){if(!Aa){va=0;wa=X;xa=$;break f}ra=Aa+-1|0;if((k[k[$+(ra<<2)>>2]>>2]|0)==(ea|0))Aa=ra;else{Ca=Aa;break}}if((Ca|0)==-1){aa=68;break c}else{va=Ca;wa=X;xa=$}}while(0);ea=wa&65535;if(wa<<16>>16){ra=j[(k[xa+(va<<2)>>2]|0)+24>>1]|0;if(!(ra<<16>>16)){j[P>>1]=0;break}g:do if((ea|0)>=322){if((ea|0)<325)switch(ea|0){case 324:{aa=73;break g;break}case 322:case 323:{break g;break}default:break d}if((ea|0)<32997)switch(ea|0){case 325:{aa=73;break g;break}case 338:{break g;break}default:break d}else switch(ea|0){case 32998:case 32997:{break g;break}default:break d}}else switch(ea|0){case 279:case 273:{aa=73;break}case 278:case 284:case 257:case 256:break;default:break d}while(0);if((aa|0)==73){aa=0;ea=a+40+(((ra&65535)>>>5&65535)<<2)|0;k[ea>>2]=1<<(ra&31)|k[ea>>2];break}if(!(ic(a,P,0)|0))break b;j[P>>1]=0}}while(0);ia=ia+1<<16>>16;if((ia&65535)>=(Z&65535)){aa=77;break}else P=P+24|0}if((aa|0)==68)Ja(133153,133171,3535,132906);else if((aa|0)==77){P=a+88|0;h:do if((j[P>>1]|0)==6?(ia=a+126|0,(j[ia>>1]|0)==2):0){ja=k[Q>>2]|0;O=ja;da=0;while(1){if((j[O>>1]|0)==273){Da=O;break}da=da+1<<16>>16;if((da&65535)>=(Z&65535))break h;else O=O+24|0}if((Da|0)!=0?(O=Da+8|0,(k[O>>2]|0)==1&(k[O+4>>2]|0)==0):0){O=ja;da=0;while(1){if((j[O>>1]|0)==279){Ea=O;break}da=da+1<<16>>16;if((da&65535)>=(Z&65535))break h;else O=O+24|0}if((Ea|0)!=0?(O=Ea+8|0,(k[O>>2]|0)==1&(k[O+4>>2]|0)==0):0){j[ia>>1]=1;ie(k[a+628>>2]|0,132906,133185,H)}}}while(0);O=a+40|0;da=k[O>>2]|0;if(!(da&2)){ja=k[a+628>>2]|0;k[G>>2]=133331;vc(ja,133269,133285,G);break}if(!(da&4)){da=Jd(a)|0;k[a+68>>2]=k[a+56>>2];k[a+72>>2]=k[a+100>>2];k[a+76>>2]=k[a+64>>2];Fa=da;Ga=k[Y>>2]&-1025}else{da=be(a)|0;Fa=da;Ga=k[Y>>2]|1024}da=a+168|0;k[da>>2]=Fa;k[Y>>2]=Ga;if(!Fa){ja=k[a+628>>2]|0;k[F>>2]=(Ga&1024|0)!=0?133343:133349;vc(ja,132906,133356,F);break}ja=a+164|0;k[ja>>2]=Fa;ka=a+126|0;if((j[ka>>1]|0)==2)k[ja>>2]=(Fa>>>0)/((m[a+98>>1]|0)>>>0)|0;la=k[O>>2]|0;do if(!(la&33554432)){W=Ga&1024;if((j[P>>1]|0)==6&(W|0)==0)if((Fa|0)==1){k[O>>2]=la|33554432;break}else Ha=0;else Ha=W;W=k[a+628>>2]|0;k[E>>2]=(Ha|0)!=0?133388:133400;vc(W,133269,133285,E);break b}while(0);la=a+98|0;W=a+172|0;ba=a+176|0;ea=a+628|0;ta=a+84|0;ca=0;ga=0;fa=k[Q>>2]|0;i:while(1){Ba=j[fa>>1]|0;za=Ba&65535;j:do if((za|0)<301){switch(za|0){case 0:{Ia=ca;break j;break}case 258:case 281:case 280:{aa=105;break j;break}case 273:{aa=126;break j;break}case 279:{aa=127;break j;break}case 255:break;default:{aa=141;break j}}if((jc(a,fa,V)|0)==0?(Ka=j[V>>1]|0,La=Ka<<16>>16==2?1:Ka<<16>>16==3?2:0,(La|0)!=0):0){k[z>>2]=La;Ob(a,254,z)|0;Ia=ca}else Ia=ca}else{if((za|0)>=339){k:do if((za|0)>=341)if((za|0)<32996)switch(za|0){case 341:{break k;break}default:{aa=141;break j}}else switch(za|0){case 32996:{aa=105;break j;break}default:{aa=141;break j}}else switch(za|0){case 339:{aa=105;break j;break}case 340:break;default:{aa=141;break j}}while(0);ra=fa+8|0;if(!((k[ra+4>>2]|0)==0?(k[ra>>2]|0)==(m[la>>1]|0):0)){Ma=Ba;Na=1;break i}ra=mc(a,fa,T)|0;if(ra){Oa=ra;Pa=fa;aa=121;break i}ra=k[Y>>2]|0;k[Y>>2]=ra|4194304;La=m[fa>>1]|0;Ka=k[T>>2]|0;k[C>>2]=Ka;Qa=Ob(a,La,C)|0;k[Y>>2]=ra;ne(Ka);if(!Qa)break b;else{Ia=ca;break}}switch(za|0){case 324:{aa=126;break j;break}case 325:{aa=127;break j;break}case 301:case 320:break;default:{aa=141;break j}}k[U>>2]=0;if(!ca){Qa=cc(a,za)|0;Ka=k[ea>>2]|0;if(!Qa)Ra=133413;else Ra=k[Qa+28>>2]|0;k[B>>2]=Ra;ie(Ka,132906,133429,B);Ia=0;break}Ka=m[ta>>1]|0;Qa=1<<Ka;ra=fa+8|0;La=k[ra>>2]|0;Sa=k[ra+4>>2]|0;ra=Ba<<16>>16==301&((La|0)==(Qa|0)&(Sa|0)==0);Ta=ra?0:Qa;if((Sa|0)==0?(La|0)==((ra?Qa:3<<Ka)|0):0){Ka=kc(a,fa,U)|0;Qa=m[fa>>1]|0;if(!Ka){ra=k[U>>2]|0;k[A>>2]=ra;k[A+4>>2]=ra+(Ta<<1);k[A+8>>2]=ra+(Ta<<1<<1);Ob(a,Qa,A)|0;ne(ra);Ia=ca;break}else{Ua=Qa;Va=Ka}}else{Ua=za;Va=1}Ka=cc(a,Ua)|0;if(!Ka)Wa=133413;else Wa=k[Ka+28>>2]|0;lc(a,Va,132906,Wa,1);Ia=ca}while(0);if((aa|0)==105){aa=0;za=jc(a,fa,S)|0;if((za|0)==1){Ba=fa+8|0;ia=k[Ba+4>>2]|0;if(!(ia>>>0<0|((ia|0)==0?(k[Ba>>2]|0)>>>0<(m[la>>1]|0)>>>0:0))){Ba=kc(a,fa,N)|0;if(!Ba){ia=k[N>>2]|0;Ka=j[la>>1]|0;Qa=j[ia>>1]|0;j[S>>1]=Qa;ra=ia;Ta=Ka;while(1){Ta=Ta+-1<<16>>16;ra=ra+2|0;if(!(Ta<<16>>16)){Xa=0;break}if((j[ra>>1]|0)!=Qa<<16>>16){Xa=5;break}}ne(ia);Ya=Xa}else Ya=Ba}else Ya=1;Za=Ya}else Za=za;Qa=m[fa>>1]|0;if(Za){_a=Qa;$a=Za;aa=114;break}k[D>>2]=m[S>>1];if(!(Ob(a,Qa,D)|0))break b;Ia=(j[fa>>1]|0)==258?1:ca}else if((aa|0)==126){aa=0;if(!(nc(a,fa,k[da>>2]|0,W)|0))break b;else Ia=ca}else if((aa|0)==127){aa=0;if(!(nc(a,fa,k[da>>2]|0,ba)|0))break b;else Ia=ca}else if((aa|0)==141){aa=0;ic(a,fa,1)|0;Ia=ca}ga=ga+1<<16>>16;if((ga&65535)>=(Z&65535)){aa=143;break}else{ca=Ia;fa=fa+24|0}}if((aa|0)==114){fa=cc(a,_a)|0;if(!fa)ab=133413;else ab=k[fa+28>>2]|0;lc(a,$a,132906,ab,0);break}else if((aa|0)==121){Ma=j[Pa>>1]|0;Na=Oa}else if((aa|0)==143){l:do if((j[P>>1]|0)==6){if(!(k[O>>2]&256)){ie(k[a+628>>2]|0,132906,133475,y);k[x>>2]=6;if(!(Ob(a,262,x)|0))break b}else{fa=a+90|0;if((j[fa>>1]|0)==2){j[fa>>1]=6;ie(k[a+628>>2]|0,132906,133526,w)}}fa=k[O>>2]|0;if(!(fa&64)){ie(k[a+628>>2]|0,132906,133605,v);k[u>>2]=8;if(!(Ob(a,258,u)|0))break b;bb=k[O>>2]|0}else bb=fa;if(!(bb&65536)){fa=a+90|0;ca=j[fa>>1]|0;if(ca<<16>>16==2){ie(k[a+628>>2]|0,132906,133662,t);k[s>>2]=3;if(!(Ob(a,277,s)|0))break b;cb=j[fa>>1]|0}else cb=ca;switch(cb<<16>>16){case 6:{ie(k[a+628>>2]|0,132906,133738,q);k[p>>2]=3;if(!(Ob(a,277,p)|0))break b;else break l;break}case 1:case 0:{k[o>>2]=1;if(!(Ob(a,277,o)|0))break b;else break l;break}default:break l}}}while(0);ca=a+90|0;do if((j[ca>>1]|0)==3?(k[O>>2]&67108864|0)==0:0){if((m[a+84>>1]|0)<=7){fa=k[a+628>>2]|0;k[n>>2]=133814;vc(fa,133269,133285,n);break b}if((j[a+98>>1]|0)==3){j[ca>>1]=2;break}else{j[ca>>1]=1;break}}while(0);fa=j[P>>1]|0;m:do if(fa<<16>>16!=6){if(!(k[O>>2]&16777216)){switch(j[ka>>1]|0){case 1:{if((k[da>>2]|0)>>>0>1)aa=170;else aa=171;break}case 2:{if((k[da>>2]|0)==(m[a+98>>1]|0))aa=171;else aa=170;break}default:aa=171}if((aa|0)==170){ga=k[a+628>>2]|0;k[l>>2]=133823;vc(ga,133269,133285,l);break b}else if((aa|0)==171){ie(k[a+628>>2]|0,132906,133839,i);if((oc(a,k[Q>>2]|0,Z)|0)<0)break b;else break}}n:do if((k[da>>2]|0)==1?(ga=a+172|0,ba=k[ga>>2]|0,!((k[ba>>2]|0)==0&(k[ba+4>>2]|0)==0)):0){ba=a+176|0;W=k[ba>>2]|0;la=k[W>>2]|0;ta=k[W+4>>2]|0;do if(!((la|0)==0&(ta|0)==0)){if(fa<<16>>16==1?(W=ub[k[a+648>>2]&63](k[a+628>>2]|0)|0,ea=k[ga>>2]|0,Qa=pr(W|0,L|0,k[ea>>2]|0,k[ea+4>>2]|0)|0,ea=L,ta>>>0>ea>>>0|(ta|0)==(ea|0)&la>>>0>Qa>>>0):0)break;if(k[a+8>>2]|0)break n;if((j[P>>1]|0)!=1)break n;Qa=k[ba>>2]|0;ea=k[Qa>>2]|0;W=k[Qa+4>>2]|0;Qa=Ld(a)|0;ra=Dr(k[a+60>>2]|0,0,Qa|0,L|0)|0;Qa=L;if(!(W>>>0<Qa>>>0|(W|0)==(Qa|0)&ea>>>0<ra>>>0))break n}while(0);ie(k[a+628>>2]|0,132906,133928,h);if((oc(a,k[Q>>2]|0,Z)|0)<0)break b;else break m}while(0);if((j[ka>>1]|0)==1?(k[da>>2]|0)>>>0>2:0){if((j[P>>1]|0)!=1)break;za=k[a+176>>2]|0;Ba=za;ia=k[Ba>>2]|0;ba=k[Ba+4>>2]|0;Ba=za+8|0;za=k[Ba>>2]|0;la=k[Ba+4>>2]|0;if((za|0)==0&(la|0)==0|((ia|0)==0&(ba|0)==0|(ia|0)==(za|0)&(ba|0)==(la|0)))break;ie(k[a+628>>2]|0,132906,134001,g);if((oc(a,k[Q>>2]|0,Z)|0)<0)break b}}while(0);fa=k[Q>>2]|0;if(fa){ne(fa);k[Q>>2]=0}do if(!(k[O>>2]&524288)){fa=j[a+84>>1]|0;if((fa&65535)>15){j[a+106>>1]=-1;break}else{j[a+106>>1]=(1<<(fa&65535))+65535;break}}while(0);O=k[da>>2]|0;o:do if(O>>>0>1){fa=a+180|0;k[fa>>2]=1;la=k[a+172>>2]|0;ba=la;za=k[ba+4>>2]|0;ia=k[ba>>2]|0;ba=1;while(1){Ba=la+(ba<<3)|0;ta=ia;ia=k[Ba>>2]|0;ga=za;za=k[Ba+4>>2]|0;ba=ba+1|0;if(ga>>>0>za>>>0|(ga|0)==(za|0)&ta>>>0>ia>>>0)break;if(ba>>>0>=O>>>0)break o}k[fa>>2]=0}while(0);ub[k[a+504>>2]&63](a)|0;do if((j[ka>>1]|0)==1){if((k[da>>2]|0)!=1)break;if((j[P>>1]|0)!=1)break;O=k[Y>>2]|0;if((O&33792|0)!=32768)break;ba=a+176|0;ia=k[ba>>2]|0;if(!ia){_=0;r=b;return _|0}za=ia;ia=k[za>>2]|0;la=k[za+4>>2]|0;za=a+172|0;ta=k[za>>2]|0;ga=k[ta>>2]|0;Ba=k[ta+4>>2]|0;if((O&16384|0)==0&(j[ca>>1]|0)==6)db=m[a+194>>1]|0;else db=1;O=ee(a,db)|0;ta=L;if(ta>>>0>0|(ta|0)==0&O>>>0>8192){eb=O;fb=ta;gb=db}else{if((O|0)==0&(ta|0)==0)break;ra=Er(8192,0,O|0,ta|0)|0;ea=ha(ra,db)|0;Qa=Dr(ra|0,L|0,O|0,ta|0)|0;eb=Qa;fb=L;gb=ea}if(gb>>>0>=(k[a+100>>2]|0)>>>0)break;ea=sr(ia|0,la|0,-1,-1)|0;Qa=sr(ea|0,L|0,eb|0,fb|0)|0;ea=Er(Qa|0,L|0,eb|0,fb|0)|0;Qa=sr(ea|0,L|0,-1,-1)|0;ta=L;if(ta>>>0>0|(ta|0)==0&Qa>>>0>4294967294)break;Qa=Ee(a,ea,8,134074)|0;ta=Ee(a,ea,8,134110)|0;O=(Qa|0)==0;ra=(ta|0)==0;if(!(O|ra)){if(ea){W=fb;Ta=la;la=eb;Ka=ia;ia=ga;ga=Ba;Ba=0;while(1){La=W>>>0>Ta>>>0|(W|0)==(Ta|0)&la>>>0>Ka>>>0;la=La?Ka:la;W=La?Ta:W;La=Qa+(Ba<<3)|0;k[La>>2]=la;k[La+4>>2]=W;La=ta+(Ba<<3)|0;k[La>>2]=ia;k[La+4>>2]=ga;ia=sr(la|0,W|0,ia|0,ga|0)|0;ga=L;Ka=pr(Ka|0,Ta|0,la|0,W|0)|0;Ba=Ba+1|0;if((Ba|0)==(ea|0))break;else Ta=L}}k[da>>2]=ea;k[ja>>2]=ea;k[f>>2]=gb;Ob(a,278,f)|0;ne(k[ba>>2]|0);ne(k[za>>2]|0);k[ba>>2]=Qa;k[za>>2]=ta;k[a+180>>2]=1;break}if(!O)ne(Qa);if(ra)break;ne(ta)}while(0);k[Y>>2]=k[Y>>2]&-2097161;k[a+444>>2]=-1;k[a+452>>2]=-1;k[a+488>>2]=-1;k[a+492>>2]=-1;ja=a+496|0;k[ja>>2]=-1;da=Pd(a)|0;k[a+580>>2]=da;if(!da){vc(k[a+628>>2]|0,132906,134143,e);_=0;r=b;return _|0}if(!(k[Y>>2]&1024)){if(Nd(a)|0){_=1;r=b;return _|0}vc(k[a+628>>2]|0,132906,134205,c);_=0;r=b;return _|0}else{da=ge(a)|0;k[ja>>2]=da;if(da){_=1;r=b;return _|0}vc(k[a+628>>2]|0,132906,134176,d);_=0;r=b;return _|0}}da=cc(a,Ma&65535)|0;if(!da)hb=133413;else hb=k[da+28>>2]|0;lc(a,Na,132906,hb,0);break}}while(0);hb=k[Q>>2]|0;if(!hb){_=0;r=b;return _|0}ne(hb);_=0;r=b;return _|0}function gc(a){a=a|0;return 1}function hc(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,n=0,o=0,p=0,q=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,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;f=r;r=r+128|0;g=f+112|0;h=f+104|0;n=f+96|0;o=f+88|0;p=f+80|0;q=f+72|0;s=f+64|0;t=f+56|0;u=f+48|0;v=f+40|0;w=f+32|0;x=f+24|0;y=f+16|0;z=f+124|0;A=f+8|0;B=f+120|0;C=f;D=f+116|0;if(!d)Ja(135626,133171,4453,135631);E=a+16|0;F=E;k[F>>2]=b;k[F+4>>2]=c;c=(e|0)!=0;if(c){F=e;k[F>>2]=0;k[F+4>>2]=0}F=a+12|0;b=k[F>>2]|0;do if(!(b&2048)){G=a+628|0;H=E;I=xb[k[a+640>>2]&63](k[G>>2]|0,k[H>>2]|0,k[H+4>>2]|0,0)|0;H=E;if(!((I|0)==(k[H>>2]|0)?(L|0)==(k[H+4>>2]|0):0)){H=k[G>>2]|0;k[y>>2]=k[a>>2];vc(H,135631,140644,y);J=0;r=f;return J|0}H=a+632|0;I=k[H>>2]|0;K=k[G>>2]|0;do if(!(k[F>>2]&524288)){if((nb[I&63](K,z,2)|0)!=2){M=k[G>>2]|0;k[x>>2]=k[a>>2];vc(M,135631,140684,x);J=0;r=f;return J|0}if(k[F>>2]&128)Qd(z);M=j[z>>1]|0;if((M&65535)>4096){vc(k[G>>2]|0,135631,135650,w);J=0;r=f;return J|0}else{N=M;O=12}}else{if((nb[I&63](K,A,8)|0)!=8){M=k[G>>2]|0;k[v>>2]=k[a>>2];vc(M,135631,140684,v);J=0;r=f;return J|0}if(k[F>>2]&128)Sd(A);M=A;P=k[M>>2]|0;Q=k[M+4>>2]|0;if(!(Q>>>0>0|(Q|0)==0&P>>>0>4096)){Q=P&65535;j[z>>1]=Q;N=Q;O=20;break}vc(k[G>>2]|0,135631,135650,u);J=0;r=f;return J|0}while(0);K=Ee(a,N&65535,O,135730)|0;if(!K){J=0;r=f;return J|0}I=ha(m[z>>1]|0,O)|0;Q=nb[k[H>>2]&63](k[G>>2]|0,K,I)|0;if((Q|0)!=(ha(m[z>>1]|0,O)|0)){Q=k[G>>2]|0;k[t>>2]=k[a>>2];vc(Q,135631,135753,t);ne(K);J=0;r=f;return J|0}if(c){Q=k[H>>2]|0;I=k[G>>2]|0;if(k[F>>2]&524288){if((nb[Q&63](I,e,8)|0)!=8){P=e;k[P>>2]=0;k[P+4>>2]=0}if(!(k[F>>2]&128)){R=K;break}Sd(e);R=K;break}if((nb[Q&63](I,B,4)|0)!=4)k[B>>2]=0;if(k[F>>2]&128)Rd(B);I=e;k[I>>2]=k[B>>2];k[I+4>>2]=0;R=K}else R=K}else{K=E;I=k[K>>2]|0;if(!((I|0)==(I|0)?(((I|0)<0)<<31>>31|0)==(k[K+4>>2]|0):0)){vc(k[a+628>>2]|0,135631,135789,s);J=0;r=f;return J|0}do if(!(b&524288)){K=I+2|0;if(!((I|0)>2147483645|(K|0)<2)?(K|0)<=(k[a+616>>2]|0):0){qe(z,(k[a+612>>2]|0)+I|0,2);if(k[F>>2]&128)Qd(z);Q=j[z>>1]|0;if((Q&65535)<=4096){S=Q;T=12;U=K;break}vc(k[a+628>>2]|0,135631,135650,p);J=0;r=f;return J|0}vc(k[a+628>>2]|0,135631,135789,q);J=0;r=f;return J|0}else{K=I+8|0;if(!((I|0)>2147483639|(K|0)<8)?(K|0)<=(k[a+616>>2]|0):0){qe(C,(k[a+612>>2]|0)+I|0,8);if(k[F>>2]&128)Sd(C);Q=C;P=k[Q>>2]|0;M=k[Q+4>>2]|0;if(!(M>>>0>0|(M|0)==0&P>>>0>4096)){M=P&65535;j[z>>1]=M;S=M;T=20;U=K;break}vc(k[a+628>>2]|0,135631,135650,n);J=0;r=f;return J|0}vc(k[a+628>>2]|0,135631,135789,o);J=0;r=f;return J|0}while(0);if(!(S<<16>>16)){vc(k[a+628>>2]|0,135631,135823,h);J=0;r=f;return J|0}I=Ee(a,S&65535,T,135730)|0;if(!I){J=0;r=f;return J|0}G=ha(m[z>>1]|0,T)|0;H=G+U|0;if(!((H|0)<(U|0)|(H|0)<(G|0))?(K=a+616|0,(H|0)<=(k[K>>2]|0)):0){H=a+612|0;qe(I,(k[H>>2]|0)+U|0,G);if(!c){R=I;break}G=(ha(m[z>>1]|0,T)|0)+U|0;M=k[F>>2]|0;if(M&524288){P=G+8|0;if(!((G|0)>2147483639|(P|0)<8)?(P|0)<=(k[K>>2]|0):0){qe(e,(k[H>>2]|0)+G|0,8);V=k[F>>2]|0}else{P=e;k[P>>2]=0;k[P+4>>2]=0;V=M}if(!(V&128)){R=I;break}Sd(e);R=I;break}P=G+4|0;if(!((G|0)>2147483643|(P|0)<4)?(P|0)<=(k[K>>2]|0):0){qe(D,(k[H>>2]|0)+G|0,4);W=k[F>>2]|0}else{k[D>>2]=0;W=M}if(W&128)Rd(D);M=e;k[M>>2]=k[D>>2];k[M+4>>2]=0;R=I;break}vc(k[a+628>>2]|0,135631,135898,g);ne(I);J=0;r=f;return J|0}while(0);g=Ee(a,m[z>>1]|0,24,135730)|0;if(!g){ne(R);J=0;r=f;return J|0}if(j[z>>1]|0){a=R;D=g;e=0;while(1){W=k[F>>2]|0;if(!(W&128))X=W;else{Qd(a);X=k[F>>2]|0}j[D>>1]=j[a>>1]|0;W=a+2|0;if(!(X&128))Y=X;else{Qd(W);Y=k[F>>2]|0}j[D+2>>1]=j[W>>1]|0;W=a+4|0;V=(Y&128|0)!=0;if(!(Y&524288)){if(V)Rd(W);U=D+8|0;k[U>>2]=k[W>>2];k[U+4>>2]=0;k[D+16>>2]=k[a+8>>2];Z=a+12|0}else{if(V)Sd(W);V=i[W>>0]|0;W=i[a+5>>0]|0;U=i[a+6>>0]|0;T=i[a+7>>0]|0;c=i[a+8>>0]|0;S=i[a+9>>0]|0;h=i[a+10>>0]|0;o=rr(l[a+11>>0]|0,0,56)|0;n=L;C=rr(h&255|0,0,48)|0;h=L;q=rr(S&255|0,0,40)|0;S=L;p=rr(T&255|0,0,24)|0;T=L;b=rr(U&255|0,0,16)|0;U=L;s=rr(W&255|0,0,8)|0;W=D+8|0;k[W>>2]=s|V&255|b|p|q|C|o;k[W+4>>2]=L|U|T|c&255|S|h|n;n=i[a+12>>0]|0;h=i[a+13>>0]|0;S=i[a+14>>0]|0;c=i[a+15>>0]|0;T=i[a+16>>0]|0;U=i[a+17>>0]|0;W=i[a+18>>0]|0;o=rr(l[a+19>>0]|0,0,56)|0;C=L;q=rr(W&255|0,0,48)|0;W=L;p=rr(U&255|0,0,40)|0;U=L;b=rr(c&255|0,0,24)|0;c=L;V=rr(S&255|0,0,16)|0;S=L;s=rr(h&255|0,0,8)|0;h=D+16|0;k[h>>2]=s|n&255|V|b|p|q|o;k[h+4>>2]=L|S|c|T&255|U|W|C;Z=a+20|0}e=e+1<<16>>16;if((e&65535)>=(m[z>>1]|0))break;else{a=Z;D=D+24|0}}}ne(R);k[d>>2]=g;J=j[z>>1]|0;r=f;return J|0}function ic(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,q=0,s=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,M=0,N=0,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,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,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,yb=0,zb=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,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0.0,bc=0,cc=0,dc=0,ec=0.0,fc=0,gc=0,hc=0,ic=0,nc=0,oc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0.0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0.0,Oc=0.0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0;d=r;r=r+496|0;e=d+376|0;f=d+368|0;g=d+360|0;h=d+352|0;n=d+344|0;q=d+336|0;s=d+328|0;u=d+320|0;v=d+312|0;w=d+304|0;x=d+296|0;y=d+288|0;z=d+280|0;A=d+272|0;B=d+264|0;C=d+256|0;D=d+248|0;E=d+240|0;F=d+232|0;G=d+224|0;H=d+216|0;I=d+208|0;J=d+200|0;K=d+192|0;M=d+176|0;N=d+168|0;O=d+160|0;P=d+152|0;Q=d+144|0;R=d+136|0;S=d+128|0;T=d+120|0;U=d+112|0;V=d+104|0;W=d+96|0;X=d+88|0;Y=d+80|0;Z=d+72|0;_=d+64|0;$=d+484|0;aa=d+488|0;ba=d+456|0;ca=d+32|0;da=d+24|0;ea=d+16|0;fa=d+8|0;ga=d;ha=d+480|0;ia=d+490|0;ja=d+476|0;ka=d+56|0;la=d+472|0;ma=d+48|0;na=d+40|0;oa=d+468|0;pa=d+464|0;qa=d+460|0;ra=d+452|0;sa=d+448|0;ta=d+444|0;ua=d+440|0;va=d+436|0;wa=d+432|0;xa=d+428|0;ya=d+424|0;za=d+420|0;Aa=d+416|0;Ba=d+412|0;Ca=d+408|0;Da=d+404|0;Ea=d+400|0;Fa=d+396|0;Ga=d+392|0;Ha=d+388|0;Ia=d+384|0;Ka=k[a+660>>2]|0;La=j[b>>1]|0;a:do if(Ka){Ma=k[a+656>>2]|0;Na=La&65535;Oa=-1;Pa=Ka;while(1){Qa=(Oa+Pa|0)/2|0;Ra=k[k[Ma+(Qa<<2)>>2]>>2]|0;if((Ra|0)==(Na|0)){Sa=Qa;break}Ta=Ra>>>0<Na>>>0;Oa=Ta?Qa:Oa;Pa=Ta?Pa:Qa;if((Oa+1|0)==(Pa|0))break a}while(1){if(!Sa){Ua=0;break}Pa=Sa+-1|0;if((k[k[Ma+(Pa<<2)>>2]>>2]|0)==(Na|0))Sa=Pa;else{Va=Sa;Wa=7;break}}if((Wa|0)==7)if((Va|0)==-1)break;else Ua=Va;Na=k[Ma+(Ua<<2)>>2]|0;if(!Na)Ja(135060,133171,4711,135010);b:do switch(k[Na+16>>2]|0){case 51:{Ja(135072,133171,4712,135010);break}case 13:{Ja(135111,133171,4713,135010);break}case 0:{Wa=835;break}case 1:{if(i[Na+27>>0]|0)Ja(135148,133171,4722,135010);Pa=rc(a,b,ha)|0;if(!Pa){Oa=b+8|0;Qa=k[Oa>>2]|0;c:do if(!Qa)Xa=0;else{Ta=k[ha>>2]|0;Ra=0;while(1){if(!(i[Ta>>0]|0)){Xa=Ra;break c}Ya=Ra+1|0;if(Ya>>>0<Qa>>>0){Ta=Ta+1|0;Ra=Ya}else{Xa=Ya;break}}}while(0);Ra=Xa+1|0;do if(Ra>>>0>=Qa>>>0)if(Ra>>>0>Qa>>>0){Ta=k[a+628>>2]|0;k[X>>2]=k[Na+28>>2];ie(Ta,135010,135303,X);Ta=Oa;Ya=k[Ta>>2]|0;Za=Ya+1|0;_a=sr(Ya|0,k[Ta+4>>2]|0,1,0)|0;if((Za|0)==(_a|0)&0==(L|0)){_a=me(Za)|0;Za=k[ha>>2]|0;if(!_a)$a=Za;else{qe(_a,Za,k[Oa>>2]|0);i[_a+(k[Oa>>2]|0)>>0]=0;if(Za)ne(Za);k[ha>>2]=_a;ab=_a;break}}else $a=k[ha>>2]|0;if(!$a){bb=0;r=d;return bb|0}ne($a);bb=0;r=d;return bb|0}else Wa=32;else{_a=k[a+628>>2]|0;k[Y>>2]=k[Na+28>>2];ie(_a,135010,135172,Y);Wa=32}while(0);if((Wa|0)==32)ab=k[ha>>2]|0;Oa=m[b>>1]|0;k[W>>2]=ab;Qa=Ob(a,Oa,W)|0;if(ab)ne(ab);if(!Qa){bb=0;r=d;return bb|0}else Wa=836}else{cb=Pa;Wa=837}break}case 2:{if((j[Na+4>>1]|0)!=1)Ja(135354,133171,4771,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4772,135010);Qa=b+8|0;d:do if((k[Qa>>2]|0)==1&(k[Qa+4>>2]|0)==0)switch(m[b+2>>1]|0){case 1:{db=0;eb=i[b+16>>0]|0;break d;break}case 6:{Oa=i[b+16>>0]|0;Ra=Oa<<24>>24>-1;db=Ra?0:4;eb=Ra?Oa:0;break d;break}case 3:{Oa=k[a+12>>2]|0;Ra=j[b+16>>1]|0;j[$>>1]=Ra;if(!(Oa&128))fb=Ra;else{Qd($);fb=j[$>>1]|0}Ra=(fb&65535)<256;db=Ra?0:4;eb=Ra?fb&255:0;break d;break}case 8:{Ra=k[a+12>>2]|0;Oa=j[b+16>>1]|0;j[aa>>1]=Oa;if(!(Ra&128))gb=Oa;else{Qd(aa);gb=j[aa>>1]|0}Oa=(gb&65535)<256;db=Oa?0:4;eb=Oa?gb&255:0;break d;break}case 4:{Oa=k[b+16>>2]|0;k[ba>>2]=Oa;if(!(k[a+12>>2]&128))hb=Oa;else{Rd(ba);hb=k[ba>>2]|0}Oa=hb>>>0<256;db=Oa?0:4;eb=Oa?hb&255:0;break d;break}case 9:{Oa=k[b+16>>2]|0;k[ca>>2]=Oa;if(!(k[a+12>>2]&128))ib=Oa;else{Rd(ca);ib=k[ca>>2]|0}Oa=ib>>>0<256;db=Oa?0:4;eb=Oa?ib&255:0;break d;break}case 16:{Oa=a+12|0;Ra=k[Oa>>2]|0;_a=b+16|0;do if(!(Ra&524288)){Za=k[_a>>2]|0;k[_>>2]=Za;if(!(Ra&128)){jb=Ra;kb=Za}else{Rd(_);jb=k[Oa>>2]|0;kb=k[_>>2]|0}if(!(jb&2048)){Za=a+628|0;Ta=xb[k[a+640>>2]&63](k[Za>>2]|0,kb,0,0)|0;if((Ta|0)==(kb|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[Za>>2]|0,da,8)|0)==8:0)Wa=65;else Wa=69}else if(kb>>>0<=4294967287?(kb+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(da,(k[a+612>>2]|0)+kb|0,8);Wa=65}else Wa=69;if((Wa|0)==65){lb=k[Oa>>2]|0;break}else if((Wa|0)==69){db=3;eb=0;break d}}else{Za=_a;Ta=k[Za+4>>2]|0;Ya=da;k[Ya>>2]=k[Za>>2];k[Ya+4>>2]=Ta;lb=Ra}while(0);if(lb&128)Sd(da);Ra=da;_a=k[Ra>>2]|0;Oa=k[Ra+4>>2]|0;Ra=Oa>>>0<0|(Oa|0)==0&_a>>>0<256;db=Ra?0:4;eb=Ra?_a&255:0;break d;break}case 17:{_a=a+12|0;Ra=k[_a>>2]|0;Oa=b+16|0;do if(!(Ra&524288)){Ta=k[Oa>>2]|0;k[_>>2]=Ta;if(!(Ra&128)){mb=Ra;ob=Ta}else{Rd(_);mb=k[_a>>2]|0;ob=k[_>>2]|0}if(!(mb&2048)){Ta=a+628|0;Ya=xb[k[a+640>>2]&63](k[Ta>>2]|0,ob,0,0)|0;if((Ya|0)==(ob|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[Ta>>2]|0,ea,8)|0)==8:0)Wa=80;else Wa=84}else if(ob>>>0<=4294967287?(ob+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(ea,(k[a+612>>2]|0)+ob|0,8);Wa=80}else Wa=84;if((Wa|0)==80){pb=k[_a>>2]|0;break}else if((Wa|0)==84){db=3;eb=0;break d}}else{Ta=Oa;Ya=k[Ta+4>>2]|0;Za=ea;k[Za>>2]=k[Ta>>2];k[Za+4>>2]=Ya;pb=Ra}while(0);if(pb&128)Sd(ea);Ra=ea;Oa=k[Ra>>2]|0;_a=k[Ra+4>>2]|0;Ra=_a>>>0<0|(_a|0)==0&Oa>>>0<256;db=Ra?0:4;eb=Ra?Oa&255:0;break d;break}default:{db=2;eb=0;break d}}else{db=1;eb=0}while(0);if(!db){Qa=m[b>>1]|0;k[V>>2]=eb&255;if(!(Ob(a,Qa,V)|0)){bb=0;r=d;return bb|0}else Wa=835}else{cb=db;Wa=837}break}case 4:{if((j[Na+4>>1]|0)!=1)Ja(135354,133171,4784,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4785,135010);Qa=jc(a,b,ia)|0;if(!Qa){Pa=m[b>>1]|0;k[U>>2]=m[ia>>1];if(!(Ob(a,Pa,U)|0)){bb=0;r=d;return bb|0}else Wa=835}else{cb=Qa;Wa=837}break}case 6:{if((j[Na+4>>1]|0)!=1)Ja(135354,133171,4797,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4798,135010);Qa=b+8|0;e:do if((k[Qa>>2]|0)==1&(k[Qa+4>>2]|0)==0)switch(m[b+2>>1]|0){case 1:{k[ja>>2]=l[b+16>>0];qb=0;break e;break}case 6:{Pa=i[b+16>>0]|0;if(Pa<<24>>24<=-1){qb=4;break e}k[ja>>2]=Pa<<24>>24;qb=0;break e;break}case 3:{Pa=k[a+12>>2]|0;Oa=j[b+16>>1]|0;j[$>>1]=Oa;if(!(Pa&128))rb=Oa;else{Qd($);rb=j[$>>1]|0}k[ja>>2]=rb&65535;qb=0;break e;break}case 8:{Oa=k[a+12>>2]|0;Pa=j[b+16>>1]|0;j[aa>>1]=Pa;if(!(Oa&128))sb=Pa;else{Qd(aa);sb=j[aa>>1]|0}if(sb<<16>>16<=-1){qb=4;break e}k[ja>>2]=sb<<16>>16;qb=0;break e;break}case 4:{k[ja>>2]=k[b+16>>2];if(!(k[a+12>>2]&128)){qb=0;break e}Rd(ja);qb=0;break e;break}case 9:{Pa=k[b+16>>2]|0;k[ba>>2]=Pa;if(!(k[a+12>>2]&128))tb=Pa;else{Rd(ba);tb=k[ba>>2]|0}Pa=tb>>31&4;if(Pa){qb=Pa;break e}k[ja>>2]=tb;qb=0;break e;break}case 16:{Pa=a+12|0;Oa=k[Pa>>2]|0;Ra=b+16|0;do if(!(Oa&524288)){_a=k[Ra>>2]|0;k[_>>2]=_a;if(!(Oa&128)){ub=Oa;vb=_a}else{Rd(_);ub=k[Pa>>2]|0;vb=k[_>>2]|0}if(!(ub&2048)){_a=a+628|0;Ya=xb[k[a+640>>2]&63](k[_a>>2]|0,vb,0,0)|0;if((Ya|0)==(vb|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[_a>>2]|0,ca,8)|0)==8:0)Wa=125;else Wa=129}else if(vb>>>0<=4294967287?(vb+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(ca,(k[a+612>>2]|0)+vb|0,8);Wa=125}else Wa=129;if((Wa|0)==125){wb=k[Pa>>2]|0;break}else if((Wa|0)==129){qb=3;break e}}else{_a=Ra;Ya=k[_a+4>>2]|0;Za=ca;k[Za>>2]=k[_a>>2];k[Za+4>>2]=Ya;wb=Oa}while(0);if(wb&128)Sd(ca);Oa=ca;Ra=k[Oa>>2]|0;Pa=k[Oa+4>>2]|0;if(!(Pa>>>0<1|(Pa|0)==1&Ra>>>0<0)){qb=4;break e}k[ja>>2]=Ra;qb=0;break e;break}case 17:{Ra=a+12|0;Pa=k[Ra>>2]|0;Oa=b+16|0;do if(!(Pa&524288)){Ya=k[Oa>>2]|0;k[_>>2]=Ya;if(!(Pa&128)){yb=Pa;zb=Ya}else{Rd(_);yb=k[Ra>>2]|0;zb=k[_>>2]|0}if(!(yb&2048)){Ya=a+628|0;Za=xb[k[a+640>>2]&63](k[Ya>>2]|0,zb,0,0)|0;if((Za|0)==(zb|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[Ya>>2]|0,da,8)|0)==8:0)Wa=141;else Wa=145}else if(zb>>>0<=4294967287?(zb+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(da,(k[a+612>>2]|0)+zb|0,8);Wa=141}else Wa=145;if((Wa|0)==141){Ab=k[Ra>>2]|0;break}else if((Wa|0)==145){qb=3;break e}}else{Ya=Oa;Za=k[Ya+4>>2]|0;_a=da;k[_a>>2]=k[Ya>>2];k[_a+4>>2]=Za;Ab=Pa}while(0);if(Ab&128)Sd(da);Pa=da;Oa=k[Pa>>2]|0;Ra=k[Pa+4>>2]|0;if(!(Ra>>>0<1|(Ra|0)==1&Oa>>>0<0)){qb=4;break e}k[ja>>2]=Oa;qb=0;break e;break}default:{qb=2;break e}}else qb=1;while(0);if(!qb){Qa=m[b>>1]|0;k[T>>2]=k[ja>>2];if(!(Ob(a,Qa,T)|0)){bb=0;r=d;return bb|0}else Wa=835}else{cb=qb;Wa=837}break}case 8:{if((j[Na+4>>1]|0)!=1)Ja(135354,133171,4810,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4811,135010);Qa=b+8|0;f:do if((k[Qa>>2]|0)==1&(k[Qa+4>>2]|0)==0)switch(m[b+2>>1]|0){case 1:{Oa=ka;k[Oa>>2]=l[b+16>>0];k[Oa+4>>2]=0;Bb=0;break f;break}case 6:{Oa=i[b+16>>0]|0;if(Oa<<24>>24<=-1){Bb=4;break f}Ra=Oa<<24>>24;Oa=ka;k[Oa>>2]=Ra;k[Oa+4>>2]=((Ra|0)<0)<<31>>31;Bb=0;break f;break}case 3:{Ra=k[a+12>>2]|0;Oa=j[b+16>>1]|0;j[$>>1]=Oa;if(!(Ra&128))Cb=Oa;else{Qd($);Cb=j[$>>1]|0}Oa=ka;k[Oa>>2]=Cb&65535;k[Oa+4>>2]=0;Bb=0;break f;break}case 8:{Oa=k[a+12>>2]|0;Ra=j[b+16>>1]|0;j[aa>>1]=Ra;if(!(Oa&128))Db=Ra;else{Qd(aa);Db=j[aa>>1]|0}if(Db<<16>>16<=-1){Bb=4;break f}Ra=Db<<16>>16;Oa=ka;k[Oa>>2]=Ra;k[Oa+4>>2]=((Ra|0)<0)<<31>>31;Bb=0;break f;break}case 4:{Ra=k[b+16>>2]|0;k[ba>>2]=Ra;if(!(k[a+12>>2]&128))Eb=Ra;else{Rd(ba);Eb=k[ba>>2]|0}Ra=ka;k[Ra>>2]=Eb;k[Ra+4>>2]=0;Bb=0;break f;break}case 9:{Ra=k[b+16>>2]|0;k[ca>>2]=Ra;if(!(k[a+12>>2]&128))Fb=Ra;else{Rd(ca);Fb=k[ca>>2]|0}Ra=Fb>>31&4;if(Ra){Bb=Ra;break f}Ra=ka;k[Ra>>2]=Fb;k[Ra+4>>2]=((Fb|0)<0)<<31>>31;Bb=0;break f;break}case 16:{Ra=a+12|0;Oa=k[Ra>>2]|0;Pa=b+16|0;do if(!(Oa&524288)){Za=k[Pa>>2]|0;k[_>>2]=Za;if(!(Oa&128)){Gb=Oa;Hb=Za}else{Rd(_);Gb=k[Ra>>2]|0;Hb=k[_>>2]|0}if(!(Gb&2048)){Za=a+628|0;_a=xb[k[a+640>>2]&63](k[Za>>2]|0,Hb,0,0)|0;if(!((_a|0)==(Hb|0)&(L|0)==0)){Ib=3;break}if((nb[k[a+632>>2]&63](k[Za>>2]|0,ka,8)|0)!=8){Ib=3;break}}else{if(Hb>>>0>4294967287){Ib=3;break}if((Hb+8|0)>>>0>(k[a+616>>2]|0)>>>0){Ib=3;break}qe(ka,(k[a+612>>2]|0)+Hb|0,8)}Jb=k[Ra>>2]|0;Wa=184}else{Za=Pa;_a=k[Za+4>>2]|0;Ya=ka;k[Ya>>2]=k[Za>>2];k[Ya+4>>2]=_a;Jb=Oa;Wa=184}while(0);if((Wa|0)==184)if(!(Jb&128))Ib=0;else{Sd(ka);Ib=0}Bb=Ib;break f;break}case 17:{Oa=a+12|0;Pa=k[Oa>>2]|0;Ra=b+16|0;do if(!(Pa&524288)){_a=k[Ra>>2]|0;k[_>>2]=_a;if(!(Pa&128)){Kb=Pa;Lb=_a}else{Rd(_);Kb=k[Oa>>2]|0;Lb=k[_>>2]|0}if(!(Kb&2048)){_a=a+628|0;Ya=xb[k[a+640>>2]&63](k[_a>>2]|0,Lb,0,0)|0;if((Ya|0)==(Lb|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[_a>>2]|0,da,8)|0)==8:0)Wa=196;else Wa=200}else if(Lb>>>0<=4294967287?(Lb+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(da,(k[a+612>>2]|0)+Lb|0,8);Wa=196}else Wa=200;if((Wa|0)==196){Mb=k[Oa>>2]|0;break}else if((Wa|0)==200){Bb=3;break f}}else{_a=Ra;Ya=k[_a+4>>2]|0;Za=da;k[Za>>2]=k[_a>>2];k[Za+4>>2]=Ya;Mb=Pa}while(0);if(Mb&128)Sd(da);Pa=da;Ra=k[Pa>>2]|0;Oa=k[Pa+4>>2]|0;if(!((Oa|0)>-1|(Oa|0)==-1&Ra>>>0>4294967295)){Bb=4;break f}Pa=ka;k[Pa>>2]=Ra;k[Pa+4>>2]=Oa;Bb=0;break f;break}default:{Bb=2;break f}}else Bb=1;while(0);if(!Bb){Qa=m[b>>1]|0;Oa=ka;Pa=k[Oa+4>>2]|0;Ra=S;k[Ra>>2]=k[Oa>>2];k[Ra+4>>2]=Pa;if(!(Ob(a,Qa,S)|0)){bb=0;r=d;return bb|0}else Wa=835}else{cb=Bb;Wa=837}break}case 10:{if((j[Na+4>>1]|0)!=1)Ja(135354,133171,4823,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4824,135010);Qa=b+8|0;g:do if((k[Qa>>2]|0)==1&(k[Qa+4>>2]|0)==0)do switch(m[b+2>>1]|0){case 1:{o[la>>2]=+(l[b+16>>0]|0);Nb=0;break g;break}case 6:{o[la>>2]=+(i[b+16>>0]|0);Nb=0;break g;break}case 3:{Pa=k[a+12>>2]|0;Ra=j[b+16>>1]|0;j[aa>>1]=Ra;if(!(Pa&128))Pb=Ra;else{Qd(aa);Pb=j[aa>>1]|0}o[la>>2]=+(Pb&65535);Nb=0;break g;break}case 8:{Ra=k[a+12>>2]|0;Pa=j[b+16>>1]|0;j[ba>>1]=Pa;if(!(Ra&128))Qb=Pa;else{Qd(ba);Qb=j[ba>>1]|0}o[la>>2]=+(Qb<<16>>16);Nb=0;break g;break}case 4:{Pa=k[b+16>>2]|0;k[ca>>2]=Pa;if(!(k[a+12>>2]&128))Rb=Pa;else{Rd(ca);Rb=k[ca>>2]|0}o[la>>2]=+(Rb>>>0);Nb=0;break g;break}case 9:{Pa=k[b+16>>2]|0;k[da>>2]=Pa;if(!(k[a+12>>2]&128))Sb=Pa;else{Rd(da);Sb=k[da>>2]|0}o[la>>2]=+(Sb|0);Nb=0;break g;break}case 16:{Pa=a+12|0;Ra=k[Pa>>2]|0;Oa=b+16|0;do if(!(Ra&524288)){Ya=k[Oa>>2]|0;k[_>>2]=Ya;if(!(Ra&128)){Tb=Ra;Ub=Ya}else{Rd(_);Tb=k[Pa>>2]|0;Ub=k[_>>2]|0}if(!(Tb&2048)){Ya=a+628|0;Za=xb[k[a+640>>2]&63](k[Ya>>2]|0,Ub,0,0)|0;if((Za|0)==(Ub|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[Ya>>2]|0,ea,8)|0)==8:0)Wa=234;else Wa=238}else if(Ub>>>0<=4294967287?(Ub+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(ea,(k[a+612>>2]|0)+Ub|0,8);Wa=234}else Wa=238;if((Wa|0)==234){Vb=k[Pa>>2]|0;break}else if((Wa|0)==238){Nb=3;break g}}else{Ya=Oa;Za=k[Ya+4>>2]|0;_a=ea;k[_a>>2]=k[Ya>>2];k[_a+4>>2]=Za;Vb=Ra}while(0);if(Vb&128)Sd(ea);Ra=ea;o[la>>2]=+((k[Ra>>2]|0)>>>0)+4294967296.0*+((k[Ra+4>>2]|0)>>>0);Nb=0;break g;break}case 17:{Ra=a+12|0;Oa=k[Ra>>2]|0;Pa=b+16|0;do if(!(Oa&524288)){Za=k[Pa>>2]|0;k[_>>2]=Za;if(!(Oa&128)){Wb=Oa;Xb=Za}else{Rd(_);Wb=k[Ra>>2]|0;Xb=k[_>>2]|0}if(!(Wb&2048)){Za=a+628|0;_a=xb[k[a+640>>2]&63](k[Za>>2]|0,Xb,0,0)|0;if((_a|0)==(Xb|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[Za>>2]|0,fa,8)|0)==8:0)Wa=249;else Wa=253}else if(Xb>>>0<=4294967287?(Xb+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(fa,(k[a+612>>2]|0)+Xb|0,8);Wa=249}else Wa=253;if((Wa|0)==249){Yb=k[Ra>>2]|0;break}else if((Wa|0)==253){Nb=3;break g}}else{Za=Pa;_a=k[Za+4>>2]|0;Ya=fa;k[Ya>>2]=k[Za>>2];k[Ya+4>>2]=_a;Yb=Oa}while(0);if(Yb&128)Sd(fa);Oa=fa;o[la>>2]=+((k[Oa>>2]|0)>>>0)+4294967296.0*+(k[Oa+4>>2]|0);Nb=0;break g;break}case 5:{Oa=a+12|0;Pa=k[Oa>>2]|0;Ra=b+16|0;do if(!(Pa&524288)){_a=k[Ra>>2]|0;k[$>>2]=_a;if(!(Pa&128)){Zb=Pa;_b=_a}else{Rd($);Zb=k[Oa>>2]|0;_b=k[$>>2]|0}if(!(Zb&2048)){_a=a+628|0;Ya=xb[k[a+640>>2]&63](k[_a>>2]|0,_b,0,0)|0;if((Ya|0)==(_b|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[_a>>2]|0,_,8)|0)==8:0)Wa=264;else Wa=270}else if(_b>>>0<=4294967287?(_b+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(_,(k[a+612>>2]|0)+_b|0,8);Wa=264}else Wa=270;if((Wa|0)==264){$b=k[Oa>>2]|0;break}else if((Wa|0)==270){Nb=3;break g}}else{_a=Ra;Ya=k[_a+4>>2]|0;Za=_;k[Za>>2]=k[_a>>2];k[Za+4>>2]=Ya;$b=Pa}while(0);if($b&128)Vd(_,2);Pa=k[_>>2]|0;if(!Pa)ac=0.0;else ac=+(Pa>>>0)/+((k[_+4>>2]|0)>>>0);o[la>>2]=ac;Nb=0;break g;break}case 10:{Pa=a+12|0;Ra=k[Pa>>2]|0;Oa=b+16|0;do if(!(Ra&524288)){Ya=k[Oa>>2]|0;k[$>>2]=Ya;if(!(Ra&128)){bc=Ra;cc=Ya}else{Rd($);bc=k[Pa>>2]|0;cc=k[$>>2]|0}if(!(bc&2048)){Ya=a+628|0;Za=xb[k[a+640>>2]&63](k[Ya>>2]|0,cc,0,0)|0;if((Za|0)==(cc|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[Ya>>2]|0,_,8)|0)==8:0)Wa=281;else Wa=287}else if(cc>>>0<=4294967287?(cc+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(_,(k[a+612>>2]|0)+cc|0,8);Wa=281}else Wa=287;if((Wa|0)==281){dc=k[Pa>>2]|0;break}else if((Wa|0)==287){Nb=3;break g}}else{Ya=Oa;Za=k[Ya+4>>2]|0;_a=_;k[_a>>2]=k[Ya>>2];k[_a+4>>2]=Za;dc=Ra}while(0);if(dc&128)Vd(_,2);Ra=k[_>>2]|0;if(!Ra)ec=0.0;else ec=+(Ra|0)/+((k[_+4>>2]|0)>>>0);o[la>>2]=ec;Nb=0;break g;break}case 11:{Ra=k[a+12>>2]|0;k[la>>2]=k[b+16>>2];if(!(Ra&128)){Nb=0;break g}Rd(la);Nb=0;break g;break}case 12:{Ra=a+12|0;Oa=k[Ra>>2]|0;Pa=b+16|0;do if(!(Oa&524288)){Za=k[Pa>>2]|0;k[_>>2]=Za;if(!(Oa&128)){fc=Oa;gc=Za}else{Rd(_);fc=k[Ra>>2]|0;gc=k[_>>2]|0}if(!(fc&2048)){Za=a+628|0;_a=xb[k[a+640>>2]&63](k[Za>>2]|0,gc,0,0)|0;if((_a|0)==(gc|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[Za>>2]|0,ga,8)|0)==8:0)Wa=300;else Wa=304}else if(gc>>>0<=4294967287?(gc+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(ga,(k[a+612>>2]|0)+gc|0,8);Wa=300}else Wa=304;if((Wa|0)==300){hc=k[Ra>>2]|0;break}else if((Wa|0)==304){Nb=3;break g}}else{p[ga>>3]=+p[Pa>>3];hc=Oa}while(0);if(hc&128)Sd(ga);o[la>>2]=+p[ga>>3];Nb=0;break g;break}default:{Nb=2;break g}}while(0);else Nb=1;while(0);if(!Nb){Qa=m[b>>1]|0;p[R>>3]=+o[la>>2];if(!(Ob(a,Qa,R)|0)){bb=0;r=d;return bb|0}else Wa=835}else{cb=Nb;Wa=837}break}case 11:{if((j[Na+4>>1]|0)!=1)Ja(135354,133171,4836,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4837,135010);Qa=b+8|0;h:do if((k[Qa>>2]|0)==1&(k[Qa+4>>2]|0)==0)do switch(m[b+2>>1]|0){case 1:{p[ma>>3]=+(l[b+16>>0]|0);ic=0;break h;break}case 6:{p[ma>>3]=+(i[b+16>>0]|0);ic=0;break h;break}case 3:{Oa=k[a+12>>2]|0;Pa=j[b+16>>1]|0;j[aa>>1]=Pa;if(!(Oa&128))nc=Pa;else{Qd(aa);nc=j[aa>>1]|0}p[ma>>3]=+(nc&65535);ic=0;break h;break}case 8:{Pa=k[a+12>>2]|0;Oa=j[b+16>>1]|0;j[ba>>1]=Oa;if(!(Pa&128))oc=Oa;else{Qd(ba);oc=j[ba>>1]|0}p[ma>>3]=+(oc<<16>>16);ic=0;break h;break}case 4:{Oa=k[b+16>>2]|0;k[ca>>2]=Oa;if(!(k[a+12>>2]&128))wc=Oa;else{Rd(ca);wc=k[ca>>2]|0}p[ma>>3]=+(wc>>>0);ic=0;break h;break}case 9:{Oa=k[b+16>>2]|0;k[da>>2]=Oa;if(!(k[a+12>>2]&128))xc=Oa;else{Rd(da);xc=k[da>>2]|0}p[ma>>3]=+(xc|0);ic=0;break h;break}case 16:{Oa=a+12|0;Pa=k[Oa>>2]|0;Ra=b+16|0;do if(!(Pa&524288)){Za=k[Ra>>2]|0;k[_>>2]=Za;if(!(Pa&128)){yc=Pa;zc=Za}else{Rd(_);yc=k[Oa>>2]|0;zc=k[_>>2]|0}if(!(yc&2048)){Za=a+628|0;_a=xb[k[a+640>>2]&63](k[Za>>2]|0,zc,0,0)|0;if((_a|0)==(zc|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[Za>>2]|0,ea,8)|0)==8:0)Wa=337;else Wa=341}else if(zc>>>0<=4294967287?(zc+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(ea,(k[a+612>>2]|0)+zc|0,8);Wa=337}else Wa=341;if((Wa|0)==337){Ac=k[Oa>>2]|0;break}else if((Wa|0)==341){ic=3;break h}}else{Za=Ra;_a=k[Za+4>>2]|0;Ya=ea;k[Ya>>2]=k[Za>>2];k[Ya+4>>2]=_a;Ac=Pa}while(0);if(Ac&128)Sd(ea);Pa=ea;p[ma>>3]=+((k[Pa>>2]|0)>>>0)+4294967296.0*+((k[Pa+4>>2]|0)>>>0);ic=0;break h;break}case 17:{Pa=a+12|0;Ra=k[Pa>>2]|0;Oa=b+16|0;do if(!(Ra&524288)){_a=k[Oa>>2]|0;k[_>>2]=_a;if(!(Ra&128)){Bc=Ra;Cc=_a}else{Rd(_);Bc=k[Pa>>2]|0;Cc=k[_>>2]|0}if(!(Bc&2048)){_a=a+628|0;Ya=xb[k[a+640>>2]&63](k[_a>>2]|0,Cc,0,0)|0;if((Ya|0)==(Cc|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[_a>>2]|0,fa,8)|0)==8:0)Wa=352;else Wa=356}else if(Cc>>>0<=4294967287?(Cc+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(fa,(k[a+612>>2]|0)+Cc|0,8);Wa=352}else Wa=356;if((Wa|0)==352){Dc=k[Pa>>2]|0;break}else if((Wa|0)==356){ic=3;break h}}else{_a=Oa;Ya=k[_a+4>>2]|0;Za=fa;k[Za>>2]=k[_a>>2];k[Za+4>>2]=Ya;Dc=Ra}while(0);if(Dc&128)Sd(fa);Ra=fa;p[ma>>3]=+((k[Ra>>2]|0)>>>0)+4294967296.0*+(k[Ra+4>>2]|0);ic=0;break h;break}case 5:{Ra=a+12|0;Oa=k[Ra>>2]|0;Pa=b+16|0;do if(!(Oa&524288)){Ya=k[Pa>>2]|0;k[$>>2]=Ya;if(!(Oa&128)){Ec=Oa;Fc=Ya}else{Rd($);Ec=k[Ra>>2]|0;Fc=k[$>>2]|0}if(!(Ec&2048)){Ya=a+628|0;Za=xb[k[a+640>>2]&63](k[Ya>>2]|0,Fc,0,0)|0;if(!((Za|0)==(Fc|0)&(L|0)==0)){Gc=3;break}if((nb[k[a+632>>2]&63](k[Ya>>2]|0,_,8)|0)!=8){Gc=3;break}}else{if(Fc>>>0>4294967287){Gc=3;break}if((Fc+8|0)>>>0>(k[a+616>>2]|0)>>>0){Gc=3;break}qe(_,(k[a+612>>2]|0)+Fc|0,8)}Hc=k[Ra>>2]|0;Wa=369}else{Ya=Pa;Za=k[Ya+4>>2]|0;_a=_;k[_a>>2]=k[Ya>>2];k[_a+4>>2]=Za;Hc=Oa;Wa=369}while(0);if((Wa|0)==369){if(Hc&128)Vd(_,2);Oa=k[_>>2]|0;if(!Oa)Ic=0.0;else Ic=+(Oa>>>0)/+((k[_+4>>2]|0)>>>0);p[ma>>3]=Ic;Gc=0}ic=Gc;break h;break}case 10:{Oa=a+12|0;Pa=k[Oa>>2]|0;Ra=b+16|0;do if(!(Pa&524288)){Za=k[Ra>>2]|0;k[$>>2]=Za;if(!(Pa&128)){Jc=Pa;Kc=Za}else{Rd($);Jc=k[Oa>>2]|0;Kc=k[$>>2]|0}if(!(Jc&2048)){Za=a+628|0;_a=xb[k[a+640>>2]&63](k[Za>>2]|0,Kc,0,0)|0;if(!((_a|0)==(Kc|0)&(L|0)==0)){Lc=3;break}if((nb[k[a+632>>2]&63](k[Za>>2]|0,_,8)|0)!=8){Lc=3;break}}else{if(Kc>>>0>4294967287){Lc=3;break}if((Kc+8|0)>>>0>(k[a+616>>2]|0)>>>0){Lc=3;break}qe(_,(k[a+612>>2]|0)+Kc|0,8)}Mc=k[Oa>>2]|0;Wa=386}else{Za=Ra;_a=k[Za+4>>2]|0;Ya=_;k[Ya>>2]=k[Za>>2];k[Ya+4>>2]=_a;Mc=Pa;Wa=386}while(0);if((Wa|0)==386){if(Mc&128)Vd(_,2);Pa=k[_>>2]|0;if(!Pa)Nc=0.0;else Nc=+(Pa|0)/+((k[_+4>>2]|0)>>>0);p[ma>>3]=Nc;Lc=0}ic=Lc;break h;break}case 11:{Pa=k[a+12>>2]|0;Ra=k[b+16>>2]|0;k[ga>>2]=Ra;if(!(Pa&128))Oc=(k[t>>2]=Ra,+o[t>>2]);else{Rd(ga);Oc=+o[ga>>2]}p[ma>>3]=Oc;ic=0;break h;break}case 12:{Ra=a+12|0;Pa=k[Ra>>2]|0;Oa=b+16|0;do if(!(Pa&524288)){_a=k[Oa>>2]|0;k[_>>2]=_a;if(!(Pa&128)){Pc=Pa;Qc=_a}else{Rd(_);Pc=k[Ra>>2]|0;Qc=k[_>>2]|0}if(!(Pc&2048)){_a=a+628|0;Ya=xb[k[a+640>>2]&63](k[_a>>2]|0,Qc,0,0)|0;if(!((Ya|0)==(Qc|0)&(L|0)==0)){Rc=3;break}if((nb[k[a+632>>2]&63](k[_a>>2]|0,ma,8)|0)!=8){Rc=3;break}}else{if(Qc>>>0>4294967287){Rc=3;break}if((Qc+8|0)>>>0>(k[a+616>>2]|0)>>>0){Rc=3;break}qe(ma,(k[a+612>>2]|0)+Qc|0,8)}Sc=k[Ra>>2]|0;Wa=406}else{p[ma>>3]=+p[Oa>>3];Sc=Pa;Wa=406}while(0);if((Wa|0)==406)if(!(Sc&128))Rc=0;else{Sd(ma);Rc=0}ic=Rc;break h;break}default:{ic=2;break h}}while(0);else ic=1;while(0);if(!ic){Qa=m[b>>1]|0;p[Q>>3]=+p[ma>>3];if(!(Ob(a,Qa,Q)|0)){bb=0;r=d;return bb|0}else Wa=835}else{cb=ic;Wa=837}break}case 12:{if((j[Na+4>>1]|0)!=1)Ja(135354,133171,4849,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4850,135010);Qa=b+8|0;i:do if((k[Qa>>2]|0)==1&(k[Qa+4>>2]|0)==0){switch(m[b+2>>1]|0){case 13:case 4:{Pa=k[b+16>>2]|0;k[$>>2]=Pa;if(!(k[a+12>>2]&128))Tc=Pa;else{Rd($);Tc=k[$>>2]|0}Pa=na;k[Pa>>2]=Tc;k[Pa+4>>2]=0;Uc=Tc;Vc=0;break}case 18:case 16:{Pa=a+12|0;Oa=k[Pa>>2]|0;Ra=b+16|0;do if(!(Oa&524288)){_a=k[Ra>>2]|0;k[_>>2]=_a;if(!(Oa&128)){Wc=Oa;Xc=_a}else{Rd(_);Wc=k[Pa>>2]|0;Xc=k[_>>2]|0}if(!(Wc&2048)){_a=a+628|0;Ya=xb[k[a+640>>2]&63](k[_a>>2]|0,Xc,0,0)|0;if((Ya|0)==(Xc|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[_a>>2]|0,na,8)|0)==8:0)Wa=429;else Wa=434}else if(Xc>>>0<=4294967287?(Xc+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(na,(k[a+612>>2]|0)+Xc|0,8);Wa=429}else Wa=434;if((Wa|0)==429){Yc=k[Pa>>2]|0;break}else if((Wa|0)==434){cb=3;Wa=837;break b}}else{_a=Ra;Ya=k[_a+4>>2]|0;Za=na;k[Za>>2]=k[_a>>2];k[Za+4>>2]=Ya;Yc=Oa}while(0);if(Yc&128)Sd(na);Oa=na;Uc=k[Oa>>2]|0;Vc=k[Oa+4>>2]|0;break}default:{Zc=2;break i}}Oa=m[b>>1]|0;Ra=P;k[Ra>>2]=Uc;k[Ra+4>>2]=Vc;if(!(Ob(a,Oa,P)|0))bb=0;else{Wa=835;break b}r=d;return bb|0}else Zc=1;while(0);cb=Zc;Wa=837;break}case 14:{if((j[Na+4>>1]|0)!=2)Ja(135378,133171,4862,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4863,135010);Qa=b+8|0;Oa=k[Qa>>2]|0;if(!((Oa|0)==2&(k[Qa+4>>2]|0)==0)){Qa=k[a+628>>2]|0;k[O>>2]=k[Na+28>>2];k[O+4>>2]=Oa;ie(Qa,135010,135402,O);bb=0;r=d;return bb|0}Qa=kc(a,b,oa)|0;if(!Qa){Oa=m[b>>1]|0;Ra=k[oa>>2]|0;Pa=m[Ra+2>>1]|0;k[N>>2]=m[Ra>>1];k[N+4>>2]=Pa;Pa=Ob(a,Oa,N)|0;ne(Ra);if(!Pa){bb=0;r=d;return bb|0}else Wa=835}else{cb=Qa;Wa=837}break}case 16:{Qa=j[Na+4>>1]|0;if(Qa<<16>>16<=0)Ja(135453,133171,4884,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4885,135010);Pa=b+8|0;Ra=k[Pa>>2]|0;Oa=Qa<<16>>16;if(!((Ra|0)==(Oa|0)?(k[Pa+4>>2]|0)==(((Oa|0)<0)<<31>>31|0):0)){Oa=k[a+628>>2]|0;k[M>>2]=k[Na+28>>2];k[M+4>>2]=Qa<<16>>16;k[M+8>>2]=Ra;ie(Oa,135010,135477,M);bb=0;r=d;return bb|0}Oa=rc(a,b,pa)|0;if(!Oa){Ra=m[b>>1]|0;Qa=k[pa>>2]|0;k[K>>2]=Qa;Pa=Ob(a,Ra,K)|0;if(Qa)ne(Qa);if(!Pa){bb=0;r=d;return bb|0}else Wa=836}else{cb=Oa;Wa=837}break}case 18:{Oa=j[Na+4>>1]|0;if(Oa<<16>>16<=0)Ja(135453,133171,4910,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4911,135010);Pa=b+8|0;Qa=Oa<<16>>16;if((k[Pa>>2]|0)==(Qa|0)?(k[Pa+4>>2]|0)==(((Qa|0)<0)<<31>>31|0):0){Qa=kc(a,b,qa)|0;if(!Qa){Pa=m[b>>1]|0;Oa=k[qa>>2]|0;k[J>>2]=Oa;Ra=Ob(a,Pa,J)|0;if(Oa)ne(Oa);if(!Ra){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}}else Wa=835;break}case 20:{Qa=j[Na+4>>1]|0;if(Qa<<16>>16<=0)Ja(135453,133171,4932,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4933,135010);Ra=b+8|0;Oa=Qa<<16>>16;if((k[Ra>>2]|0)==(Oa|0)?(k[Ra+4>>2]|0)==(((Oa|0)<0)<<31>>31|0):0){Oa=sc(a,b,ra)|0;if(!Oa){Ra=m[b>>1]|0;Qa=k[ra>>2]|0;k[I>>2]=Qa;Pa=Ob(a,Ra,I)|0;if(Qa)ne(Qa);if(!Pa){bb=0;r=d;return bb|0}else Wa=836}else{cb=Oa;Wa=837}}else Wa=835;break}case 24:{Oa=j[Na+4>>1]|0;if(Oa<<16>>16<=0)Ja(135453,133171,4954,135010);if(i[Na+27>>0]|0)Ja(135148,133171,4955,135010);Pa=b+8|0;Qa=Oa<<16>>16;if((k[Pa>>2]|0)==(Qa|0)?(k[Pa+4>>2]|0)==(((Qa|0)<0)<<31>>31|0):0){Qa=tc(a,b,sa)|0;if(!Qa){Pa=m[b>>1]|0;Oa=k[sa>>2]|0;k[H>>2]=Oa;Ra=Ob(a,Pa,H)|0;if(Oa)ne(Oa);if(!Ra){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}}else Wa=835;break}case 27:{if((j[Na+4>>1]|0)!=-1)Ja(135529,133171,4976,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,4977,135010);Qa=b+8|0;Ra=Qa;Oa=k[Ra+4>>2]|0;if(!(Oa>>>0>0|(Oa|0)==0&(k[Ra>>2]|0)>>>0>65535)){Ra=rc(a,b,ta)|0;if(!Ra){Oa=m[b>>1]|0;Pa=k[ta>>2]|0;k[G>>2]=k[Qa>>2]&65535;k[G+4>>2]=Pa;Qa=Ob(a,Oa,G)|0;if(Pa)ne(Pa);if(!Qa){bb=0;r=d;return bb|0}else Wa=836}else{cb=Ra;Wa=837}}else{cb=1;Wa=837}break}case 28:{if((j[Na+4>>1]|0)!=-1)Ja(135529,133171,4998,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,4999,135010);Ra=b+8|0;Qa=Ra;Pa=k[Qa+4>>2]|0;if(!(Pa>>>0>0|(Pa|0)==0&(k[Qa>>2]|0)>>>0>65535)){Qa=rc(a,b,ua)|0;if(!Qa){Pa=m[b>>1]|0;Oa=k[ua>>2]|0;k[F>>2]=k[Ra>>2]&65535;k[F+4>>2]=Oa;Ra=Ob(a,Pa,F)|0;if(Oa)ne(Oa);if(!Ra){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}}else{cb=1;Wa=837}break}case 30:{if((j[Na+4>>1]|0)!=-1)Ja(135529,133171,5020,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5021,135010);Qa=b+8|0;Ra=Qa;Oa=k[Ra+4>>2]|0;if(!(Oa>>>0>0|(Oa|0)==0&(k[Ra>>2]|0)>>>0>65535)){Ra=kc(a,b,va)|0;if(!Ra){Oa=m[b>>1]|0;Pa=k[va>>2]|0;k[E>>2]=k[Qa>>2]&65535;k[E+4>>2]=Pa;Qa=Ob(a,Oa,E)|0;if(Pa)ne(Pa);if(!Qa){bb=0;r=d;return bb|0}else Wa=836}else{cb=Ra;Wa=837}}else{cb=1;Wa=837}break}case 32:{if((j[Na+4>>1]|0)!=-1)Ja(135529,133171,5042,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5043,135010);Ra=b+8|0;Qa=Ra;Pa=k[Qa+4>>2]|0;if(!(Pa>>>0>0|(Pa|0)==0&(k[Qa>>2]|0)>>>0>65535)){Qa=sc(a,b,wa)|0;if(!Qa){Pa=m[b>>1]|0;Oa=k[wa>>2]|0;k[D>>2]=k[Ra>>2]&65535;k[D+4>>2]=Oa;Ra=Ob(a,Pa,D)|0;if(Oa)ne(Oa);if(!Ra){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}}else{cb=1;Wa=837}break}case 34:{if((j[Na+4>>1]|0)!=-1)Ja(135529,133171,5064,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5065,135010);Qa=b+8|0;Ra=Qa;Oa=k[Ra+4>>2]|0;if(!(Oa>>>0>0|(Oa|0)==0&(k[Ra>>2]|0)>>>0>65535)){Ra=pc(a,b,xa)|0;if(!Ra){Oa=m[b>>1]|0;Pa=k[xa>>2]|0;k[C>>2]=k[Qa>>2]&65535;k[C+4>>2]=Pa;Qa=Ob(a,Oa,C)|0;if(Pa)ne(Pa);if(!Qa){bb=0;r=d;return bb|0}else Wa=836}else{cb=Ra;Wa=837}}else{cb=1;Wa=837}break}case 36:{if((j[Na+4>>1]|0)!=-1)Ja(135529,133171,5086,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5087,135010);Ra=b+8|0;Qa=Ra;Pa=k[Qa+4>>2]|0;if(!(Pa>>>0>0|(Pa|0)==0&(k[Qa>>2]|0)>>>0>65535)){Qa=tc(a,b,ya)|0;if(!Qa){Pa=m[b>>1]|0;Oa=k[ya>>2]|0;k[B>>2]=k[Ra>>2]&65535;k[B+4>>2]=Oa;Ra=Ob(a,Pa,B)|0;if(Oa)ne(Oa);if(!Ra){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}}else{cb=1;Wa=837}break}case 37:{if((j[Na+4>>1]|0)!=-1)Ja(135529,133171,5108,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5109,135010);Qa=b+8|0;Ra=Qa;Oa=k[Ra+4>>2]|0;if(!(Oa>>>0>0|(Oa|0)==0&(k[Ra>>2]|0)>>>0>65535)){Ra=mc(a,b,za)|0;if(!Ra){Oa=m[b>>1]|0;Pa=k[za>>2]|0;k[A>>2]=k[Qa>>2]&65535;k[A+4>>2]=Pa;Qa=Ob(a,Oa,A)|0;if(Pa)ne(Pa);if(!Qa){bb=0;r=d;return bb|0}else Wa=836}else{cb=Ra;Wa=837}}else{cb=1;Wa=837}break}case 38:{if((j[Na+4>>1]|0)!=-1)Ja(135529,133171,5130,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5131,135010);Ra=b+8|0;Qa=Ra;Pa=k[Qa+4>>2]|0;if(!(Pa>>>0>0|(Pa|0)==0&(k[Qa>>2]|0)>>>0>65535)){Qa=uc(a,b,Aa)|0;if(!Qa){Pa=m[b>>1]|0;Oa=k[Aa>>2]|0;k[z>>2]=k[Ra>>2]&65535;k[z+4>>2]=Oa;Ra=Ob(a,Pa,z)|0;if(Oa)ne(Oa);if(!Ra){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}}else{cb=1;Wa=837}break}case 39:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5152,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5153,135010);Qa=rc(a,b,Ba)|0;if(!Qa){Ra=m[b>>1]|0;Oa=k[Ba>>2]|0;k[y>>2]=k[b+8>>2];k[y+4>>2]=Oa;Pa=Ob(a,Ra,y)|0;if(Oa)ne(Oa);if(!Pa){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}break}case 40:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5169,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5170,135010);Qa=rc(a,b,Ca)|0;if(!Qa){Pa=m[b>>1]|0;Oa=k[Ca>>2]|0;k[x>>2]=k[b+8>>2];k[x+4>>2]=Oa;Ra=Ob(a,Pa,x)|0;if(Oa)ne(Oa);if(!Ra){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}break}case 41:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5186,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5187,135010);Qa=b+2|0;j:do switch(m[Qa>>1]|0){case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:case 7:{Ra=qc(a,b,_,1,$)|0;Oa=k[$>>2]|0;Pa=Oa;if((Ra|0)!=0|(Oa|0)==0)if(!Ra)_c=0;else{cb=Ra;Wa=837;break b}else{k:do switch(m[Qa>>1]|0){case 1:case 7:{Ra=k[_>>2]|0;if(!Ra)$c=Pa;else{Ya=Oa;Za=0;while(1){if((i[Ya>>0]|0)<=-1)break;Za=Za+1|0;if(Za>>>0>=Ra>>>0){$c=Pa;break k}else Ya=Ya+1|0}ne(Oa);ad=4;break j}break}case 6:{$c=Pa;break}default:{Ya=k[_>>2]|0;Ra=me(Ya)|0;if(!Ra){ne(Oa);ad=7;break j}l:do switch(m[Qa>>1]|0){case 3:{if(!Ya)Wa=621;else{Za=a+12|0;_a=Oa;Ta=Ra;bd=0;while(1){if(k[Za>>2]&128)Qd(_a);cd=j[_a>>1]|0;if((cd&65535)>=128){Wa=620;break l}i[Ta>>0]=cd;bd=bd+1|0;if(bd>>>0>=(k[_>>2]|0)>>>0){Wa=621;break}else{_a=_a+2|0;Ta=Ta+1|0}}}break}case 8:{if(!Ya)Wa=621;else{Ta=a+12|0;_a=Oa;bd=Ra;Za=0;while(1){if(k[Ta>>2]&128)Qd(_a);cd=j[_a>>1]|0;if((cd+128&65535)>=256){Wa=620;break l}i[bd>>0]=cd;Za=Za+1|0;if(Za>>>0>=(k[_>>2]|0)>>>0){Wa=621;break}else{_a=_a+2|0;bd=bd+1|0}}}break}case 4:{if(!Ya)Wa=621;else{bd=a+12|0;_a=Oa;Za=Ra;Ta=0;while(1){if(k[bd>>2]&128)Rd(_a);cd=k[_a>>2]|0;if(cd>>>0>=128){Wa=620;break l}i[Za>>0]=cd;Ta=Ta+1|0;if(Ta>>>0>=(k[_>>2]|0)>>>0){Wa=621;break}else{_a=_a+4|0;Za=Za+1|0}}}break}case 9:{if(!Ya)Wa=621;else{Za=a+12|0;_a=Oa;Ta=Ra;bd=0;while(1){if(k[Za>>2]&128)Rd(_a);cd=k[_a>>2]|0;if((cd+128|0)>>>0>=256){Wa=620;break l}i[Ta>>0]=cd;bd=bd+1|0;if(bd>>>0>=(k[_>>2]|0)>>>0){Wa=621;break}else{_a=_a+4|0;Ta=Ta+1|0}}}break}case 16:{if(!Ya)Wa=621;else{Ta=a+12|0;_a=Oa;bd=Ra;Za=0;while(1){if(k[Ta>>2]&128)Sd(_a);cd=_a;dd=k[cd>>2]|0;ed=k[cd+4>>2]|0;if(!(ed>>>0<0|(ed|0)==0&dd>>>0<128)){Wa=620;break l}i[bd>>0]=dd;Za=Za+1|0;if(Za>>>0>=(k[_>>2]|0)>>>0){Wa=621;break}else{_a=_a+8|0;bd=bd+1|0}}}break}case 17:{if(!Ya)Wa=621;else{bd=a+12|0;_a=Oa;Za=Ra;Ta=0;while(1){if(k[bd>>2]&128)Sd(_a);dd=_a;ed=k[dd>>2]|0;cd=sr(ed|0,k[dd+4>>2]|0,128,0)|0;dd=L;if(!(dd>>>0<0|(dd|0)==0&cd>>>0<256)){Wa=620;break l}i[Za>>0]=ed;Ta=Ta+1|0;if(Ta>>>0>=(k[_>>2]|0)>>>0){Wa=621;break}else{_a=_a+8|0;Za=Za+1|0}}}break}default:Wa=621}while(0);if((Wa|0)==620){ne(k[$>>2]|0);ne(Ra);ad=4;break j}else if((Wa|0)==621){ne(k[$>>2]|0);$c=Ra;break k}}}while(0);_c=$c}Oa=m[b>>1]|0;Pa=_c;k[w>>2]=k[b+8>>2];k[w+4>>2]=Pa;Ya=Ob(a,Oa,w)|0;if(_c)ne(Pa);if(!Ya)bb=0;else{Wa=836;break b}r=d;return bb|0}default:ad=2}while(0);cb=ad;Wa=837;break}case 42:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5203,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5204,135010);Qa=kc(a,b,Da)|0;if(!Qa){Ya=m[b>>1]|0;Pa=k[Da>>2]|0;k[v>>2]=k[b+8>>2];k[v+4>>2]=Pa;Oa=Ob(a,Ya,v)|0;if(Pa)ne(Pa);if(!Oa){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}break}case 43:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5220,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5221,135010);Qa=b+2|0;m:do switch(m[Qa>>1]|0){case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:{Oa=qc(a,b,_,2,$)|0;Pa=k[$>>2]|0;Ya=Pa;if((Oa|0)!=0|(Pa|0)==0)if(!Oa)fd=0;else{cb=Oa;Wa=837;break b}else{n:do switch(m[Qa>>1]|0){case 3:{Oa=k[_>>2]|0;if(!Oa)gd=Ya;else{Za=a+12|0;_a=Pa;Ta=0;while(1){if(k[Za>>2]&128)Qd(_a);if((j[_a>>1]|0)<=-1)break;Ta=Ta+1|0;if(Ta>>>0>=Oa>>>0){gd=Ya;break n}else _a=_a+2|0}ne(Pa);hd=4;break m}break}case 8:{if(!(k[a+12>>2]&128))gd=Ya;else{Td(Pa,k[_>>2]|0);gd=Ya}break}default:{_a=k[_>>2]|0;Oa=me(_a<<1)|0;if(!Oa){ne(Pa);hd=7;break m}o:do switch(m[Qa>>1]|0){case 1:{if(!_a)Wa=684;else{Ta=Pa;Za=Oa;Ra=0;while(1){j[Za>>1]=l[Ta>>0]|0;Ra=Ra+1|0;if((Ra|0)==(_a|0)){Wa=684;break}else{Ta=Ta+1|0;Za=Za+2|0}}}break}case 6:{if(!_a)Wa=684;else{Za=Pa;Ta=Oa;Ra=0;while(1){j[Ta>>1]=i[Za>>0]|0;Ra=Ra+1|0;if((Ra|0)==(_a|0)){Wa=684;break}else{Za=Za+1|0;Ta=Ta+2|0}}}break}case 4:{if(!_a)Wa=684;else{Ta=a+12|0;Za=Pa;Ra=Oa;bd=0;while(1){if(k[Ta>>2]&128)Rd(Za);ed=k[Za>>2]|0;if(ed>>>0>=32768){Wa=683;break o}j[Ra>>1]=ed;bd=bd+1|0;if(bd>>>0>=_a>>>0){Wa=684;break}else{Za=Za+4|0;Ra=Ra+2|0}}}break}case 9:{if(!_a)Wa=684;else{Ra=a+12|0;Za=Pa;bd=Oa;Ta=0;while(1){if(k[Ra>>2]&128)Rd(Za);ed=k[Za>>2]|0;if((ed+32768|0)>>>0>=65536){Wa=683;break o}j[bd>>1]=ed;Ta=Ta+1|0;if(Ta>>>0>=_a>>>0){Wa=684;break}else{Za=Za+4|0;bd=bd+2|0}}}break}case 16:{if(!_a)Wa=684;else{bd=a+12|0;Za=Pa;Ta=Oa;Ra=0;while(1){if(k[bd>>2]&128)Sd(Za);ed=Za;cd=k[ed>>2]|0;dd=k[ed+4>>2]|0;if(!(dd>>>0<0|(dd|0)==0&cd>>>0<32768)){Wa=683;break o}j[Ta>>1]=cd;Ra=Ra+1|0;if(Ra>>>0>=_a>>>0){Wa=684;break}else{Za=Za+8|0;Ta=Ta+2|0}}}break}case 17:{if(!_a)Wa=684;else{Ta=a+12|0;Za=Pa;Ra=Oa;bd=0;while(1){if(k[Ta>>2]&128)Sd(Za);cd=Za;dd=k[cd>>2]|0;ed=sr(dd|0,k[cd+4>>2]|0,32768,0)|0;cd=L;if(!(cd>>>0<0|(cd|0)==0&ed>>>0<65536)){Wa=683;break o}j[Ra>>1]=dd;bd=bd+1|0;if(bd>>>0>=_a>>>0){Wa=684;break}else{Za=Za+8|0;Ra=Ra+2|0}}}break}default:Wa=684}while(0);if((Wa|0)==683){ne(Pa);ne(Oa);hd=4;break m}else if((Wa|0)==684){ne(Pa);gd=Oa;break n}}}while(0);fd=gd}Pa=m[b>>1]|0;k[u>>2]=k[b+8>>2];k[u+4>>2]=fd;Ya=Ob(a,Pa,u)|0;if(fd)ne(fd);if(!Ya)bb=0;else{Wa=836;break b}r=d;return bb|0}default:hd=2}while(0);cb=hd;Wa=837;break}case 44:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5237,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5238,135010);Qa=sc(a,b,Ea)|0;if(!Qa){Ya=m[b>>1]|0;Pa=k[Ea>>2]|0;k[s>>2]=k[b+8>>2];k[s+4>>2]=Pa;_a=Ob(a,Ya,s)|0;if(Pa)ne(Pa);if(!_a){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}break}case 45:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5254,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5255,135010);Qa=b+2|0;p:do switch(m[Qa>>1]|0){case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:{_a=qc(a,b,_,4,$)|0;Pa=k[$>>2]|0;Ya=Pa;if((_a|0)!=0|(Pa|0)==0)if(!_a)id=0;else{cb=_a;Wa=837;break b}else{q:do switch(m[Qa>>1]|0){case 4:{_a=k[_>>2]|0;if(!_a)jd=Ya;else{Ra=a+12|0;Za=Pa;bd=0;while(1){if(k[Ra>>2]&128)Rd(Za);Ta=k[Za>>2]>>31&4;if(Ta){kd=Ta;break}bd=bd+1|0;if(bd>>>0>=_a>>>0){jd=Ya;break q}else Za=Za+4|0}ne(Pa);ld=kd;break p}break}case 9:{if(!(k[a+12>>2]&128))jd=Ya;else{Vd(Pa,k[_>>2]|0);jd=Ya}break}default:{Za=k[_>>2]|0;_a=me(Za<<2)|0;if(!_a){ne(Pa);ld=7;break p}r:do switch(m[Qa>>1]|0){case 1:{if(!Za)Wa=745;else{bd=Pa;Ra=_a;Oa=0;while(1){k[Ra>>2]=l[bd>>0];Oa=Oa+1|0;if(Oa>>>0>=(k[_>>2]|0)>>>0){Wa=745;break}else{bd=bd+1|0;Ra=Ra+4|0}}}break}case 6:{if(!Za)Wa=745;else{Ra=Pa;bd=_a;Oa=0;while(1){k[bd>>2]=i[Ra>>0];Oa=Oa+1|0;if(Oa>>>0>=(k[_>>2]|0)>>>0){Wa=745;break}else{Ra=Ra+1|0;bd=bd+4|0}}}break}case 3:{if(!Za)Wa=745;else{bd=a+12|0;Ra=Pa;Oa=_a;Ta=0;while(1){if(k[bd>>2]&128)Qd(Ra);k[Oa>>2]=m[Ra>>1];Ta=Ta+1|0;if(Ta>>>0>=(k[_>>2]|0)>>>0){Wa=745;break}else{Ra=Ra+2|0;Oa=Oa+4|0}}}break}case 8:{if(!Za)Wa=745;else{Oa=a+12|0;Ra=Pa;Ta=_a;bd=0;while(1){if(k[Oa>>2]&128)Qd(Ra);k[Ta>>2]=j[Ra>>1];bd=bd+1|0;if(bd>>>0>=(k[_>>2]|0)>>>0){Wa=745;break}else{Ra=Ra+2|0;Ta=Ta+4|0}}}break}case 16:{if(!Za)Wa=745;else{Ta=a+12|0;Ra=Pa;bd=_a;Oa=0;while(1){if(k[Ta>>2]&128)Sd(Ra);dd=Ra;ed=k[dd>>2]|0;cd=k[dd+4>>2]|0;if(!(cd>>>0<0|(cd|0)==0&ed>>>0<2147483648)){Wa=744;break r}k[bd>>2]=ed;Oa=Oa+1|0;if(Oa>>>0>=(k[_>>2]|0)>>>0){Wa=745;break}else{Ra=Ra+8|0;bd=bd+4|0}}}break}case 17:{if(!Za)Wa=745;else{bd=a+12|0;Ra=Pa;Oa=_a;Ta=0;while(1){if(k[bd>>2]&128)Sd(Ra);ed=Ra;cd=k[ed>>2]|0;dd=sr(cd|0,k[ed+4>>2]|0,-2147483648,0)|0;ed=L;if(!(ed>>>0<1|(ed|0)==1&dd>>>0<0)){Wa=744;break r}k[Oa>>2]=cd;Ta=Ta+1|0;if(Ta>>>0>=(k[_>>2]|0)>>>0){Wa=745;break}else{Ra=Ra+8|0;Oa=Oa+4|0}}}break}default:Wa=745}while(0);if((Wa|0)==744){ne(Pa);ne(_a);ld=4;break p}else if((Wa|0)==745){ne(Pa);jd=_a;break q}}}while(0);id=jd}Pa=m[b>>1]|0;k[q>>2]=k[b+8>>2];k[q+4>>2]=id;Ya=Ob(a,Pa,q)|0;if(id)ne(id);if(!Ya)bb=0;else{Wa=836;break b}r=d;return bb|0}default:ld=2}while(0);cb=ld;Wa=837;break}case 46:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5271,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5272,135010);Qa=pc(a,b,Fa)|0;if(!Qa){Ya=m[b>>1]|0;Pa=k[Fa>>2]|0;k[n>>2]=k[b+8>>2];k[n+4>>2]=Pa;Za=Ob(a,Ya,n)|0;if(Pa)ne(Pa);if(!Za){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}break}case 47:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5288,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5289,135010);Qa=b+2|0;s:do switch(m[Qa>>1]|0){case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:{Za=qc(a,b,_,8,$)|0;Pa=k[$>>2]|0;Ya=Pa;if((Za|0)!=0|(Pa|0)==0)if(!Za)md=0;else{cb=Za;Wa=837;break b}else{t:do switch(m[Qa>>1]|0){case 16:{Za=k[_>>2]|0;if(!Za)nd=Ya;else{Oa=a+12|0;Ra=Pa;Ta=0;while(1){if(k[Oa>>2]&128)Sd(Ra);bd=Ra;cd=k[bd+4>>2]|0;if(!((cd|0)>-1|(cd|0)==-1&(k[bd>>2]|0)>>>0>4294967295))break;Ta=Ta+1|0;if(Ta>>>0>=Za>>>0){nd=Ya;break t}else Ra=Ra+8|0}ne(Pa);od=4;break s}break}case 17:{if(!(k[a+12>>2]&128))nd=Ya;else{Wd(Pa,k[_>>2]|0);nd=Ya}break}default:{Ra=k[_>>2]|0;Za=me(Ra<<3)|0;if(!Za){ne(Pa);od=7;break s}switch(m[Qa>>1]|0){case 1:{if(Ra){Ta=Pa;Oa=Za;_a=0;while(1){bd=Oa;k[bd>>2]=l[Ta>>0];k[bd+4>>2]=0;_a=_a+1|0;if((_a|0)==(Ra|0))break;else{Ta=Ta+1|0;Oa=Oa+8|0}}}break}case 6:{if(Ra){Oa=Pa;Ta=Za;_a=0;while(1){bd=i[Oa>>0]|0;cd=Ta;k[cd>>2]=bd;k[cd+4>>2]=((bd|0)<0)<<31>>31;_a=_a+1|0;if((_a|0)==(Ra|0))break;else{Oa=Oa+1|0;Ta=Ta+8|0}}}break}case 3:{if(Ra){Ta=a+12|0;Oa=Pa;_a=Za;bd=0;while(1){if(k[Ta>>2]&128)Qd(Oa);cd=_a;k[cd>>2]=m[Oa>>1];k[cd+4>>2]=0;bd=bd+1|0;if((bd|0)==(Ra|0))break;else{Oa=Oa+2|0;_a=_a+8|0}}}break}case 8:{if(Ra){_a=a+12|0;Oa=Pa;bd=Za;Ta=0;while(1){if(k[_a>>2]&128)Qd(Oa);cd=j[Oa>>1]|0;dd=bd;k[dd>>2]=cd;k[dd+4>>2]=((cd|0)<0)<<31>>31;Ta=Ta+1|0;if((Ta|0)==(Ra|0))break;else{Oa=Oa+2|0;bd=bd+8|0}}}break}case 4:{if(Ra){bd=a+12|0;Oa=Pa;Ta=Za;_a=0;while(1){if(k[bd>>2]&128)Rd(Oa);cd=Ta;k[cd>>2]=k[Oa>>2];k[cd+4>>2]=0;_a=_a+1|0;if((_a|0)==(Ra|0))break;else{Oa=Oa+4|0;Ta=Ta+8|0}}}break}case 9:{if(Ra){Ta=a+12|0;Oa=Pa;_a=Za;bd=0;while(1){if(k[Ta>>2]&128)Rd(Oa);cd=k[Oa>>2]|0;dd=_a;k[dd>>2]=cd;k[dd+4>>2]=((cd|0)<0)<<31>>31;bd=bd+1|0;if((bd|0)==(Ra|0))break;else{Oa=Oa+4|0;_a=_a+8|0}}}break}default:{}}ne(Pa);nd=Za}}while(0);md=nd}Pa=m[b>>1]|0;k[h>>2]=k[b+8>>2];k[h+4>>2]=md;Ya=Ob(a,Pa,h)|0;if(md)ne(md);if(!Ya)bb=0;else{Wa=836;break b}r=d;return bb|0}default:od=2}while(0);cb=od;Wa=837;break}case 48:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5305,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5306,135010);Qa=tc(a,b,Ga)|0;if(!Qa){Ya=m[b>>1]|0;Pa=k[Ga>>2]|0;k[g>>2]=k[b+8>>2];k[g+4>>2]=Pa;_a=Ob(a,Ya,g)|0;if(Pa)ne(Pa);if(!_a){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}break}case 49:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5322,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5323,135010);Qa=mc(a,b,Ha)|0;if(!Qa){_a=m[b>>1]|0;Pa=k[Ha>>2]|0;k[f>>2]=k[b+8>>2];k[f+4>>2]=Pa;Ya=Ob(a,_a,f)|0;if(Pa)ne(Pa);if(!Ya){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}break}case 50:{if((j[Na+4>>1]|0)!=-3)Ja(135589,133171,5339,135010);if((i[Na+27>>0]|0)!=1)Ja(135565,133171,5340,135010);Qa=uc(a,b,Ia)|0;if(!Qa){Ya=m[b>>1]|0;Pa=k[Ia>>2]|0;k[e>>2]=k[b+8>>2];k[e+4>>2]=Pa;_a=Ob(a,Ya,e)|0;if(Pa)ne(Pa);if(!_a){bb=0;r=d;return bb|0}else Wa=836}else{cb=Qa;Wa=837}break}default:Ja(141469,133171,5354,135010)}while(0);if((Wa|0)==835){bb=1;r=d;return bb|0}else if((Wa|0)==836){bb=1;r=d;return bb|0}else if((Wa|0)==837){lc(a,cb,135010,k[Na+28>>2]|0,c);bb=0;r=d;return bb|0}}while(0);c=k[a+628>>2]|0;k[Z>>2]=La&65535;vc(c,135010,135029,Z);bb=0;r=d;return bb|0}function jc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;d=r;r=r+32|0;e=d+24|0;f=d+28|0;g=d+20|0;h=d+16|0;n=d+8|0;o=d;p=b+8|0;if(!((k[p>>2]|0)==1&(k[p+4>>2]|0)==0)){q=1;r=d;return q|0}switch(m[b+2>>1]|0|0){case 1:{j[c>>1]=l[b+16>>0]|0;q=0;r=d;return q|0}case 6:{p=i[b+16>>0]|0;if(p<<24>>24<=-1){q=4;r=d;return q|0}j[c>>1]=p<<24>>24;q=0;r=d;return q|0}case 3:{p=k[a+12>>2]|0;j[c>>1]=j[b+16>>1]|0;if(!(p&128)){q=0;r=d;return q|0}Qd(c);q=0;r=d;return q|0}case 8:{p=k[a+12>>2]|0;s=j[b+16>>1]|0;j[f>>1]=s;if(!(p&128))t=s;else{Qd(f);t=j[f>>1]|0}if(t<<16>>16<=-1){q=4;r=d;return q|0}j[c>>1]=t;q=0;r=d;return q|0}case 4:{t=k[b+16>>2]|0;k[g>>2]=t;if(!(k[a+12>>2]&128))u=t;else{Rd(g);u=k[g>>2]|0}if(u>>>0>=65536){q=4;r=d;return q|0}j[c>>1]=u;q=0;r=d;return q|0}case 9:{u=k[b+16>>2]|0;k[h>>2]=u;if(!(k[a+12>>2]&128))v=u;else{Rd(h);v=k[h>>2]|0}if(v>>>0>=65536){q=4;r=d;return q|0}j[c>>1]=v;q=0;r=d;return q|0}case 16:{v=a+12|0;h=k[v>>2]|0;u=b+16|0;do if(!(h&524288)){g=k[u>>2]|0;k[e>>2]=g;if(!(h&128)){w=h;x=g}else{Rd(e);w=k[v>>2]|0;x=k[e>>2]|0}if(!(w&2048)){g=a+628|0;t=xb[k[a+640>>2]&63](k[g>>2]|0,x,0,0)|0;if((t|0)==(x|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[g>>2]|0,n,8)|0)==8:0)y=29}else if(x>>>0<=4294967287?(x+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(n,(k[a+612>>2]|0)+x|0,8);y=29}if((y|0)==29){z=k[v>>2]|0;break}q=3;r=d;return q|0}else{g=u;t=k[g+4>>2]|0;f=n;k[f>>2]=k[g>>2];k[f+4>>2]=t;z=h}while(0);if(z&128)Sd(n);z=n;n=k[z>>2]|0;h=k[z+4>>2]|0;if(!(h>>>0<0|(h|0)==0&n>>>0<65536)){q=4;r=d;return q|0}j[c>>1]=n;q=0;r=d;return q|0}case 17:{n=a+12|0;h=k[n>>2]|0;z=b+16|0;do if(!(h&524288)){b=k[z>>2]|0;k[e>>2]=b;if(!(h&128)){A=h;B=b}else{Rd(e);A=k[n>>2]|0;B=k[e>>2]|0}if(!(A&2048)){b=a+628|0;u=xb[k[a+640>>2]&63](k[b>>2]|0,B,0,0)|0;if((u|0)==(B|0)&(L|0)==0?(nb[k[a+632>>2]&63](k[b>>2]|0,o,8)|0)==8:0)y=45}else if(B>>>0<=4294967287?(B+8|0)>>>0<=(k[a+616>>2]|0)>>>0:0){qe(o,(k[a+612>>2]|0)+B|0,8);y=45}if((y|0)==45){C=k[n>>2]|0;break}q=3;r=d;return q|0}else{b=z;u=k[b+4>>2]|0;v=o;k[v>>2]=k[b>>2];k[v+4>>2]=u;C=h}while(0);if(C&128)Sd(o);C=o;o=k[C>>2]|0;h=k[C+4>>2]|0;if(!(h>>>0<0|(h|0)==0&o>>>0<65536)){q=4;r=d;return q|0}j[c>>1]=o;q=0;r=d;return q|0}default:{q=2;r=d;return q|0}}return 0}function kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;d=r;r=r+16|0;e=d+4|0;f=d;g=b+2|0;switch(m[g>>1]|0){case 17:case 16:case 9:case 4:case 8:case 3:case 6:case 1:break;default:{h=2;r=d;return h|0}}n=qc(a,b,e,2,f)|0;b=k[f>>2]|0;f=b;if((n|0)!=0|(b|0)==0){k[c>>2]=0;h=n;r=d;return h|0}switch(m[g>>1]|0){case 3:{k[c>>2]=b;if(!(k[a+12>>2]&128)){h=0;r=d;return h|0}Td(b,k[e>>2]|0);h=0;r=d;return h|0}case 8:{n=k[e>>2]|0;a:do if(n){o=a+12|0;p=b;q=0;while(1){if(k[o>>2]&128)Qd(p);if((j[p>>1]|0)<=-1)break;q=q+1|0;if(q>>>0>=n>>>0)break a;else p=p+2|0}ne(b);h=4;r=d;return h|0}while(0);k[c>>2]=f;h=0;r=d;return h|0}default:{f=k[e>>2]|0;e=me(f<<1)|0;if(!e){ne(b);h=7;r=d;return h|0}b:do switch(m[g>>1]|0){case 1:{if(!f)s=48;else{n=b;p=e;q=0;while(1){j[p>>1]=l[n>>0]|0;q=q+1|0;if(q>>>0>=f>>>0){s=48;break}else{n=n+1|0;p=p+2|0}}}break}case 6:{if(!f)s=48;else{p=b;n=e;q=0;while(1){o=i[p>>0]|0;if(o<<24>>24<=-1){s=47;break b}j[n>>1]=o<<24>>24;q=q+1|0;if(q>>>0>=f>>>0){s=48;break}else{p=p+1|0;n=n+2|0}}}break}case 4:{if(!f)s=48;else{n=a+12|0;p=b;q=e;o=0;while(1){if(k[n>>2]&128)Rd(p);t=k[p>>2]|0;if(t>>>0>=65536){s=47;break b}j[q>>1]=t;o=o+1|0;if(o>>>0>=f>>>0){s=48;break}else{p=p+4|0;q=q+2|0}}}break}case 9:{if(!f)s=48;else{q=a+12|0;p=b;o=e;n=0;while(1){if(k[q>>2]&128)Rd(p);t=k[p>>2]|0;if(t>>>0>=65536){s=47;break b}j[o>>1]=t;n=n+1|0;if(n>>>0>=f>>>0){s=48;break}else{p=p+4|0;o=o+2|0}}}break}case 16:{if(!f)s=48;else{o=a+12|0;p=b;n=e;q=0;while(1){if(k[o>>2]&128)Sd(p);t=p;u=k[t>>2]|0;v=k[t+4>>2]|0;if(!(v>>>0<0|(v|0)==0&u>>>0<65536)){s=47;break b}j[n>>1]=u;q=q+1|0;if(q>>>0>=f>>>0){s=48;break}else{p=p+8|0;n=n+2|0}}}break}case 17:{if(!f)s=48;else{n=a+12|0;p=b;q=e;o=0;while(1){if(k[n>>2]&128)Sd(p);u=p;v=k[u>>2]|0;t=k[u+4>>2]|0;if(!(t>>>0<0|(t|0)==0&v>>>0<65536)){s=47;break b}j[q>>1]=v;o=o+1|0;if(o>>>0>=f>>>0){s=48;break}else{p=p+8|0;q=q+2|0}}}break}default:s=48}while(0);if((s|0)==47){ne(b);ne(e);h=4;r=d;return h|0}else if((s|0)==48){ne(b);k[c>>2]=e;h=0;r=d;return h|0}}}return 0}function lc(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,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;f=r;r=r+112|0;g=f+104|0;h=f+96|0;i=f+88|0;j=f+80|0;l=f+72|0;m=f+64|0;n=f+56|0;o=f+48|0;p=f+40|0;q=f+32|0;s=f+24|0;t=f+16|0;u=f+8|0;v=f;if(!e)switch(b|0){case 1:{e=k[a+628>>2]|0;k[v>>2]=d;vc(e,c,134429,v);r=f;return}case 2:{v=k[a+628>>2]|0;k[u>>2]=d;vc(v,c,134454,u);r=f;return}case 3:{u=k[a+628>>2]|0;k[t>>2]=d;vc(u,c,134481,t);r=f;return}case 4:{t=k[a+628>>2]|0;k[s>>2]=d;vc(t,c,134513,s);r=f;return}case 5:{s=k[a+628>>2]|0;k[q>>2]=d;vc(s,c,134538,q);r=f;return}case 6:{q=k[a+628>>2]|0;k[p>>2]=d;vc(q,c,134589,p);r=f;return}case 7:{p=k[a+628>>2]|0;k[o>>2]=d;vc(p,c,134631,o);r=f;return}default:Ja(141469,133171,3345,134661)}else switch(b|0){case 1:{b=k[a+628>>2]|0;k[n>>2]=d;ie(b,c,134687,n);r=f;return}case 2:{n=k[a+628>>2]|0;k[m>>2]=d;ie(n,c,134725,m);r=f;return}case 3:{m=k[a+628>>2]|0;k[l>>2]=d;ie(m,c,134765,l);r=f;return}case 4:{l=k[a+628>>2]|0;k[j>>2]=d;ie(l,c,134810,j);r=f;return}case 5:{j=k[a+628>>2]|0;k[i>>2]=d;ie(j,c,134848,i);r=f;return}case 6:{i=k[a+628>>2]|0;k[h>>2]=d;ie(i,c,134912,h);r=f;return}case 7:{h=k[a+628>>2]|0;k[g>>2]=d;ie(h,c,134967,g);r=f;return}default:Ja(141469,133171,3386,134661)}}
function jr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0;do if(a>>>0<245){b=a>>>0<11?16:a+11&-8;c=b>>>3;d=k[30806]|0;e=d>>>c;if(e&3){f=(e&1^1)+c|0;g=f<<1;h=123264+(g<<2)|0;i=123264+(g+2<<2)|0;g=k[i>>2]|0;j=g+8|0;l=k[j>>2]|0;do if((h|0)!=(l|0)){if(l>>>0<(k[30810]|0)>>>0)db();m=l+12|0;if((k[m>>2]|0)==(g|0)){k[m>>2]=h;k[i>>2]=l;break}else db()}else k[30806]=d&~(1<<f);while(0);l=f<<3;k[g+4>>2]=l|3;i=g+(l|4)|0;k[i>>2]=k[i>>2]|1;n=j;return n|0}i=k[30808]|0;if(b>>>0>i>>>0){if(e){l=2<<c;h=e<<c&(l|0-l);l=(h&0-h)+-1|0;h=l>>>12&16;m=l>>>h;l=m>>>5&8;o=m>>>l;m=o>>>2&4;p=o>>>m;o=p>>>1&2;q=p>>>o;p=q>>>1&1;r=(l|h|m|o|p)+(q>>>p)|0;p=r<<1;q=123264+(p<<2)|0;o=123264+(p+2<<2)|0;p=k[o>>2]|0;m=p+8|0;h=k[m>>2]|0;do if((q|0)!=(h|0)){if(h>>>0<(k[30810]|0)>>>0)db();l=h+12|0;if((k[l>>2]|0)==(p|0)){k[l>>2]=q;k[o>>2]=h;s=k[30808]|0;break}else db()}else{k[30806]=d&~(1<<r);s=i}while(0);i=r<<3;d=i-b|0;k[p+4>>2]=b|3;h=p+b|0;k[p+(b|4)>>2]=d|1;k[p+i>>2]=d;if(s){i=k[30811]|0;o=s>>>3;q=o<<1;c=123264+(q<<2)|0;e=k[30806]|0;j=1<<o;if(e&j){o=123264+(q+2<<2)|0;g=k[o>>2]|0;if(g>>>0<(k[30810]|0)>>>0)db();else{t=o;u=g}}else{k[30806]=e|j;t=123264+(q+2<<2)|0;u=c}k[t>>2]=i;k[u+12>>2]=i;k[i+8>>2]=u;k[i+12>>2]=c}k[30808]=d;k[30811]=h;n=m;return n|0}h=k[30807]|0;if(h){d=(h&0-h)+-1|0;h=d>>>12&16;c=d>>>h;d=c>>>5&8;i=c>>>d;c=i>>>2&4;q=i>>>c;i=q>>>1&2;j=q>>>i;q=j>>>1&1;e=k[123528+((d|h|c|i|q)+(j>>>q)<<2)>>2]|0;q=(k[e+4>>2]&-8)-b|0;j=e;i=e;while(1){e=k[j+16>>2]|0;if(!e){c=k[j+20>>2]|0;if(!c){v=q;w=i;break}else x=c}else x=e;e=(k[x+4>>2]&-8)-b|0;c=e>>>0<q>>>0;q=c?e:q;j=x;i=c?x:i}i=k[30810]|0;if(w>>>0<i>>>0)db();j=w+b|0;if(w>>>0>=j>>>0)db();q=k[w+24>>2]|0;m=k[w+12>>2]|0;do if((m|0)==(w|0)){p=w+20|0;r=k[p>>2]|0;if(!r){c=w+16|0;e=k[c>>2]|0;if(!e){y=0;break}else{z=e;A=c}}else{z=r;A=p}while(1){p=z+20|0;r=k[p>>2]|0;if(r){z=r;A=p;continue}p=z+16|0;r=k[p>>2]|0;if(!r){B=z;C=A;break}else{z=r;A=p}}if(C>>>0<i>>>0)db();else{k[C>>2]=0;y=B;break}}else{p=k[w+8>>2]|0;if(p>>>0<i>>>0)db();r=p+12|0;if((k[r>>2]|0)!=(w|0))db();c=m+8|0;if((k[c>>2]|0)==(w|0)){k[r>>2]=m;k[c>>2]=p;y=m;break}else db()}while(0);do if(q){m=k[w+28>>2]|0;i=123528+(m<<2)|0;if((w|0)==(k[i>>2]|0)){k[i>>2]=y;if(!y){k[30807]=k[30807]&~(1<<m);break}}else{if(q>>>0<(k[30810]|0)>>>0)db();m=q+16|0;if((k[m>>2]|0)==(w|0))k[m>>2]=y;else k[q+20>>2]=y;if(!y)break}m=k[30810]|0;if(y>>>0<m>>>0)db();k[y+24>>2]=q;i=k[w+16>>2]|0;do if(i)if(i>>>0<m>>>0)db();else{k[y+16>>2]=i;k[i+24>>2]=y;break}while(0);i=k[w+20>>2]|0;if(i)if(i>>>0<(k[30810]|0)>>>0)db();else{k[y+20>>2]=i;k[i+24>>2]=y;break}}while(0);if(v>>>0<16){q=v+b|0;k[w+4>>2]=q|3;i=w+(q+4)|0;k[i>>2]=k[i>>2]|1}else{k[w+4>>2]=b|3;k[w+(b|4)>>2]=v|1;k[w+(v+b)>>2]=v;i=k[30808]|0;if(i){q=k[30811]|0;m=i>>>3;i=m<<1;p=123264+(i<<2)|0;c=k[30806]|0;r=1<<m;if(c&r){m=123264+(i+2<<2)|0;e=k[m>>2]|0;if(e>>>0<(k[30810]|0)>>>0)db();else{D=m;E=e}}else{k[30806]=c|r;D=123264+(i+2<<2)|0;E=p}k[D>>2]=q;k[E+12>>2]=q;k[q+8>>2]=E;k[q+12>>2]=p}k[30808]=v;k[30811]=j}n=w+8|0;return n|0}else F=b}else F=b}else if(a>>>0<=4294967231){p=a+11|0;q=p&-8;i=k[30807]|0;if(i){r=0-q|0;c=p>>>8;if(c)if(q>>>0>16777215)G=31;else{p=(c+1048320|0)>>>16&8;e=c<<p;c=(e+520192|0)>>>16&4;m=e<<c;e=(m+245760|0)>>>16&2;h=14-(c|p|e)+(m<<e>>>15)|0;G=q>>>(h+7|0)&1|h<<1}else G=0;h=k[123528+(G<<2)>>2]|0;a:do if(!h){H=r;I=0;J=0;K=86}else{e=r;m=0;p=q<<((G|0)==31?0:25-(G>>>1)|0);c=h;d=0;while(1){g=k[c+4>>2]&-8;o=g-q|0;if(o>>>0<e>>>0)if((g|0)==(q|0)){L=o;M=c;N=c;K=90;break a}else{O=o;P=c}else{O=e;P=d}o=k[c+20>>2]|0;c=k[c+16+(p>>>31<<2)>>2]|0;g=(o|0)==0|(o|0)==(c|0)?m:o;if(!c){H=O;I=g;J=P;K=86;break}else{e=O;m=g;p=p<<1;d=P}}}while(0);if((K|0)==86){if((I|0)==0&(J|0)==0){h=2<<G;r=i&(h|0-h);if(!r){F=q;break}h=(r&0-r)+-1|0;r=h>>>12&16;b=h>>>r;h=b>>>5&8;j=b>>>h;b=j>>>2&4;d=j>>>b;j=d>>>1&2;p=d>>>j;d=p>>>1&1;Q=k[123528+((h|r|b|j|d)+(p>>>d)<<2)>>2]|0;R=0}else{Q=I;R=J}if(!Q){S=H;T=R}else{L=H;M=Q;N=R;K=90}}if((K|0)==90)while(1){K=0;d=(k[M+4>>2]&-8)-q|0;p=d>>>0<L>>>0;j=p?d:L;d=p?M:N;p=k[M+16>>2]|0;if(p){L=j;M=p;N=d;K=90;continue}M=k[M+20>>2]|0;if(!M){S=j;T=d;break}else{L=j;N=d;K=90}}if((T|0)!=0?S>>>0<((k[30808]|0)-q|0)>>>0:0){i=k[30810]|0;if(T>>>0<i>>>0)db();d=T+q|0;if(T>>>0>=d>>>0)db();j=k[T+24>>2]|0;p=k[T+12>>2]|0;do if((p|0)==(T|0)){b=T+20|0;r=k[b>>2]|0;if(!r){h=T+16|0;m=k[h>>2]|0;if(!m){U=0;break}else{V=m;W=h}}else{V=r;W=b}while(1){b=V+20|0;r=k[b>>2]|0;if(r){V=r;W=b;continue}b=V+16|0;r=k[b>>2]|0;if(!r){X=V;Y=W;break}else{V=r;W=b}}if(Y>>>0<i>>>0)db();else{k[Y>>2]=0;U=X;break}}else{b=k[T+8>>2]|0;if(b>>>0<i>>>0)db();r=b+12|0;if((k[r>>2]|0)!=(T|0))db();h=p+8|0;if((k[h>>2]|0)==(T|0)){k[r>>2]=p;k[h>>2]=b;U=p;break}else db()}while(0);do if(j){p=k[T+28>>2]|0;i=123528+(p<<2)|0;if((T|0)==(k[i>>2]|0)){k[i>>2]=U;if(!U){k[30807]=k[30807]&~(1<<p);break}}else{if(j>>>0<(k[30810]|0)>>>0)db();p=j+16|0;if((k[p>>2]|0)==(T|0))k[p>>2]=U;else k[j+20>>2]=U;if(!U)break}p=k[30810]|0;if(U>>>0<p>>>0)db();k[U+24>>2]=j;i=k[T+16>>2]|0;do if(i)if(i>>>0<p>>>0)db();else{k[U+16>>2]=i;k[i+24>>2]=U;break}while(0);i=k[T+20>>2]|0;if(i)if(i>>>0<(k[30810]|0)>>>0)db();else{k[U+20>>2]=i;k[i+24>>2]=U;break}}while(0);b:do if(S>>>0>=16){k[T+4>>2]=q|3;k[T+(q|4)>>2]=S|1;k[T+(S+q)>>2]=S;j=S>>>3;if(S>>>0<256){i=j<<1;p=123264+(i<<2)|0;b=k[30806]|0;h=1<<j;if(b&h){j=123264+(i+2<<2)|0;r=k[j>>2]|0;if(r>>>0<(k[30810]|0)>>>0)db();else{Z=j;_=r}}else{k[30806]=b|h;Z=123264+(i+2<<2)|0;_=p}k[Z>>2]=d;k[_+12>>2]=d;k[T+(q+8)>>2]=_;k[T+(q+12)>>2]=p;break}p=S>>>8;if(p)if(S>>>0>16777215)$=31;else{i=(p+1048320|0)>>>16&8;h=p<<i;p=(h+520192|0)>>>16&4;b=h<<p;h=(b+245760|0)>>>16&2;r=14-(p|i|h)+(b<<h>>>15)|0;$=S>>>(r+7|0)&1|r<<1}else $=0;r=123528+($<<2)|0;k[T+(q+28)>>2]=$;k[T+(q+20)>>2]=0;k[T+(q+16)>>2]=0;h=k[30807]|0;b=1<<$;if(!(h&b)){k[30807]=h|b;k[r>>2]=d;k[T+(q+24)>>2]=r;k[T+(q+12)>>2]=d;k[T+(q+8)>>2]=d;break}b=k[r>>2]|0;c:do if((k[b+4>>2]&-8|0)!=(S|0)){r=S<<(($|0)==31?0:25-($>>>1)|0);h=b;while(1){i=h+16+(r>>>31<<2)|0;p=k[i>>2]|0;if(!p){aa=i;ba=h;break}if((k[p+4>>2]&-8|0)==(S|0)){ca=p;break c}else{r=r<<1;h=p}}if(aa>>>0<(k[30810]|0)>>>0)db();else{k[aa>>2]=d;k[T+(q+24)>>2]=ba;k[T+(q+12)>>2]=d;k[T+(q+8)>>2]=d;break b}}else ca=b;while(0);b=ca+8|0;h=k[b>>2]|0;r=k[30810]|0;if(h>>>0>=r>>>0&ca>>>0>=r>>>0){k[h+12>>2]=d;k[b>>2]=d;k[T+(q+8)>>2]=h;k[T+(q+12)>>2]=ca;k[T+(q+24)>>2]=0;break}else db()}else{h=S+q|0;k[T+4>>2]=h|3;b=T+(h+4)|0;k[b>>2]=k[b>>2]|1}while(0);n=T+8|0;return n|0}else F=q}else F=q}else F=-1;while(0);T=k[30808]|0;if(T>>>0>=F>>>0){S=T-F|0;ca=k[30811]|0;if(S>>>0>15){k[30811]=ca+F;k[30808]=S;k[ca+(F+4)>>2]=S|1;k[ca+T>>2]=S;k[ca+4>>2]=F|3}else{k[30808]=0;k[30811]=0;k[ca+4>>2]=T|3;S=ca+(T+4)|0;k[S>>2]=k[S>>2]|1}n=ca+8|0;return n|0}ca=k[30809]|0;if(ca>>>0>F>>>0){S=ca-F|0;k[30809]=S;ca=k[30812]|0;k[30812]=ca+F;k[ca+(F+4)>>2]=S|1;k[ca+4>>2]=F|3;n=ca+8|0;return n|0}do if(!(k[30924]|0)){ca=bb(30)|0;if(!(ca+-1&ca)){k[30926]=ca;k[30925]=ca;k[30927]=-1;k[30928]=-1;k[30929]=0;k[30917]=0;ca=(gb(0)|0)&-16^1431655768;k[30924]=ca;break}else db()}while(0);ca=F+48|0;S=k[30926]|0;T=F+47|0;ba=S+T|0;aa=0-S|0;S=ba&aa;if(S>>>0<=F>>>0){n=0;return n|0}$=k[30916]|0;if(($|0)!=0?(_=k[30914]|0,Z=_+S|0,Z>>>0<=_>>>0|Z>>>0>$>>>0):0){n=0;return n|0}d:do if(!(k[30917]&4)){$=k[30812]|0;e:do if($){Z=123672;while(1){_=k[Z>>2]|0;if(_>>>0<=$>>>0?(U=Z+4|0,(_+(k[U>>2]|0)|0)>>>0>$>>>0):0){da=Z;ea=U;break}Z=k[Z+8>>2]|0;if(!Z){K=174;break e}}Z=ba-(k[30809]|0)&aa;if(Z>>>0<2147483647){U=Oa(Z|0)|0;_=(U|0)==((k[da>>2]|0)+(k[ea>>2]|0)|0);X=_?Z:0;if(_)if((U|0)==(-1|0))fa=X;else{ga=U;ha=X;K=194;break d}else{ia=U;ja=Z;ka=X;K=184}}else fa=0}else K=174;while(0);do if((K|0)==174){$=Oa(0)|0;if(($|0)!=(-1|0)){q=$;X=k[30925]|0;Z=X+-1|0;if(!(Z&q))la=S;else la=S-q+(Z+q&0-X)|0;X=k[30914]|0;q=X+la|0;if(la>>>0>F>>>0&la>>>0<2147483647){Z=k[30916]|0;if((Z|0)!=0?q>>>0<=X>>>0|q>>>0>Z>>>0:0){fa=0;break}Z=Oa(la|0)|0;q=(Z|0)==($|0);X=q?la:0;if(q){ga=$;ha=X;K=194;break d}else{ia=Z;ja=la;ka=X;K=184}}else fa=0}else fa=0}while(0);f:do if((K|0)==184){X=0-ja|0;do if(ca>>>0>ja>>>0&(ja>>>0<2147483647&(ia|0)!=(-1|0))?(Z=k[30926]|0,$=T-ja+Z&0-Z,$>>>0<2147483647):0)if((Oa($|0)|0)==(-1|0)){Oa(X|0)|0;fa=ka;break f}else{ma=$+ja|0;break}else ma=ja;while(0);if((ia|0)==(-1|0))fa=ka;else{ga=ia;ha=ma;K=194;break d}}while(0);k[30917]=k[30917]|4;na=fa;K=191}else{na=0;K=191}while(0);if((((K|0)==191?S>>>0<2147483647:0)?(fa=Oa(S|0)|0,S=Oa(0)|0,fa>>>0<S>>>0&((fa|0)!=(-1|0)&(S|0)!=(-1|0))):0)?(ma=S-fa|0,S=ma>>>0>(F+40|0)>>>0,S):0){ga=fa;ha=S?ma:na;K=194}if((K|0)==194){na=(k[30914]|0)+ha|0;k[30914]=na;if(na>>>0>(k[30915]|0)>>>0)k[30915]=na;na=k[30812]|0;g:do if(na){ma=123672;do{S=k[ma>>2]|0;fa=ma+4|0;ia=k[fa>>2]|0;if((ga|0)==(S+ia|0)){oa=S;pa=fa;qa=ia;ra=ma;K=204;break}ma=k[ma+8>>2]|0}while((ma|0)!=0);if(((K|0)==204?(k[ra+12>>2]&8|0)==0:0)?na>>>0<ga>>>0&na>>>0>=oa>>>0:0){k[pa>>2]=qa+ha;ma=(k[30809]|0)+ha|0;ia=na+8|0;fa=(ia&7|0)==0?0:0-ia&7;ia=ma-fa|0;k[30812]=na+fa;k[30809]=ia;k[na+(fa+4)>>2]=ia|1;k[na+(ma+4)>>2]=40;k[30813]=k[30928];break}ma=k[30810]|0;if(ga>>>0<ma>>>0){k[30810]=ga;sa=ga}else sa=ma;ma=ga+ha|0;ia=123672;while(1){if((k[ia>>2]|0)==(ma|0)){ta=ia;ua=ia;K=212;break}ia=k[ia+8>>2]|0;if(!ia){va=123672;break}}if((K|0)==212)if(!(k[ua+12>>2]&8)){k[ta>>2]=ga;ia=ua+4|0;k[ia>>2]=(k[ia>>2]|0)+ha;ia=ga+8|0;ma=(ia&7|0)==0?0:0-ia&7;ia=ga+(ha+8)|0;fa=(ia&7|0)==0?0:0-ia&7;ia=ga+(fa+ha)|0;S=ma+F|0;ka=ga+S|0;ja=ia-(ga+ma)-F|0;k[ga+(ma+4)>>2]=F|3;h:do if((ia|0)!=(na|0)){if((ia|0)==(k[30811]|0)){T=(k[30808]|0)+ja|0;k[30808]=T;k[30811]=ka;k[ga+(S+4)>>2]=T|1;k[ga+(T+S)>>2]=T;break}T=ha+4|0;ca=k[ga+(T+fa)>>2]|0;if((ca&3|0)==1){la=ca&-8;ea=ca>>>3;i:do if(ca>>>0>=256){da=k[ga+((fa|24)+ha)>>2]|0;aa=k[ga+(ha+12+fa)>>2]|0;do if((aa|0)==(ia|0)){ba=fa|16;X=ga+(T+ba)|0;$=k[X>>2]|0;if(!$){Z=ga+(ba+ha)|0;ba=k[Z>>2]|0;if(!ba){wa=0;break}else{xa=ba;ya=Z}}else{xa=$;ya=X}while(1){X=xa+20|0;$=k[X>>2]|0;if($){xa=$;ya=X;continue}X=xa+16|0;$=k[X>>2]|0;if(!$){za=xa;Aa=ya;break}else{xa=$;ya=X}}if(Aa>>>0<sa>>>0)db();else{k[Aa>>2]=0;wa=za;break}}else{X=k[ga+((fa|8)+ha)>>2]|0;if(X>>>0<sa>>>0)db();$=X+12|0;if((k[$>>2]|0)!=(ia|0))db();Z=aa+8|0;if((k[Z>>2]|0)==(ia|0)){k[$>>2]=aa;k[Z>>2]=X;wa=aa;break}else db()}while(0);if(!da)break;aa=k[ga+(ha+28+fa)>>2]|0;X=123528+(aa<<2)|0;do if((ia|0)!=(k[X>>2]|0)){if(da>>>0<(k[30810]|0)>>>0)db();Z=da+16|0;if((k[Z>>2]|0)==(ia|0))k[Z>>2]=wa;else k[da+20>>2]=wa;if(!wa)break i}else{k[X>>2]=wa;if(wa)break;k[30807]=k[30807]&~(1<<aa);break i}while(0);aa=k[30810]|0;if(wa>>>0<aa>>>0)db();k[wa+24>>2]=da;X=fa|16;Z=k[ga+(X+ha)>>2]|0;do if(Z)if(Z>>>0<aa>>>0)db();else{k[wa+16>>2]=Z;k[Z+24>>2]=wa;break}while(0);Z=k[ga+(T+X)>>2]|0;if(!Z)break;if(Z>>>0<(k[30810]|0)>>>0)db();else{k[wa+20>>2]=Z;k[Z+24>>2]=wa;break}}else{Z=k[ga+((fa|8)+ha)>>2]|0;aa=k[ga+(ha+12+fa)>>2]|0;da=123264+(ea<<1<<2)|0;do if((Z|0)!=(da|0)){if(Z>>>0<sa>>>0)db();if((k[Z+12>>2]|0)==(ia|0))break;db()}while(0);if((aa|0)==(Z|0)){k[30806]=k[30806]&~(1<<ea);break}do if((aa|0)==(da|0))Ba=aa+8|0;else{if(aa>>>0<sa>>>0)db();X=aa+8|0;if((k[X>>2]|0)==(ia|0)){Ba=X;break}db()}while(0);k[Z+12>>2]=aa;k[Ba>>2]=Z}while(0);Ca=ga+((la|fa)+ha)|0;Da=la+ja|0}else{Ca=ia;Da=ja}ea=Ca+4|0;k[ea>>2]=k[ea>>2]&-2;k[ga+(S+4)>>2]=Da|1;k[ga+(Da+S)>>2]=Da;ea=Da>>>3;if(Da>>>0<256){T=ea<<1;ca=123264+(T<<2)|0;da=k[30806]|0;X=1<<ea;do if(!(da&X)){k[30806]=da|X;Ea=123264+(T+2<<2)|0;Fa=ca}else{ea=123264+(T+2<<2)|0;$=k[ea>>2]|0;if($>>>0>=(k[30810]|0)>>>0){Ea=ea;Fa=$;break}db()}while(0);k[Ea>>2]=ka;k[Fa+12>>2]=ka;k[ga+(S+8)>>2]=Fa;k[ga+(S+12)>>2]=ca;break}T=Da>>>8;do if(!T)Ga=0;else{if(Da>>>0>16777215){Ga=31;break}X=(T+1048320|0)>>>16&8;da=T<<X;la=(da+520192|0)>>>16&4;$=da<<la;da=($+245760|0)>>>16&2;ea=14-(la|X|da)+($<<da>>>15)|0;Ga=Da>>>(ea+7|0)&1|ea<<1}while(0);T=123528+(Ga<<2)|0;k[ga+(S+28)>>2]=Ga;k[ga+(S+20)>>2]=0;k[ga+(S+16)>>2]=0;ca=k[30807]|0;ea=1<<Ga;if(!(ca&ea)){k[30807]=ca|ea;k[T>>2]=ka;k[ga+(S+24)>>2]=T;k[ga+(S+12)>>2]=ka;k[ga+(S+8)>>2]=ka;break}ea=k[T>>2]|0;j:do if((k[ea+4>>2]&-8|0)!=(Da|0)){T=Da<<((Ga|0)==31?0:25-(Ga>>>1)|0);ca=ea;while(1){da=ca+16+(T>>>31<<2)|0;$=k[da>>2]|0;if(!$){Ha=da;Ia=ca;break}if((k[$+4>>2]&-8|0)==(Da|0)){Ja=$;break j}else{T=T<<1;ca=$}}if(Ha>>>0<(k[30810]|0)>>>0)db();else{k[Ha>>2]=ka;k[ga+(S+24)>>2]=Ia;k[ga+(S+12)>>2]=ka;k[ga+(S+8)>>2]=ka;break h}}else Ja=ea;while(0);ea=Ja+8|0;ca=k[ea>>2]|0;T=k[30810]|0;if(ca>>>0>=T>>>0&Ja>>>0>=T>>>0){k[ca+12>>2]=ka;k[ea>>2]=ka;k[ga+(S+8)>>2]=ca;k[ga+(S+12)>>2]=Ja;k[ga+(S+24)>>2]=0;break}else db()}else{ca=(k[30809]|0)+ja|0;k[30809]=ca;k[30812]=ka;k[ga+(S+4)>>2]=ca|1}while(0);n=ga+(ma|8)|0;return n|0}else va=123672;while(1){S=k[va>>2]|0;if(S>>>0<=na>>>0?(ka=k[va+4>>2]|0,ja=S+ka|0,ja>>>0>na>>>0):0){Ka=S;La=ka;Ma=ja;break}va=k[va+8>>2]|0}ma=Ka+(La+-39)|0;ja=Ka+(La+-47+((ma&7|0)==0?0:0-ma&7))|0;ma=na+16|0;ka=ja>>>0<ma>>>0?na:ja;ja=ka+8|0;S=ga+8|0;ia=(S&7|0)==0?0:0-S&7;S=ha+-40-ia|0;k[30812]=ga+ia;k[30809]=S;k[ga+(ia+4)>>2]=S|1;k[ga+(ha+-36)>>2]=40;k[30813]=k[30928];S=ka+4|0;k[S>>2]=27;k[ja>>2]=k[30918];k[ja+4>>2]=k[30919];k[ja+8>>2]=k[30920];k[ja+12>>2]=k[30921];k[30918]=ga;k[30919]=ha;k[30921]=0;k[30920]=ja;ja=ka+28|0;k[ja>>2]=7;if((ka+32|0)>>>0<Ma>>>0){ia=ja;do{ja=ia;ia=ia+4|0;k[ia>>2]=7}while((ja+8|0)>>>0<Ma>>>0)}if((ka|0)!=(na|0)){ia=ka-na|0;k[S>>2]=k[S>>2]&-2;k[na+4>>2]=ia|1;k[ka>>2]=ia;ja=ia>>>3;if(ia>>>0<256){fa=ja<<1;ca=123264+(fa<<2)|0;ea=k[30806]|0;T=1<<ja;if(ea&T){ja=123264+(fa+2<<2)|0;Z=k[ja>>2]|0;if(Z>>>0<(k[30810]|0)>>>0)db();else{Na=ja;Pa=Z}}else{k[30806]=ea|T;Na=123264+(fa+2<<2)|0;Pa=ca}k[Na>>2]=na;k[Pa+12>>2]=na;k[na+8>>2]=Pa;k[na+12>>2]=ca;break}ca=ia>>>8;if(ca)if(ia>>>0>16777215)Qa=31;else{fa=(ca+1048320|0)>>>16&8;T=ca<<fa;ca=(T+520192|0)>>>16&4;ea=T<<ca;T=(ea+245760|0)>>>16&2;Z=14-(ca|fa|T)+(ea<<T>>>15)|0;Qa=ia>>>(Z+7|0)&1|Z<<1}else Qa=0;Z=123528+(Qa<<2)|0;k[na+28>>2]=Qa;k[na+20>>2]=0;k[ma>>2]=0;T=k[30807]|0;ea=1<<Qa;if(!(T&ea)){k[30807]=T|ea;k[Z>>2]=na;k[na+24>>2]=Z;k[na+12>>2]=na;k[na+8>>2]=na;break}ea=k[Z>>2]|0;k:do if((k[ea+4>>2]&-8|0)!=(ia|0)){Z=ia<<((Qa|0)==31?0:25-(Qa>>>1)|0);T=ea;while(1){fa=T+16+(Z>>>31<<2)|0;ca=k[fa>>2]|0;if(!ca){Ra=fa;Sa=T;break}if((k[ca+4>>2]&-8|0)==(ia|0)){Ta=ca;break k}else{Z=Z<<1;T=ca}}if(Ra>>>0<(k[30810]|0)>>>0)db();else{k[Ra>>2]=na;k[na+24>>2]=Sa;k[na+12>>2]=na;k[na+8>>2]=na;break g}}else Ta=ea;while(0);ea=Ta+8|0;ia=k[ea>>2]|0;ma=k[30810]|0;if(ia>>>0>=ma>>>0&Ta>>>0>=ma>>>0){k[ia+12>>2]=na;k[ea>>2]=na;k[na+8>>2]=ia;k[na+12>>2]=Ta;k[na+24>>2]=0;break}else db()}}else{ia=k[30810]|0;if((ia|0)==0|ga>>>0<ia>>>0)k[30810]=ga;k[30918]=ga;k[30919]=ha;k[30921]=0;k[30815]=k[30924];k[30814]=-1;ia=0;do{ea=ia<<1;ma=123264+(ea<<2)|0;k[123264+(ea+3<<2)>>2]=ma;k[123264+(ea+2<<2)>>2]=ma;ia=ia+1|0}while((ia|0)!=32);ia=ga+8|0;ma=(ia&7|0)==0?0:0-ia&7;ia=ha+-40-ma|0;k[30812]=ga+ma;k[30809]=ia;k[ga+(ma+4)>>2]=ia|1;k[ga+(ha+-36)>>2]=40;k[30813]=k[30928]}while(0);ha=k[30809]|0;if(ha>>>0>F>>>0){ga=ha-F|0;k[30809]=ga;ha=k[30812]|0;k[30812]=ha+F;k[ha+(F+4)>>2]=ga|1;k[ha+4>>2]=F|3;n=ha+8|0;return n|0}}ha=Np()|0;k[ha>>2]=12;n=0;return n|0}function kr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;if(!a)return;b=a+-8|0;c=k[30810]|0;if(b>>>0<c>>>0)db();d=k[a+-4>>2]|0;e=d&3;if((e|0)==1)db();f=d&-8;g=a+(f+-8)|0;do if(!(d&1)){h=k[b>>2]|0;if(!e)return;i=-8-h|0;j=a+i|0;l=h+f|0;if(j>>>0<c>>>0)db();if((j|0)==(k[30811]|0)){m=a+(f+-4)|0;n=k[m>>2]|0;if((n&3|0)!=3){o=j;p=l;break}k[30808]=l;k[m>>2]=n&-2;k[a+(i+4)>>2]=l|1;k[g>>2]=l;return}n=h>>>3;if(h>>>0<256){h=k[a+(i+8)>>2]|0;m=k[a+(i+12)>>2]|0;q=123264+(n<<1<<2)|0;if((h|0)!=(q|0)){if(h>>>0<c>>>0)db();if((k[h+12>>2]|0)!=(j|0))db()}if((m|0)==(h|0)){k[30806]=k[30806]&~(1<<n);o=j;p=l;break}if((m|0)!=(q|0)){if(m>>>0<c>>>0)db();q=m+8|0;if((k[q>>2]|0)==(j|0))r=q;else db()}else r=m+8|0;k[h+12>>2]=m;k[r>>2]=h;o=j;p=l;break}h=k[a+(i+24)>>2]|0;m=k[a+(i+12)>>2]|0;do if((m|0)==(j|0)){q=a+(i+20)|0;n=k[q>>2]|0;if(!n){s=a+(i+16)|0;t=k[s>>2]|0;if(!t){u=0;break}else{v=t;w=s}}else{v=n;w=q}while(1){q=v+20|0;n=k[q>>2]|0;if(n){v=n;w=q;continue}q=v+16|0;n=k[q>>2]|0;if(!n){x=v;y=w;break}else{v=n;w=q}}if(y>>>0<c>>>0)db();else{k[y>>2]=0;u=x;break}}else{q=k[a+(i+8)>>2]|0;if(q>>>0<c>>>0)db();n=q+12|0;if((k[n>>2]|0)!=(j|0))db();s=m+8|0;if((k[s>>2]|0)==(j|0)){k[n>>2]=m;k[s>>2]=q;u=m;break}else db()}while(0);if(h){m=k[a+(i+28)>>2]|0;q=123528+(m<<2)|0;if((j|0)==(k[q>>2]|0)){k[q>>2]=u;if(!u){k[30807]=k[30807]&~(1<<m);o=j;p=l;break}}else{if(h>>>0<(k[30810]|0)>>>0)db();m=h+16|0;if((k[m>>2]|0)==(j|0))k[m>>2]=u;else k[h+20>>2]=u;if(!u){o=j;p=l;break}}m=k[30810]|0;if(u>>>0<m>>>0)db();k[u+24>>2]=h;q=k[a+(i+16)>>2]|0;do if(q)if(q>>>0<m>>>0)db();else{k[u+16>>2]=q;k[q+24>>2]=u;break}while(0);q=k[a+(i+20)>>2]|0;if(q)if(q>>>0<(k[30810]|0)>>>0)db();else{k[u+20>>2]=q;k[q+24>>2]=u;o=j;p=l;break}else{o=j;p=l}}else{o=j;p=l}}else{o=b;p=f}while(0);if(o>>>0>=g>>>0)db();b=a+(f+-4)|0;u=k[b>>2]|0;if(!(u&1))db();if(!(u&2)){if((g|0)==(k[30812]|0)){c=(k[30809]|0)+p|0;k[30809]=c;k[30812]=o;k[o+4>>2]=c|1;if((o|0)!=(k[30811]|0))return;k[30811]=0;k[30808]=0;return}if((g|0)==(k[30811]|0)){c=(k[30808]|0)+p|0;k[30808]=c;k[30811]=o;k[o+4>>2]=c|1;k[o+c>>2]=c;return}c=(u&-8)+p|0;x=u>>>3;do if(u>>>0>=256){y=k[a+(f+16)>>2]|0;w=k[a+(f|4)>>2]|0;do if((w|0)==(g|0)){v=a+(f+12)|0;r=k[v>>2]|0;if(!r){e=a+(f+8)|0;d=k[e>>2]|0;if(!d){z=0;break}else{A=d;B=e}}else{A=r;B=v}while(1){v=A+20|0;r=k[v>>2]|0;if(r){A=r;B=v;continue}v=A+16|0;r=k[v>>2]|0;if(!r){C=A;D=B;break}else{A=r;B=v}}if(D>>>0<(k[30810]|0)>>>0)db();else{k[D>>2]=0;z=C;break}}else{v=k[a+f>>2]|0;if(v>>>0<(k[30810]|0)>>>0)db();r=v+12|0;if((k[r>>2]|0)!=(g|0))db();e=w+8|0;if((k[e>>2]|0)==(g|0)){k[r>>2]=w;k[e>>2]=v;z=w;break}else db()}while(0);if(y){w=k[a+(f+20)>>2]|0;l=123528+(w<<2)|0;if((g|0)==(k[l>>2]|0)){k[l>>2]=z;if(!z){k[30807]=k[30807]&~(1<<w);break}}else{if(y>>>0<(k[30810]|0)>>>0)db();w=y+16|0;if((k[w>>2]|0)==(g|0))k[w>>2]=z;else k[y+20>>2]=z;if(!z)break}w=k[30810]|0;if(z>>>0<w>>>0)db();k[z+24>>2]=y;l=k[a+(f+8)>>2]|0;do if(l)if(l>>>0<w>>>0)db();else{k[z+16>>2]=l;k[l+24>>2]=z;break}while(0);l=k[a+(f+12)>>2]|0;if(l)if(l>>>0<(k[30810]|0)>>>0)db();else{k[z+20>>2]=l;k[l+24>>2]=z;break}}}else{l=k[a+f>>2]|0;w=k[a+(f|4)>>2]|0;y=123264+(x<<1<<2)|0;if((l|0)!=(y|0)){if(l>>>0<(k[30810]|0)>>>0)db();if((k[l+12>>2]|0)!=(g|0))db()}if((w|0)==(l|0)){k[30806]=k[30806]&~(1<<x);break}if((w|0)!=(y|0)){if(w>>>0<(k[30810]|0)>>>0)db();y=w+8|0;if((k[y>>2]|0)==(g|0))E=y;else db()}else E=w+8|0;k[l+12>>2]=w;k[E>>2]=l}while(0);k[o+4>>2]=c|1;k[o+c>>2]=c;if((o|0)==(k[30811]|0)){k[30808]=c;return}else F=c}else{k[b>>2]=u&-2;k[o+4>>2]=p|1;k[o+p>>2]=p;F=p}p=F>>>3;if(F>>>0<256){u=p<<1;b=123264+(u<<2)|0;c=k[30806]|0;E=1<<p;if(c&E){p=123264+(u+2<<2)|0;g=k[p>>2]|0;if(g>>>0<(k[30810]|0)>>>0)db();else{G=p;H=g}}else{k[30806]=c|E;G=123264+(u+2<<2)|0;H=b}k[G>>2]=o;k[H+12>>2]=o;k[o+8>>2]=H;k[o+12>>2]=b;return}b=F>>>8;if(b)if(F>>>0>16777215)I=31;else{H=(b+1048320|0)>>>16&8;G=b<<H;b=(G+520192|0)>>>16&4;u=G<<b;G=(u+245760|0)>>>16&2;E=14-(b|H|G)+(u<<G>>>15)|0;I=F>>>(E+7|0)&1|E<<1}else I=0;E=123528+(I<<2)|0;k[o+28>>2]=I;k[o+20>>2]=0;k[o+16>>2]=0;G=k[30807]|0;u=1<<I;a:do if(G&u){H=k[E>>2]|0;b:do if((k[H+4>>2]&-8|0)!=(F|0)){b=F<<((I|0)==31?0:25-(I>>>1)|0);c=H;while(1){g=c+16+(b>>>31<<2)|0;p=k[g>>2]|0;if(!p){J=g;K=c;break}if((k[p+4>>2]&-8|0)==(F|0)){L=p;break b}else{b=b<<1;c=p}}if(J>>>0<(k[30810]|0)>>>0)db();else{k[J>>2]=o;k[o+24>>2]=K;k[o+12>>2]=o;k[o+8>>2]=o;break a}}else L=H;while(0);H=L+8|0;c=k[H>>2]|0;b=k[30810]|0;if(c>>>0>=b>>>0&L>>>0>=b>>>0){k[c+12>>2]=o;k[H>>2]=o;k[o+8>>2]=c;k[o+12>>2]=L;k[o+24>>2]=0;break}else db()}else{k[30807]=G|u;k[E>>2]=o;k[o+24>>2]=E;k[o+12>>2]=o;k[o+8>>2]=o}while(0);o=(k[30814]|0)+-1|0;k[30814]=o;if(!o)M=123680;else return;while(1){o=k[M>>2]|0;if(!o)break;else M=o+8|0}k[30814]=-1;return}function lr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;if(!a){c=jr(b)|0;return c|0}if(b>>>0>4294967231){d=Np()|0;k[d>>2]=12;c=0;return c|0}d=mr(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d){c=d+8|0;return c|0}d=jr(b)|0;if(!d){c=0;return c|0}e=k[a+-4>>2]|0;f=(e&-8)-((e&3|0)==0?8:4)|0;wr(d|0,a|0,(f>>>0<b>>>0?f:b)|0)|0;kr(a);c=d;return c|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,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=a+4|0;d=k[c>>2]|0;e=d&-8;f=a+e|0;g=k[30810]|0;h=d&3;if(!((h|0)!=1&a>>>0>=g>>>0&a>>>0<f>>>0))db();i=a+(e|4)|0;j=k[i>>2]|0;if(!(j&1))db();if(!h){if(b>>>0<256){l=0;return l|0}if(e>>>0>=(b+4|0)>>>0?(e-b|0)>>>0<=k[30926]<<1>>>0:0){l=a;return l|0}l=0;return l|0}if(e>>>0>=b>>>0){h=e-b|0;if(h>>>0<=15){l=a;return l|0}k[c>>2]=d&1|b|2;k[a+(b+4)>>2]=h|3;k[i>>2]=k[i>>2]|1;nr(a+b|0,h);l=a;return l|0}if((f|0)==(k[30812]|0)){h=(k[30809]|0)+e|0;if(h>>>0<=b>>>0){l=0;return l|0}i=h-b|0;k[c>>2]=d&1|b|2;k[a+(b+4)>>2]=i|1;k[30812]=a+b;k[30809]=i;l=a;return l|0}if((f|0)==(k[30811]|0)){i=(k[30808]|0)+e|0;if(i>>>0<b>>>0){l=0;return l|0}h=i-b|0;if(h>>>0>15){k[c>>2]=d&1|b|2;k[a+(b+4)>>2]=h|1;k[a+i>>2]=h;m=a+(i+4)|0;k[m>>2]=k[m>>2]&-2;n=a+b|0;o=h}else{k[c>>2]=d&1|i|2;h=a+(i+4)|0;k[h>>2]=k[h>>2]|1;n=0;o=0}k[30808]=o;k[30811]=n;l=a;return l|0}if(j&2){l=0;return l|0}n=(j&-8)+e|0;if(n>>>0<b>>>0){l=0;return l|0}o=n-b|0;h=j>>>3;do if(j>>>0>=256){i=k[a+(e+24)>>2]|0;m=k[a+(e+12)>>2]|0;do if((m|0)==(f|0)){p=a+(e+20)|0;q=k[p>>2]|0;if(!q){r=a+(e+16)|0;s=k[r>>2]|0;if(!s){t=0;break}else{u=s;v=r}}else{u=q;v=p}while(1){p=u+20|0;q=k[p>>2]|0;if(q){u=q;v=p;continue}p=u+16|0;q=k[p>>2]|0;if(!q){w=u;x=v;break}else{u=q;v=p}}if(x>>>0<g>>>0)db();else{k[x>>2]=0;t=w;break}}else{p=k[a+(e+8)>>2]|0;if(p>>>0<g>>>0)db();q=p+12|0;if((k[q>>2]|0)!=(f|0))db();r=m+8|0;if((k[r>>2]|0)==(f|0)){k[q>>2]=m;k[r>>2]=p;t=m;break}else db()}while(0);if(i){m=k[a+(e+28)>>2]|0;p=123528+(m<<2)|0;if((f|0)==(k[p>>2]|0)){k[p>>2]=t;if(!t){k[30807]=k[30807]&~(1<<m);break}}else{if(i>>>0<(k[30810]|0)>>>0)db();m=i+16|0;if((k[m>>2]|0)==(f|0))k[m>>2]=t;else k[i+20>>2]=t;if(!t)break}m=k[30810]|0;if(t>>>0<m>>>0)db();k[t+24>>2]=i;p=k[a+(e+16)>>2]|0;do if(p)if(p>>>0<m>>>0)db();else{k[t+16>>2]=p;k[p+24>>2]=t;break}while(0);p=k[a+(e+20)>>2]|0;if(p)if(p>>>0<(k[30810]|0)>>>0)db();else{k[t+20>>2]=p;k[p+24>>2]=t;break}}}else{p=k[a+(e+8)>>2]|0;m=k[a+(e+12)>>2]|0;i=123264+(h<<1<<2)|0;if((p|0)!=(i|0)){if(p>>>0<g>>>0)db();if((k[p+12>>2]|0)!=(f|0))db()}if((m|0)==(p|0)){k[30806]=k[30806]&~(1<<h);break}if((m|0)!=(i|0)){if(m>>>0<g>>>0)db();i=m+8|0;if((k[i>>2]|0)==(f|0))y=i;else db()}else y=m+8|0;k[p+12>>2]=m;k[y>>2]=p}while(0);if(o>>>0<16){k[c>>2]=n|d&1|2;y=a+(n|4)|0;k[y>>2]=k[y>>2]|1;l=a;return l|0}else{k[c>>2]=d&1|b|2;k[a+(b+4)>>2]=o|3;d=a+(n|4)|0;k[d>>2]=k[d>>2]|1;nr(a+b|0,o);l=a;return l|0}return 0}function nr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,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;c=a+b|0;d=k[a+4>>2]|0;do if(!(d&1)){e=k[a>>2]|0;if(!(d&3))return;f=a+(0-e)|0;g=e+b|0;h=k[30810]|0;if(f>>>0<h>>>0)db();if((f|0)==(k[30811]|0)){i=a+(b+4)|0;j=k[i>>2]|0;if((j&3|0)!=3){l=f;m=g;break}k[30808]=g;k[i>>2]=j&-2;k[a+(4-e)>>2]=g|1;k[c>>2]=g;return}j=e>>>3;if(e>>>0<256){i=k[a+(8-e)>>2]|0;n=k[a+(12-e)>>2]|0;o=123264+(j<<1<<2)|0;if((i|0)!=(o|0)){if(i>>>0<h>>>0)db();if((k[i+12>>2]|0)!=(f|0))db()}if((n|0)==(i|0)){k[30806]=k[30806]&~(1<<j);l=f;m=g;break}if((n|0)!=(o|0)){if(n>>>0<h>>>0)db();o=n+8|0;if((k[o>>2]|0)==(f|0))p=o;else db()}else p=n+8|0;k[i+12>>2]=n;k[p>>2]=i;l=f;m=g;break}i=k[a+(24-e)>>2]|0;n=k[a+(12-e)>>2]|0;do if((n|0)==(f|0)){o=16-e|0;j=a+(o+4)|0;q=k[j>>2]|0;if(!q){r=a+o|0;o=k[r>>2]|0;if(!o){s=0;break}else{t=o;u=r}}else{t=q;u=j}while(1){j=t+20|0;q=k[j>>2]|0;if(q){t=q;u=j;continue}j=t+16|0;q=k[j>>2]|0;if(!q){v=t;w=u;break}else{t=q;u=j}}if(w>>>0<h>>>0)db();else{k[w>>2]=0;s=v;break}}else{j=k[a+(8-e)>>2]|0;if(j>>>0<h>>>0)db();q=j+12|0;if((k[q>>2]|0)!=(f|0))db();r=n+8|0;if((k[r>>2]|0)==(f|0)){k[q>>2]=n;k[r>>2]=j;s=n;break}else db()}while(0);if(i){n=k[a+(28-e)>>2]|0;h=123528+(n<<2)|0;if((f|0)==(k[h>>2]|0)){k[h>>2]=s;if(!s){k[30807]=k[30807]&~(1<<n);l=f;m=g;break}}else{if(i>>>0<(k[30810]|0)>>>0)db();n=i+16|0;if((k[n>>2]|0)==(f|0))k[n>>2]=s;else k[i+20>>2]=s;if(!s){l=f;m=g;break}}n=k[30810]|0;if(s>>>0<n>>>0)db();k[s+24>>2]=i;h=16-e|0;j=k[a+h>>2]|0;do if(j)if(j>>>0<n>>>0)db();else{k[s+16>>2]=j;k[j+24>>2]=s;break}while(0);j=k[a+(h+4)>>2]|0;if(j)if(j>>>0<(k[30810]|0)>>>0)db();else{k[s+20>>2]=j;k[j+24>>2]=s;l=f;m=g;break}else{l=f;m=g}}else{l=f;m=g}}else{l=a;m=b}while(0);s=k[30810]|0;if(c>>>0<s>>>0)db();v=a+(b+4)|0;w=k[v>>2]|0;if(!(w&2)){if((c|0)==(k[30812]|0)){u=(k[30809]|0)+m|0;k[30809]=u;k[30812]=l;k[l+4>>2]=u|1;if((l|0)!=(k[30811]|0))return;k[30811]=0;k[30808]=0;return}if((c|0)==(k[30811]|0)){u=(k[30808]|0)+m|0;k[30808]=u;k[30811]=l;k[l+4>>2]=u|1;k[l+u>>2]=u;return}u=(w&-8)+m|0;t=w>>>3;do if(w>>>0>=256){p=k[a+(b+24)>>2]|0;d=k[a+(b+12)>>2]|0;do if((d|0)==(c|0)){j=a+(b+20)|0;n=k[j>>2]|0;if(!n){e=a+(b+16)|0;i=k[e>>2]|0;if(!i){x=0;break}else{y=i;z=e}}else{y=n;z=j}while(1){j=y+20|0;n=k[j>>2]|0;if(n){y=n;z=j;continue}j=y+16|0;n=k[j>>2]|0;if(!n){A=y;B=z;break}else{y=n;z=j}}if(B>>>0<s>>>0)db();else{k[B>>2]=0;x=A;break}}else{j=k[a+(b+8)>>2]|0;if(j>>>0<s>>>0)db();n=j+12|0;if((k[n>>2]|0)!=(c|0))db();e=d+8|0;if((k[e>>2]|0)==(c|0)){k[n>>2]=d;k[e>>2]=j;x=d;break}else db()}while(0);if(p){d=k[a+(b+28)>>2]|0;g=123528+(d<<2)|0;if((c|0)==(k[g>>2]|0)){k[g>>2]=x;if(!x){k[30807]=k[30807]&~(1<<d);break}}else{if(p>>>0<(k[30810]|0)>>>0)db();d=p+16|0;if((k[d>>2]|0)==(c|0))k[d>>2]=x;else k[p+20>>2]=x;if(!x)break}d=k[30810]|0;if(x>>>0<d>>>0)db();k[x+24>>2]=p;g=k[a+(b+16)>>2]|0;do if(g)if(g>>>0<d>>>0)db();else{k[x+16>>2]=g;k[g+24>>2]=x;break}while(0);g=k[a+(b+20)>>2]|0;if(g)if(g>>>0<(k[30810]|0)>>>0)db();else{k[x+20>>2]=g;k[g+24>>2]=x;break}}}else{g=k[a+(b+8)>>2]|0;d=k[a+(b+12)>>2]|0;p=123264+(t<<1<<2)|0;if((g|0)!=(p|0)){if(g>>>0<s>>>0)db();if((k[g+12>>2]|0)!=(c|0))db()}if((d|0)==(g|0)){k[30806]=k[30806]&~(1<<t);break}if((d|0)!=(p|0)){if(d>>>0<s>>>0)db();p=d+8|0;if((k[p>>2]|0)==(c|0))C=p;else db()}else C=d+8|0;k[g+12>>2]=d;k[C>>2]=g}while(0);k[l+4>>2]=u|1;k[l+u>>2]=u;if((l|0)==(k[30811]|0)){k[30808]=u;return}else D=u}else{k[v>>2]=w&-2;k[l+4>>2]=m|1;k[l+m>>2]=m;D=m}m=D>>>3;if(D>>>0<256){w=m<<1;v=123264+(w<<2)|0;u=k[30806]|0;C=1<<m;if(u&C){m=123264+(w+2<<2)|0;c=k[m>>2]|0;if(c>>>0<(k[30810]|0)>>>0)db();else{E=m;F=c}}else{k[30806]=u|C;E=123264+(w+2<<2)|0;F=v}k[E>>2]=l;k[F+12>>2]=l;k[l+8>>2]=F;k[l+12>>2]=v;return}v=D>>>8;if(v)if(D>>>0>16777215)G=31;else{F=(v+1048320|0)>>>16&8;E=v<<F;v=(E+520192|0)>>>16&4;w=E<<v;E=(w+245760|0)>>>16&2;C=14-(v|F|E)+(w<<E>>>15)|0;G=D>>>(C+7|0)&1|C<<1}else G=0;C=123528+(G<<2)|0;k[l+28>>2]=G;k[l+20>>2]=0;k[l+16>>2]=0;E=k[30807]|0;w=1<<G;if(!(E&w)){k[30807]=E|w;k[C>>2]=l;k[l+24>>2]=C;k[l+12>>2]=l;k[l+8>>2]=l;return}w=k[C>>2]|0;a:do if((k[w+4>>2]&-8|0)==(D|0))H=w;else{C=D<<((G|0)==31?0:25-(G>>>1)|0);E=w;while(1){F=E+16+(C>>>31<<2)|0;v=k[F>>2]|0;if(!v){I=F;J=E;break}if((k[v+4>>2]&-8|0)==(D|0)){H=v;break a}else{C=C<<1;E=v}}if(I>>>0<(k[30810]|0)>>>0)db();k[I>>2]=l;k[l+24>>2]=J;k[l+12>>2]=l;k[l+8>>2]=l;return}while(0);J=H+8|0;I=k[J>>2]|0;D=k[30810]|0;if(!(I>>>0>=D>>>0&H>>>0>=D>>>0))db();k[I+12>>2]=l;k[J>>2]=l;k[l+8>>2]=I;k[l+12>>2]=H;k[l+24>>2]=0;return}function or(){}function pr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b-d>>>0;e=b-d-(c>>>0>a>>>0|0)>>>0;return (L=e,a-c>>>0|0)|0}function qr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+c|0;if((c|0)>=20){b=b&255;e=a&3;f=b|b<<8|b<<16|b<<24;g=d&~3;if(e){e=a+4-e|0;while((a|0)<(e|0)){i[a>>0]=b;a=a+1|0}}while((a|0)<(g|0)){k[a>>2]=f;a=a+4|0}}while((a|0)<(d|0)){i[a>>0]=b;a=a+1|0}return a-c|0}function rr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}L=a<<c-32;return 0}function sr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+c>>>0;return (L=b+d+(e>>>0<a>>>0|0)>>>0,e|0)|0}function tr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;y=y+1|0;k[a>>2]=y;while((e|0)<(d|0)){if(!(k[c+(e<<3)>>2]|0)){k[c+(e<<3)>>2]=y;k[c+((e<<3)+4)>>2]=b;k[c+((e<<3)+8)>>2]=0;L=d;return c|0}e=e+1|0}d=d*2|0;c=lr(c|0,8*(d+1|0)|0)|0;c=tr(a|0,b|0,c|0,d|0)|0;L=d;return c|0}function ur(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=0;return b>>>c-32|0}function vr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;while((d|0)<(c|0)){e=k[b+(d<<3)>>2]|0;if(!e)break;if((e|0)==(a|0))return k[b+((d<<3)+4)>>2]|0;d=d+1|0}return 0}function wr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)>=4096)return Ra(a|0,b|0,c|0)|0;d=a|0;if((a&3)==(b&3)){while(a&3){if(!c)return d|0;i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}while((c|0)>=4){k[a>>2]=k[b>>2];a=a+4|0;b=b+4|0;c=c-4|0}}while((c|0)>0){i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}return d|0}function xr(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function yr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=(b|0)<0?-1:0;return b>>c-32|0}function zr(a){a=a|0;var b=0;b=i[v+(a&255)>>0]|0;if((b|0)<8)return b|0;b=i[v+(a>>8&255)>>0]|0;if((b|0)<8)return b+8|0;b=i[v+(a>>16&255)>>0]|0;if((b|0)<8)return b+16|0;return (i[v+(a>>>24)>>0]|0)+24|0}function Ar(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a&65535;d=b&65535;e=ha(d,c)|0;f=a>>>16;a=(e>>>16)+(ha(d,f)|0)|0;d=b>>>16;b=ha(d,c)|0;return (L=(a>>>16)+(ha(d,f)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|e&65535|0)|0}function Br(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;e=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;g=d>>31|((d|0)<0?-1:0)<<1;h=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;i=pr(e^a,f^b,e,f)|0;b=L;a=g^e;e=h^f;return pr((Gr(i,b,pr(g^c,h^d,g,h)|0,L,0)|0)^a,L^e,a,e)|0}function Cr(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,l=0;e=r;r=r+16|0;f=e|0;g=b>>31|((b|0)<0?-1:0)<<1;h=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;i=d>>31|((d|0)<0?-1:0)<<1;j=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;l=pr(g^a,h^b,g,h)|0;b=L;Gr(l,b,pr(i^c,j^d,i,j)|0,L,f)|0;j=pr(k[f>>2]^g,k[f+4>>2]^h,g,h)|0;h=L;r=e;return (L=h,j)|0}function Dr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;a=c;c=Ar(e,a)|0;f=L;return (L=(ha(b,a)|0)+(ha(d,e)|0)+f|f&0,c|0|0)|0}function Er(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Gr(a,b,c,d,0)|0}function Fr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=r;r=r+16|0;f=e|0;Gr(a,b,c,d,f)|0;r=e;return (L=k[f+4>>2]|0,k[f>>2]|0)|0}function Gr(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,l=0,m=0,n=0,o=0,p=0,q=0,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;f=a;g=b;h=g;i=c;j=d;l=j;if(!h){m=(e|0)!=0;if(!l){if(m){k[e>>2]=(f>>>0)%(i>>>0);k[e+4>>2]=0}n=0;o=(f>>>0)/(i>>>0)>>>0;return (L=n,o)|0}else{if(!m){n=0;o=0;return (L=n,o)|0}k[e>>2]=a|0;k[e+4>>2]=b&0;n=0;o=0;return (L=n,o)|0}}m=(l|0)==0;do if(i){if(!m){p=(ja(l|0)|0)-(ja(h|0)|0)|0;if(p>>>0<=31){q=p+1|0;r=31-p|0;s=p-31>>31;t=q;u=f>>>(q>>>0)&s|h<<r;v=h>>>(q>>>0)&s;w=0;x=f<<r;break}if(!e){n=0;o=0;return (L=n,o)|0}k[e>>2]=a|0;k[e+4>>2]=g|b&0;n=0;o=0;return (L=n,o)|0}r=i-1|0;if(r&i){s=(ja(i|0)|0)+33-(ja(h|0)|0)|0;q=64-s|0;p=32-s|0;y=p>>31;z=s-32|0;A=z>>31;t=s;u=p-1>>31&h>>>(z>>>0)|(h<<p|f>>>(s>>>0))&A;v=A&h>>>(s>>>0);w=f<<q&y;x=(h<<q|f>>>(z>>>0))&y|f<<p&s-33>>31;break}if(e){k[e>>2]=r&f;k[e+4>>2]=0}if((i|0)==1){n=g|b&0;o=a|0|0;return (L=n,o)|0}else{r=zr(i|0)|0;n=h>>>(r>>>0)|0;o=h<<32-r|f>>>(r>>>0)|0;return (L=n,o)|0}}else{if(m){if(e){k[e>>2]=(h>>>0)%(i>>>0);k[e+4>>2]=0}n=0;o=(h>>>0)/(i>>>0)>>>0;return (L=n,o)|0}if(!f){if(e){k[e>>2]=0;k[e+4>>2]=(h>>>0)%(l>>>0)}n=0;o=(h>>>0)/(l>>>0)>>>0;return (L=n,o)|0}r=l-1|0;if(!(r&l)){if(e){k[e>>2]=a|0;k[e+4>>2]=r&h|b&0}n=0;o=h>>>((zr(l|0)|0)>>>0);return (L=n,o)|0}r=(ja(l|0)|0)-(ja(h|0)|0)|0;if(r>>>0<=30){s=r+1|0;p=31-r|0;t=s;u=h<<p|f>>>(s>>>0);v=h>>>(s>>>0);w=0;x=f<<p;break}if(!e){n=0;o=0;return (L=n,o)|0}k[e>>2]=a|0;k[e+4>>2]=g|b&0;n=0;o=0;return (L=n,o)|0}while(0);if(!t){B=x;C=w;D=v;E=u;F=0;G=0}else{b=c|0|0;c=j|d&0;d=sr(b|0,c|0,-1,-1)|0;j=L;g=x;x=w;w=v;v=u;u=t;t=0;do{a=g;g=x>>>31|g<<1;x=t|x<<1;f=v<<1|a>>>31|0;a=v>>>31|w<<1|0;pr(d,j,f,a)|0;h=L;l=h>>31|((h|0)<0?-1:0)<<1;t=l&1;v=pr(f,a,l&b,(((h|0)<0?-1:0)>>31|((h|0)<0?-1:0)<<1)&c)|0;w=L;u=u-1|0}while((u|0)!=0);B=g;C=x;D=w;E=v;F=0;G=t}t=C;C=0;if(e){k[e>>2]=E;k[e+4>>2]=D}n=(t|0)>>>31|(B|C)<<1|(C<<1|t>>>31)&0|F;o=(t<<1|0>>>31)&-2|G;return (L=n,o)|0}function Hr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nb[a&63](b|0,c|0,d|0)|0}function Ir(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;ob[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Jr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;pb[a&63](b|0,c|0,d|0,e|0,f|0)}function Kr(a,b){a=a|0;b=b|0;qb[a&127](b|0)}function Lr(a,b,c){a=a|0;b=b|0;c=c|0;rb[a&31](b|0,c|0)}function Mr(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 sb[a&3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Nr(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;tb[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0)}function Or(a,b){a=a|0;b=b|0;return ub[a&63](b|0)|0}function Pr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vb[a&127](b|0,c|0,d|0)}function Qr(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;wb[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function Rr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return xb[a&63](b|0,c|0,d|0,e|0)|0}function Sr(a,b,c){a=a|0;b=b|0;c=c|0;return yb[a&127](b|0,c|0)|0}function Tr(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 zb[a&3](b|0,c|0,d|0,e|0,f|0)|0}function Ur(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ab[a&31](b|0,c|0,d|0,e|0)}function Vr(a,b,c){a=a|0;b=b|0;c=c|0;ka(0);return 0}function Wr(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;ka(1)}function Xr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ka(2)}function Yr(a){a=a|0;ka(3)}function Zr(a,b){a=a|0;b=b|0;ka(4)}function _r(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(5);return 0}function $r(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;ka(6)}function as(a){a=a|0;ka(7);return 0}function bs(a,b,c){a=a|0;b=b|0;c=c|0;ka(8)}function cs(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;ka(9)}function ds(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(10);return 0}function es(a,b){a=a|0;b=b|0;ka(11);return 0}function fs(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ka(12);return 0}function gs(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(13)}

// EMSCRIPTEN_END_FUNCS
var nb=[Vr,fr,pq,oq,qq,Vb,Wb,td,se,te,xe,Df,Ef,Sf,Tf,ck,dk,al,bl,bh,ch,Xh,Yh,Gi,Hi,Ki,Li,ij,jj,Uj,um,vm,$q,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr,Vr];var ob=[Wr,Mk,Nk,zl,Bl,Fl,Gl,Hl,Kl,nn,on,Wr,Wr,Wr,Wr,Wr];var pb=[Xr,Qk,cn,en,fn,gn,hn,jn,kn,Xn,Yn,Zn,_n,$n,ao,bo,co,eo,np,mp,lp,kp,jp,ip,hp,op,pp,qp,rp,sp,tp,up,vp,wp,xp,yp,zp,Ap,Bp,Cp,Dp,Ep,Fp,Gp,Hp,Ip,Jp,Kp,Lp,gp,fp,ep,Xr,Xr,Xr,Xr,Xr,Xr,Xr,Xr,Xr,Xr,Xr,Xr];var qb=[Yr,Ze,Nf,Of,bg,Kg,Lg,Mg,qg,sg,ug,wg,Bk,$j,xg,yg,Gk,ak,Ak,$g,ah,Hh,Wh,ei,fi,hi,li,Ei,Fi,sj,jk,kk,lk,mk,nk,vk,wk,xk,Pk,fl,gl,hl,ll,vl,wl,yl,Jl,Rl,Tl,Vl,Yl,Zl,gm,jm,mm,Am,Em,Pm,bn,dn,mn,rn,sn,En,Fn,On,Pn,Wn,go,io,jo,Yq,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr,Yr];var rb=[Zr,Jg,Ik,bk,_j,ji,Vj,gk,pk,Lk,El,Sl,Ul,Xl,fm,Dm,Om,Ym,qn,uo,Zr,Zr,Zr,Zr,Zr,Zr,Zr,Zr,Zr,Zr,Zr,Zr];var sb=[_r,ym,zm,_r];var tb=[$r,gd,hd,id,jd,kd,ld,md,nd,$r,$r,$r,$r,$r,$r,$r];var ub=[as,nq,ve,we,Pe,Ye,hf,kf,wf,Gf,Hf,Lf,Vf,Wf,Zf,$f,Ig,rg,vg,Ql,_k,$k,Ug,Vg,Yg,zh,Ah,Dh,Fh,Nh,Oh,Sh,Uh,ii,si,wi,xi,Ai,Ci,Ni,Oi,fj,kj,lj,oj,qj,el,ml,nl,ol,pl,Qn,Sn,as,as,as,as,as,as,as,as,as,as,as];var vb=[bs,ze,Ae,Bd,Cd,Dd,Ed,Fd,he,Ff,Uf,dg,Fk,Zj,Xk,Tg,oh,ph,qh,sh,th,uh,wh,xh,fh,gh,ih,jh,mh,Qh,Zh,Mi,Yi,Zi,_i,bj,cj,dj,Qi,Ri,Si,Vi,Wi,Xi,ok,Ho,Go,Fo,Eo,Do,Co,Bo,Io,Jo,Ko,Lo,Mo,No,Oo,Po,Qo,Ro,So,To,Uo,Vo,Wo,Xo,Yo,Zo,_o,$o,ap,bp,cp,dp,Ao,zo,yo,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs,bs];var wb=[cs,Ec,Fc,Gc,Hc,Ic,Jc,Lc,Mc,Nc,Oc,Pc,Qc,Rc,Sc,Tc,Uc,Vc,Wc,Yc,Zc,_c,$c,ad,bd,cd,dd,cs,cs,cs,cs,cs];var xb=[ds,Cc,Dc,ed,fd,ue,Qe,Re,Se,Me,Ne,Oe,lf,mf,uf,vf,xf,Jf,Mf,Qf,Yf,ag,Dg,Eg,kg,Wg,Xg,Zg,_g,nh,rh,vh,eh,hh,lh,Ch,Gh,Ih,Lh,Rh,Vh,qi,ti,ui,zi,Di,$i,aj,Ti,Ui,gj,nj,rj,wm,xm,ds,ds,ds,ds,ds,ds,ds,ds,ds];var yb=[es,jf,yh,pi,ej,Jh,Rf,Mh,rf,sf,pf,qf,gf,hj,vi,Rg,Aj,Bj,Cj,ec,Ue,Te,Od,nf,If,Kf,Xf,_f,cg,il,Yk,Bh,Eh,Kh,Ph,Th,ki,ri,yi,Bi,mj,pj,Qm,Rm,Sm,Tm,Um,Zm,_m,$m,tn,un,vn,wn,xn,yn,Gn,Hn,In,Jn,Kn,Rn,Tn,Un,ko,lo,mo,no,po,qo,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es,es];var zb=[fs,Bm,Cm,fs];var Ab=[gs,ud,ye,of,hk,Rk,Sk,Tk,Uk,Vk,Wk,Al,Cl,Ll,Ml,Nl,Ol,Pl,$l,am,bm,cm,dm,im,km,lm,vo,wo,xo,gs,gs,gs];return{_GetField:Kb,_TIFFClose:Mb,_TIFFReadDirectory:fc,_TIFFGetField:Pb,_bitshift64Lshr:ur,_bitshift64Shl:rr,_TIFFReadRGBAImageOriented:Ac,_TIFFCurrentDirectory:sd,_fflush:vq,_TIFFSetDirectory:Ub,_realloc:lr,_memset:qr,_memcpy:wr,_llvm_bswap_i32:xr,_i64Subtract:pr,_TIFFOpen:le,_i64Add:sr,_TIFFReadRGBAImage:Bc,__TIFFmalloc:me,___errno_location:Np,_testSetjmp:vr,_saveSetjmp:tr,_free:kr,_malloc:jr,__TIFFfree:ne,runPostSets:or,_emscripten_replace_memory:mb,stackAlloc:Bb,stackSave:Cb,stackRestore:Db,establishStackSpace:Eb,setThrew:Fb,setTempRet0:Ib,getTempRet0:Jb,dynCall_iiii:Hr,dynCall_viiiiiii:Ir,dynCall_viiiii:Jr,dynCall_vi:Kr,dynCall_vii:Lr,dynCall_iiiiiii:Mr,dynCall_viiiiiiiiiiii:Nr,dynCall_ii:Or,dynCall_viii:Pr,dynCall_viiiiiiiii:Qr,dynCall_iiiii:Rr,dynCall_iii:Sr,dynCall_iiiiii:Tr,dynCall_viiii:Ur}})


// EMSCRIPTEN_END_ASM
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _GetField=Module["_GetField"]=asm["_GetField"];var _TIFFClose=Module["_TIFFClose"]=asm["_TIFFClose"];var _TIFFReadDirectory=Module["_TIFFReadDirectory"]=asm["_TIFFReadDirectory"];var _TIFFGetField=Module["_TIFFGetField"]=asm["_TIFFGetField"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _TIFFReadRGBAImageOriented=Module["_TIFFReadRGBAImageOriented"]=asm["_TIFFReadRGBAImageOriented"];var _TIFFCurrentDirectory=Module["_TIFFCurrentDirectory"]=asm["_TIFFCurrentDirectory"];var _fflush=Module["_fflush"]=asm["_fflush"];var _TIFFSetDirectory=Module["_TIFFSetDirectory"]=asm["_TIFFSetDirectory"];var _TIFFOpen=Module["_TIFFOpen"]=asm["_TIFFOpen"];var _memset=Module["_memset"]=asm["_memset"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _realloc=Module["_realloc"]=asm["_realloc"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _TIFFReadRGBAImage=Module["_TIFFReadRGBAImage"]=asm["_TIFFReadRGBAImage"];var __TIFFmalloc=Module["__TIFFmalloc"]=asm["__TIFFmalloc"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var _testSetjmp=Module["_testSetjmp"]=asm["_testSetjmp"];var _saveSetjmp=Module["_saveSetjmp"]=asm["_saveSetjmp"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _malloc=Module["_malloc"]=asm["_malloc"];var __TIFFfree=Module["__TIFFfree"]=asm["__TIFFfree"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_viiiiiiiiiiii=Module["dynCall_viiiiiiiiiiii"]=asm["dynCall_viiiiiiiiiiii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){assert(runDependencies==0,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");assert(__ATPRERUN__.length==0,"cannot call main when preRun functions remain to be called");args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i<argc-1;i=i+1){argv.push(allocate(intArrayFromString(args[i]),"i8",ALLOC_NORMAL));pad()}argv.push(0);argv=allocate(argv,"i32",ALLOC_NORMAL);try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module["noExitRuntime"]=true;return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}finally{calledMain=true}};function run(args){args=args||Module["arguments"];if(preloadStartTime===null)preloadStartTime=Date.now();if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["stdout"]["once"]("drain",(function(){process["exit"](status)}));console.log(" ");setTimeout((function(){process["exit"](status)}),500)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run();return Module})





var TiffTag = {
    SUBFILETYPE: 254,
    OSUBFILETYPE: 255,
    IMAGEWIDTH: 256,
    IMAGELENGTH: 257,
    BITSPERSAMPLE: 258,
    COMPRESSION: 259,
    PHOTOMETRIC: 262,
    THRESHHOLDING: 263,
    CELLWIDTH: 264,
    CELLLENGTH: 265,
    FILLORDER: 266,
    DOCUMENTNAME: 269,
    IMAGEDESCRIPTION: 270,
    MAKE: 271,
    MODEL: 272,
    STRIPOFFSETS: 273,
    ORIENTATION: 274,
    SAMPLESPERPIXEL: 277,
    ROWSPERSTRIP: 278,
    STRIPBYTECOUNTS: 279,
    MINSAMPLEVALUE: 280,
    MAXSAMPLEVALUE: 281,
    XRESOLUTION: 282,
    YRESOLUTION: 283,
    PLANARCONFIG: 284,
    PAGENAME: 285,
    XPOSITION: 286,
    YPOSITION: 287,
    FREEOFFSETS: 288,
    FREEBYTECOUNTS: 289,
    GRAYRESPONSEUNIT: 290,
    GRAYRESPONSECURVE: 291,
    RESOLUTIONUNIT: 296,
    PAGENUMBER: 297,
    COLORRESPONSEUNIT: 300,
    TRANSFERFUNCTION: 301,
    SOFTWARE: 305,
    DATETIME: 306,
    ARTIST: 315,
    HOSTCOMPUTER: 316,
    PREDICTOR: 317,
    WHITEPOINT: 318,
    PRIMARYCHROMATICITIES: 319,
    COLORMAP: 320,
    HALFTONEHINTS: 321,
    TILEWIDTH: 322,
    TILELENGTH: 323,
    TILEOFFSETS: 324,
    TILEBYTECOUNTS: 325,
    BADFAXLINES: 326,
    CLEANFAXDATA: 327,
    CONSECUTIVEBADFAXLINES: 328,
    SUBIFD: 330,
    INKSET: 332,
    INKNAMES: 333,
    NUMBEROFINKS: 334,
    DOTRANGE: 336,
    TARGETPRINTER: 337,
    EXTRASAMPLES: 338,
    SAMPLEFORMAT: 339,
    SMINSAMPLEVALUE: 340,
    SMAXSAMPLEVALUE: 341,
    CLIPPATH: 343,
    XCLIPPATHUNITS: 344,
    YCLIPPATHUNITS: 345,
    INDEXED: 346,
    JPEGTABLES: 347,
    OPIPROXY: 351,
    GLOBALPARAMETERSIFD: 400,
    PROFILETYPE: 401,
    FAXPROFILE: 402,
    CODINGMETHODS: 403,
    VERSIONYEAR: 404,
    MODENUMBER: 405,
    DECODE: 433,
    IMAGEBASECOLOR: 434,
    JPEGPROC: 512,
    JPEGIFOFFSET: 513,
    JPEGIFBYTECOUNT: 514,
    JPEGRESTARTINTERVAL: 515,
    JPEGLOSSLESSPREDICTORS: 517,
    JPEGPOINTTRANSFORM: 518,
    JPEGQTABLES: 519,
    JPEGDCTABLES: 520,
    JPEGACTABLES: 521,
    YCBCRCOEFFICIENTS: 529,
    YCBCRSUBSAMPLING: 530,
    YCBCRPOSITIONING: 531,
    REFERENCEBLACKWHITE: 532,
    STRIPROWCOUNTS: 559,
    XMLPACKET: 700,
    OPIIMAGEID: 32781,
    REFPTS: 32953,
    REGIONTACKPOINT: 32954,
    REGIONWARPCORNERS: 32955,
    REGIONAFFINE: 32956,
    MATTEING: 32995,
    DATATYPE: 32996,
    IMAGEDEPTH: 32997,
    TILEDEPTH: 32998,
    PIXAR_IMAGEFULLWIDTH: 33300,
    PIXAR_IMAGEFULLLENGTH: 33301,
    PIXAR_TEXTUREFORMAT: 33302,
    PIXAR_WRAPMODES: 33303,
    PIXAR_FOVCOT: 33304,
    PIXAR_MATRIX_WORLDTOSCREEN: 33305,
    PIXAR_MATRIX_WORLDTOCAMERA: 33306,
    WRITERSERIALNUMBER: 33405,
    CFAREPEATPATTERNDIM: 33421,
    CFAPATTERN: 33422,
    COPYRIGHT: 33432,
    RICHTIFFIPTC: 33723,
    FRAMECOUNT: 34232,
    PHOTOSHOP: 34377,
    EXIFIFD: 34665,
    ICCPROFILE: 34675,
    IMAGELAYER: 34732,
    JBIGOPTIONS: 34750,
    GPSIFD: 34853,
    FAXRECVPARAMS: 34908,
    FAXSUBADDRESS: 34909,
    FAXRECVTIME: 34910,
    FAXDCS: 34911,
    STONITS: 37439,
    FEDEX_EDR: 34929,
    INTEROPERABILITYIFD: 40965,
    DNGVERSION: 50706,
    DNGBACKWARDVERSION: 50707,
    UNIQUECAMERAMODEL: 50708,
    LOCALIZEDCAMERAMODEL: 50709,
    CFAPLANECOLOR: 50710,
    CFALAYOUT: 50711,
    LINEARIZATIONTABLE: 50712,
    BLACKLEVELREPEATDIM: 50713,
    BLACKLEVEL: 50714,
    BLACKLEVELDELTAH: 50715,
    BLACKLEVELDELTAV: 50716,
    WHITELEVEL: 50717,
    DEFAULTSCALE: 50718,
    DEFAULTCROPORIGIN: 50719,
    DEFAULTCROPSIZE: 50720,
    ANALOGBALANCE: 50727,
    ASSHOTNEUTRAL: 50728,
    ASSHOTWHITEXY: 50729,
    BASELINEEXPOSURE: 50730,
    BASELINENOISE: 50731,
    BASELINESHARPNESS: 50732,
    BAYERGREENSPLIT: 50733,
    LINEARRESPONSELIMIT: 50734,
    CAMERASERIALNUMBER: 50735,
    LENSINFO: 50736,
    CHROMABLURRADIUS: 50737,
    ANTIALIASSTRENGTH: 50738,
    SHADOWSCALE: 50739,
    DNGPRIVATEDATA: 50740,
    MAKERNOTESAFETY: 50741,
    BESTQUALITYSCALE: 50780,
    RAWDATAUNIQUEID: 50781,
    ORIGINALRAWFILENAME: 50827,
    ORIGINALRAWFILEDATA: 50828,
    ACTIVEAREA: 50829,
    MASKEDAREAS: 50830,
    ASSHOTICCPROFILE: 50831,
    ASSHOTPREPROFILEMATRIX: 50832,
    CURRENTICCPROFILE: 50833,
    CURRENTPREPROFILEMATRIX: 50834,
    DCSHUESHIFTVALUES: 65535,
    FAXMODE: 65536,
    JPEGQUALITY: 65537,
    JPEGCOLORMODE: 65538,
    JPEGTABLESMODE: 65539,
    FAXFILLFUNC: 65540,
    PIXARLOGDATAFMT: 65549,
    DCSIMAGERTYPE: 65550,
    DCSINTERPMODE: 65551,
    DCSBALANCEARRAY: 65552,
    DCSCORRECTMATRIX: 65553,
    DCSGAMMA: 65554,
    DCSTOESHOULDERPTS: 65555,
    DCSCALIBRATIONFD: 65556,
    ZIPQUALITY: 65557,
    PIXARLOGQUALITY: 65558,
    DCSCLIPRECTANGLE: 65559,
    SGILOGDATAFMT: 65560,
    SGILOGENCODE: 65561,
    LZMAPRESET: 65562,
    PERSAMPLE: 65563
};
var Tiff = (function () {
    function Tiff(params) {
        if (Tiff.Module === null) {
            Tiff.initialize({});
        }
        this._filename = Tiff.createFileSystemObjectFromBuffer(params.buffer);
        this._tiffPtr = Tiff.Module.ccall('TIFFOpen', 'number', [
            'string', 'string'], [this._filename, 'r']);
        if (this._tiffPtr === 0) {
            throw new Tiff.Exception('The function TIFFOpen returns NULL');
        }
    }
    Tiff.initialize = function (options) {
        if (Tiff.Module !== null) {
            return;
        }
        Tiff.Module = loadModule(options);
    };
    Tiff.prototype.width = function () {
        return this.getField(Tiff.Tag.IMAGEWIDTH);
    };
    Tiff.prototype.height = function () {
        return this.getField(Tiff.Tag.IMAGELENGTH);
    };
    Tiff.prototype.currentDirectory = function () {
        return Tiff.Module.ccall('TIFFCurrentDirectory', 'number', ['number'], [this._tiffPtr]);
    };
    Tiff.prototype.countDirectory = function () {
        var count = 0;
        var current = this.currentDirectory();
        while (true) {
            count += 1;
            var status = Tiff.Module.ccall('TIFFReadDirectory', 'number', ['number'], [this._tiffPtr]);
            if (status === 0) {
                break;
            }
        }
        this.setDirectory(current);
        return count;
    };
    Tiff.prototype.setDirectory = function (index) {
        return Tiff.Module.ccall('TIFFSetDirectory', 'number', ['number', 'number'], [this._tiffPtr, index]);
    };
    Tiff.prototype.getField = function (tag) {
        var value = Tiff.Module.ccall('GetField', 'number', ['number', 'number'], [
            this._tiffPtr, tag]);
        return value;
    };
    Tiff.prototype.readRGBAImage = function () {
        var width = this.width();
        var height = this.height();
        var raster = Tiff.Module.ccall('_TIFFmalloc', 'number', ['number'], [width * height * 4]);
        var result = Tiff.Module.ccall('TIFFReadRGBAImageOriented', 'number', [
            'number', 'number', 'number', 'number', 'number', 'number'], [
            this._tiffPtr, width, height, raster, 1, 0
        ]);
        if (result === 0) {
            throw new Tiff.Exception('The function TIFFReadRGBAImageOriented returns NULL');
        }
        // copy the subarray, not create new sub-view
        var data = Tiff.Module.HEAPU8.buffer.slice(raster, raster + width * height * 4);
        Tiff.Module.ccall('free', 'number', ['number'], [raster]);
        return data;
    };
    Tiff.prototype.toCanvas = function () {
        var width = this.width();
        var height = this.height();
        var raster = Tiff.Module.ccall('_TIFFmalloc', 'number', ['number'], [width * height * 4]);
        var result = Tiff.Module.ccall('TIFFReadRGBAImageOriented', 'number', [
            'number', 'number', 'number', 'number', 'number', 'number'], [
            this._tiffPtr, width, height, raster, 1, 0
        ]);
        if (result === 0) {
            throw new Tiff.Exception('The function TIFFReadRGBAImageOriented returns NULL');
        }
        var image = Tiff.Module.HEAPU8.subarray(raster, raster + width * height * 4);
        var canvas = document.createElement('canvas');
        var context = canvas.getContext('2d');
        canvas.width = width;
        canvas.height = height;
        var imageData = context.createImageData(width, height);
        imageData.data.set(image);
        context.putImageData(imageData, 0, 0);
        Tiff.Module.ccall('free', 'number', ['number'], [raster]);
        return canvas;
    };
    Tiff.prototype.toDataURL = function () {
        return this.toCanvas().toDataURL();
    };
    Tiff.prototype.close = function () {
        Tiff.Module.ccall('TIFFClose', 'number', ['number'], [this._tiffPtr]);
    };
    Tiff.createUniqueFileName = function () {
        Tiff.uniqueIdForFileName += 1;
        return String(Tiff.uniqueIdForFileName) + '.tiff';
    };
    Tiff.createFileSystemObjectFromBuffer = function (buffer) {
        var filename = Tiff.createUniqueFileName();
        Tiff.Module.FS.createDataFile('/', filename, new Uint8Array(buffer), true, false);
        return filename;
    };
    Tiff.uniqueIdForFileName = 0;
    Tiff.Module = null;
    return Tiff;
})();
var Tiff;
(function (Tiff) {
    var Exception = (function () {
        function Exception(message) {
            this.message = message;
            this.name = 'Tiff.Exception';
        }
        return Exception;
    })();
    Tiff.Exception = Exception;
    Tiff.Tag = TiffTag;
})(Tiff || (Tiff = {}));
// for closure compiler
Tiff.prototype['width'] = Tiff.prototype.width;
Tiff.prototype['height'] = Tiff.prototype.height;
Tiff.prototype['currentDirectory'] = Tiff.prototype.currentDirectory;
Tiff.prototype['countDirectory'] = Tiff.prototype.countDirectory;
Tiff.prototype['setDirectory'] = Tiff.prototype.setDirectory;
Tiff.prototype['getField'] = Tiff.prototype.getField;
Tiff.prototype['readRGBAImage'] = Tiff.prototype.readRGBAImage;
Tiff.prototype['close'] = Tiff.prototype.close;
Tiff['Exception'] = Tiff.Exception;
Tiff['initialize'] = Tiff.initialize;
if (typeof process === 'object' && typeof require === 'function') {
    module['exports'] = Tiff;
}
else if (typeof define === "function" && define.amd) {
    define('tiff', [], function () { return Tiff; });
}
else if (typeof window === 'object') {
    window['Tiff'] = Tiff;
}
else if (typeof importScripts === 'function') {
    self['Tiff'] = Tiff;
}