]> git.sesse.net Git - remoteglot-book/commitdiff
Embed Stockfish (!) to get square suggestions whenever you pick up a piece.
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Sun, 21 Dec 2014 23:45:34 +0000 (00:45 +0100)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Sun, 21 Dec 2014 23:45:34 +0000 (00:45 +0100)
www/js/book.js
www/js/stockfish.js [new file with mode: 0644]

index ebccd1ef2fdf99eb909134ecf3b1d5adcc6e6487..bc6adfceccca4174daf9ee78d0f274028abc050e 100644 (file)
@@ -5,6 +5,10 @@ var game = new Chess();
 var fens = [];
 var move_override = 0;
 var includetransp = true;
+var stockfish = new Worker('/js/stockfish.js');
+var engine_running = false;
+var engine_replacement_callback = null;
+var recommended_dest = null;
 
 var entity_map = {
        "&": "&amp;",
@@ -338,9 +342,75 @@ var onDragStart = function(source, piece, position, orientation) {
            (pseudogame.turn() === 'b' && piece.search(/^w/) !== -1)) {
                return false;
        }
+
+       recommended_dest = null;
+       get_best_dest(pseudogame, source, function(dest) {
+               $("#board").find('.square-55d63').removeClass('nonuglyhighlight');
+               if (dest !== null) {
+                       var squareEl = $('#board .square-' + dest);
+                       squareEl.addClass('highlight1-32417');
+               }
+               recommended_dest = dest;
+       });
+}
+
+var get_best_dest = function(game, source, cb) {
+       var moves = game.moves({ square: source, verbose: true });
+       if (moves.length == 0) {
+               cb(null);
+               return;
+       }
+       if (moves.length == 1) {
+               cb(moves[0].to);
+               return;
+       }
+
+       // More than one move. Ask the engine to disambiguate.
+       var uci_moves = moves.map(function(m) { return m.from + m.to; });
+       var when_engine_is_ready = function() {
+               engine_running = true;
+               stockfish.onmessage = function(event) {
+                       var res = event.data.match(/^bestmove \S\S(\S\S)/);
+                       if (res !== null) {
+                               engine_running = false;
+                               if (engine_replacement_callback !== null) {
+                                       // We are no longer interested in this query,
+                                       // so just discard it and call this other callback.
+                                       engine_replacement_callback();
+                                       engine_replacement_callback = null;
+                               } else {
+                                       cb(res[1]);
+                               }
+                       }
+               };
+               stockfish.postMessage("position fen " + game.fen());
+               stockfish.postMessage("go depth 6 searchmoves " + uci_moves.join(" "));
+       };
+       if (engine_running) {
+               engine_replacement_callback = when_engine_is_ready;
+       } else {
+               when_engine_is_ready();
+       }
 }
 
 var onDrop = function(source, target) {
+       if (engine_running) {
+               // Snap end before the engine came back.
+               // Discard the result when it does.
+               engine_replacement_callback = function() {};
+       }
+       if (source == target) {
+               if (recommended_dest === null) {
+                       return 'snapback';
+               } else {
+                       // Accept the move. It will be changed in onSnapEnd.
+                       return;
+               }
+       } else {
+               // Suggestion not asked for.
+               recommended_dest = null;
+       }
+
        // see if the move is legal
        var pseudogame = new Chess(current_display_fen());
        var move = pseudogame.move({
@@ -354,6 +424,10 @@ var onDrop = function(source, target) {
 }
 
 var onSnapEnd = function(source, target) {
+       if (source == target && recommended_dest !== null) {
+               target = recommended_dest;
+       }
+       recommended_dest = null;
        var pseudogame = new Chess(current_display_fen());
        var move = pseudogame.move({
                from: source,
diff --git a/www/js/stockfish.js b/www/js/stockfish.js
new file mode 100644 (file)
index 0000000..6fe13b1
--- /dev/null
@@ -0,0 +1,44 @@
+/*!
+ * Stockfish.js
+ *
+ * Copyright (C) 2004-2008 Tord Romstad (Glaurung author)
+ * Copyright (C) 2008-2014 Marco Costalba, Joona Kiiski, Tord Romstad (Stockfish authors)
+ * Copyright (C) Nathan Rugg
+ *
+ * License: GPL
+ */
+(function(){if(typeof process=="undefined"){var initialized=false;onmessage=function(event){if(!initialized){Module.ccall("init","number",[],[]);initialized=true}if(typeof event.data=="object"){if(event.data.book){var book=event.data.book;var byteArray=new Uint8Array(book);var buf=Module._malloc(book.byteLength);Module.HEAPU8.set(byteArray,buf);Module.ccall("set_book","number",["number","number"],[buf,book.byteLength])}}else{Module.ccall("uci_command","number",["string"],[event.data])}};console={log:function(line){postMessage(line)}}}else{process.stdin.resume();var lines=null;var init=function(){if(lines===null){Module.ccall("init","number",[],[]);lines=""}};setImmediate(init);process.stdin.on("data",function(chunk){init();lines+=chunk;var match;while(match=lines.match(/\r?\n|\n?\r/)){var line=lines.slice(0,match.index);lines=lines.slice(match.index+match[0].length);Module.ccall("uci_command","number",["string"],[line]);if(line=="quit"){process.exit()}}});process.stdin.on("end",function(){process.exit()})}})();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_NODE=typeof process==="object"&&typeof require==="function";var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";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){return Module["read"](filename,true)};Module["load"]=function load(f){globalEval(read(f))};Module["arguments"]=process["argv"].slice(2);module["exports"]=Module}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){return read(f,"binary")};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}this["Module"]=Module}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_WEB){window["Module"]=Module}else{Module["load"]=importScripts}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]=="undefined"&&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"]=[]}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},forceAlign:function(target,quantum){quantum=quantum||4;if(quantum==1)return target;if(isNumber(target)&&isNumber(quantum)){return Math.ceil(target/quantum)*quantum}else if(isNumber(quantum)&&isPowerOfTwo(quantum)){return"((("+target+")+"+(quantum-1)+")&"+-quantum+")"}return"Math.ceil(("+target+")/"+quantum+")*"+quantum},isNumberType:function(type){return type in Runtime.INT_TYPES||type in Runtime.FLOAT_TYPES},isPointerType:function isPointerType(type){return type[type.length-1]=="*"},isStructType:function isStructType(type){if(isPointerType(type))return false;if(isArrayType(type))return true;if(/<?\{ ?[^}]* ?\}>?/.test(type))return true;return type[0]=="%"},INT_TYPES:{i1:0,i8:0,i16:0,i32:0,i64:0},FLOAT_TYPES:{"float":0,"double":0},or64:function(x,y){var l=x|0|(y|0);var h=(Math.round(x/4294967296)|Math.round(y/4294967296))*4294967296;return l+h},and64:function(x,y){var l=(x|0)&(y|0);var h=(Math.round(x/4294967296)&Math.round(y/4294967296))*4294967296;return l+h},xor64:function(x,y){var l=(x|0)^(y|0);var h=(Math.round(x/4294967296)^Math.round(y/4294967296))*4294967296;return l+h},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)},dedup:function dedup(items,ident){var seen={};if(ident){return items.filter(function(item){if(seen[item[ident]])return false;seen[item[ident]]=true;return true})}else{return items.filter(function(item){if(seen[item])return false;seen[item]=true;return true})}},set:function set(){var args=typeof arguments[0]==="object"?arguments[0]:arguments;var ret={};for(var i=0;i<args.length;i++){ret[args[i]]=0}return ret},STACK_ALIGN:8,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)},calculateStructAlignment:function calculateStructAlignment(type){type.flatSize=0;type.alignSize=0;var diffs=[];var prev=-1;var index=0;type.flatIndexes=type.fields.map(function(field){index++;var size,alignSize;if(Runtime.isNumberType(field)||Runtime.isPointerType(field)){size=Runtime.getNativeTypeSize(field);alignSize=Runtime.getAlignSize(field,size)}else if(Runtime.isStructType(field)){if(field[1]==="0"){size=0;if(Types.types[field]){alignSize=Runtime.getAlignSize(null,Types.types[field].alignSize)}else{alignSize=type.alignSize||QUANTUM_SIZE}}else{size=Types.types[field].flatSize;alignSize=Runtime.getAlignSize(null,Types.types[field].alignSize)}}else if(field[0]=="b"){size=field.substr(1)|0;alignSize=1}else if(field[0]==="<"){size=alignSize=Types.types[field].flatSize}else if(field[0]==="i"){size=alignSize=parseInt(field.substr(1))/8;assert(size%1===0,"cannot handle non-byte-size field "+field)}else{assert(false,"invalid type for calculateStructAlignment")}if(type.packed)alignSize=1;type.alignSize=Math.max(type.alignSize,alignSize);var curr=Runtime.alignMemory(type.flatSize,alignSize);type.flatSize=curr+size;if(prev>=0){diffs.push(curr-prev)}prev=curr;return curr});if(type.name_&&type.name_[0]==="["){type.flatSize=parseInt(type.name_.substr(1))*type.flatSize/2}type.flatSize=Runtime.alignMemory(type.flatSize,type.alignSize);if(diffs.length==0){type.flatFactor=type.flatSize}else if(Runtime.dedup(diffs).length==1){type.flatFactor=diffs[0]}type.needsFlattening=type.flatFactor!=1;return type.flatIndexes},generateStructInfo:function(struct,typeName,offset){var type,alignment;if(typeName){offset=offset||0;type=(typeof Types==="undefined"?Runtime.typeInfo:Types.types)[typeName];if(!type)return null;if(type.fields.length!=struct.length){printErr("Number of named fields must match the type for "+typeName+": possibly duplicate struct names. Cannot return structInfo");return null}alignment=type.flatIndexes}else{var type={fields:struct.map(function(item){return item[0]})};alignment=Runtime.calculateStructAlignment(type)}var ret={__size__:type.flatSize};if(typeName){struct.forEach(function(item,i){if(typeof item==="string"){ret[item]=alignment[i]+offset}else{var key;for(var k in item)key=k;ret[key]=Runtime.generateStructInfo(item[key],type.fields[i],alignment[i])}})}else{struct.forEach(function(item,i){ret[item[1]]=alignment[i]})}return ret},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},getAsmConst:function(code,numArgs){if(!Runtime.asmConstCache)Runtime.asmConstCache={};var func=Runtime.asmConstCache[code];if(func)return func;var args=[];for(var i=0;i<numArgs;i++){args.push(String.fromCharCode(36)+i)}var source=Pointer_stringify(code);if(source[0]==='"'){if(source.indexOf('"',1)===source.length-1){source=source.substr(1,source.length-2)}else{abort("invalid EM_ASM input |"+source+"|. Please use EM_ASM(..code..) (no quotes) or EM_ASM({ ..code($0).. }, input) (to input values)")}}try{var evalled=eval("(function("+args.join(",")+"){ "+source+" })")}catch(e){Module.printErr("error in executing inline EM_ASM code: "+e+" on: \n\n"+source+"\n\nwith args |"+args+"| (make sure to use the right one out of EM_ASM, EM_ASM_ARGS, etc.)");throw e}return Runtime.asmConstCache[code]=evalled},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[func]){Runtime.funcWrappers[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return Runtime.funcWrappers[func]},UTF8Processor:function(){var buffer=[];var needed=0;this.processCChar=function(code){code=code&255;if(buffer.length==0){if((code&128)==0){return String.fromCharCode(code)}buffer.push(code);if((code&224)==192){needed=1}else if((code&240)==224){needed=2}else{needed=3}return""}if(needed){buffer.push(code);needed--;if(needed>0)return""}var c1=buffer[0];var c2=buffer[1];var c3=buffer[2];var c4=buffer[3];var ret;if(buffer.length==2){ret=String.fromCharCode((c1&31)<<6|c2&63)}else if(buffer.length==3){ret=String.fromCharCode((c1&15)<<12|(c2&63)<<6|c3&63)}else{var codePoint=(c1&7)<<18|(c2&63)<<12|(c3&63)<<6|c4&63;ret=String.fromCharCode(Math.floor((codePoint-65536)/1024)+55296,(codePoint-65536)%1024+56320)}buffer.length=0;return ret};this.processJSString=function processJSString(string){string=unescape(encodeURIComponent(string));var ret=[];for(var i=0;i<string.length;i++){ret.push(string.charCodeAt(i))}return ret}},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+7&-8;return ret},staticAlloc:function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+7&-8;return ret},dynamicAlloc:function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+7&-8;if(DYNAMICTOP>=TOTAL_MEMORY)enlargeMemory();return ret},alignMemory:function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:8))*(quantum?quantum:8);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 stack=0;var JSfuncs={stackSave:function(){stack=Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore(stack)},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+1);writeStringToMemory(str,ret)}return ret}};var toC={string:JSfuncs["stringToC"],array:JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args){var func=getCFunc(ident);var cArgs=[];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)JSfuncs["stackRestore"]();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){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+=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+";"}funcstr+="return ret})";return eval(funcstr)}})();Module["cwrap"]=cwrap;Module["ccall"]=ccall;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 Pointer_stringify(ptr,length){var hasUtf=false;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];if(t>=128)hasUtf=true;else if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(!hasUtf){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}var utf8=new Runtime.UTF8Processor;for(i=0;i<length;i++){t=HEAPU8[ptr+i>>0];ret+=utf8.processCChar(t)}return ret}Module["Pointer_stringify"]=Pointer_stringify;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){for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr+i*2>>1]=codeUnit}HEAP16[outPtr+str.length*2>>1]=0}Module["stringToUTF16"]=stringToUTF16;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){var iChar=0;for(var iCodeUnit=0;iCodeUnit<str.length;++iCodeUnit){var codeUnit=str.charCodeAt(iCodeUnit);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++iCodeUnit);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr+iChar*4>>2]=codeUnit;++iChar}HEAP32[outPtr+iChar*4>>2]=0}Module["stringToUTF32"]=stringToUTF32;function demangle(func){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()}}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()"}return parse()}catch(e){return func}}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"})}function stackTrace(){var stack=(new Error).stack;return stack?demangleAll(stack):"(no stack trace available)"}var PAGE_SIZE=4096;function alignMemoryPage(x){return x+4095&-4096}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(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.")}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||67108864;var FAST_MEMORY=Module["FAST_MEMORY"]||2097152;var totalMemory=4096;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){Module.printErr("increasing TOTAL_MEMORY to "+totalMemory+" to be more reasonable");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=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["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;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__)}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"]=Module.addOnPreRun=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=Module.addOnInit=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=Module.addOnPreMain=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=Module.addOnExit=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=Module.addOnPostRun=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var ret=(new Runtime.UTF8Processor).processJSString(stringy);if(length){ret.length=length}if(!dontAddNull){ret.push(0)}return ret}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+i>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;i++){HEAP8[buffer+i>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer+str.length>>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"];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 runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;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 __ZTVN10__cxxabiv117__class_type_infoE=1090936;var __ZTVN10__cxxabiv120__si_class_type_infoE=1090976;STATIC_BASE=8;STATICTOP=STATIC_BASE+Runtime.alignMemory(1092771);__ATINIT__.push({func:function(){__GLOBAL__I_a()}},{func:function(){__GLOBAL__I_a58()}},{func:function(){__GLOBAL__I_a78()}},{func:function(){__GLOBAL__I_a159()}},{func:function(){__GLOBAL__I_a208()}},{func:function(){__GLOBAL__I_a230()}},{func:function(){__GLOBAL__I_a252()}},{func:function(){__GLOBAL__I_a304()}},{func:function(){__GLOBAL__I_a362()}},{func:function(){__GLOBAL__I_a457()}});allocate([100,101,102,97,117,108,116,0,100,101,112,116,104,0,0,0,84,104,114,101,97,100,115,0,116,105,109,101,0,0,0,0,110,111,100,101,115,0,0,0,109,97,116,101,0,0,0,0,32,2,0,0,96,2,0,0,168,2,0,0,216,2,0,0,24,3,0,0,88,3,0,0,160,3,0,0,224,3,0,0,32,4,0,0,96,4,0,0,160,4,0,0,232,4,0,0,48,5,0,0,112,5,0,0,176,5,0,0,240,5,0,0,48,6,0,0,104,6,0,0,160,6,0,0,200,6,0,0,248,6,0,0,32,7,0,0,80,7,0,0,128,7,0,0,184,7,0,0,240,7,0,0,24,8,0,0,72,8,0,0,128,8,0,0,184,8,0,0,99,117,114,114,101,110,116,0,85,110,97,98,108,101,32,116,111,32,111,112,101,110,32,102,105,108,101,32,0,0,0,0,85,67,73,95,67,104,101,115,115,57,54,48,0,0,0,0,10,80,111,115,105,116,105,111,110,58,32,0,0,0,0,0,100,105,118,105,100,101,0,0,58,32,0,0,0,0,0,0,112,101,114,102,116,0,0,0,10,80,101,114,102,116,32,0,32,108,101,97,102,32,110,111,100,101,115,58,32,0,0,0,10,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,0,0,0,0,10,84,111,116,97,108,32,116,105,109,101,32,40,109,115,41,32,58,32,0,0,0,0,0,10,78,111,100,101,115,32,115,101,97,114,99,104,101,100,32,32,58,32,0,0,0,0,0,10,78,111,100,101,115,47,115,101,99,111,110,100,32,32,32,32,58,32,0,0,0,0,0,108,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,148,255,255,255,148,255,255,255,0,0,0,0,3,0,0,0,4,0,0,0,108,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,148,255,255,255,148,255,255,255,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,10,0,0,0,1,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,3,0,0,0,4,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,114,0,0,0,0,0,0,0,114,110,98,113,107,98,110,114,47,112,112,112,112,112,112,112,112,47,56,47,56,47,56,47,56,47,80,80,80,80,80,80,80,80,47,82,78,66,81,75,66,78,82,32,119,32,75,81,107,113,32,45,32,48,32,49,0,0,0,0,0,0,0,0,114,51,107,50,114,47,112,49,112,112,113,112,98,49,47,98,110,50,112,110,112,49,47,51,80,78,51,47,49,112,50,80,51,47,50,78,50,81,49,112,47,80,80,80,66,66,80,80,80,47,82,51,75,50,82,32,119,32,75,81,107,113,32,45,32,48,32,49,48,0,0,0,56,47,50,112,53,47,51,112,52,47,75,80,53,114,47,49,82,51,112,49,107,47,56,47,52,80,49,80,49,47,56,32,119,32,45,32,45,32,48,32,49,49,0,0,0,0,0,0,52,114,114,107,49,47,112,112,49,110,51,112,47,51,113,50,112,81,47,50,112,49,112,98,50,47,50,80,80,52,47,50,80,51,78,49,47,80,50,66,50,80,80,47,52,82,82,75,49,32,98,32,45,32,45,32,55,32,49,57,0,0,0,0,114,113,51,114,107,49,47,112,112,112,50,112,112,112,47,49,98,110,112,98,51,47,51,78,50,66,49,47,51,78,80,51,47,55,80,47,80,80,80,81,49,80,80,49,47,50,75,82,51,82,32,119,32,45,32,45,32,55,32,49,52,0,0,0,114,49,98,113,49,114,49,107,47,49,112,112,49,110,49,112,112,47,49,112,49,112,52,47,52,112,50,81,47,52,80,112,50,47,49,66,78,80,52,47,80,80,80,50,80,80,80,47,51,82,49,82,75,49,32,119,32,45,32,45,32,50,32,49,52,0,0,0,0,0,0,0,114,51,114,49,107,49,47,50,112,50,112,112,112,47,112,49,112,49,98,110,50,47,56,47,49,113,50,80,51,47,50,78,80,81,78,50,47,80,80,80,51,80,80,47,82,52,82,75,49,32,98,32,45,32,45,32,50,32,49,53,0,0,0,0,114,49,98,98,107,49,110,114,47,112,112,51,112,49,112,47,50,110,53,47,49,78,52,112,49,47,50,78,112,49,66,50,47,56,47,80,80,80,50,80,80,80,47,50,75,82,49,66,49,82,32,119,32,107,113,32,45,32,48,32,49,51,0,0,114,49,98,113,49,114,107,49,47,112,112,112,49,110,112,112,112,47,52,110,51,47,51,112,51,81,47,51,80,52,47,49,66,80,49,66,51,47,80,80,49,78,50,80,80,47,82,52,82,75,49,32,119,32,45,32,45,32,49,32,49,54,0,0,52,114,49,107,49,47,114,49,113,50,112,112,112,47,112,112,112,50,110,50,47,52,80,51,47,53,82,98,49,47,49,78,49,66,81,51,47,80,80,80,51,80,80,47,82,53,75,49,32,119,32,45,32,45,32,49,32,49,55,0,0,0,0,0,50,114,113,107,98,49,114,47,112,112,112,50,112,50,47,50,110,112,98,49,112,49,47,49,78,49,78,110,50,112,47,50,80,49,80,80,50,47,56,47,80,80,50,66,49,80,80,47,82,49,66,81,75,50,82,32,98,32,75,81,32,45,32,48,32,49,49,0,0,0,0,0,114,49,98,113,49,114,49,107,47,98,49,112,49,110,112,112,49,47,112,50,112,51,112,47,49,112,54,47,51,80,80,51,47,49,66,50,78,78,50,47,80,80,51,80,80,80,47,82,50,81,49,82,75,49,32,119,32,45,32,45,32,49,32,49,54,0,0,0,0,0,0,0,51,114,49,114,107,49,47,112,53,112,112,47,98,112,112,49,112,112,50,47,56,47,113,49,80,80,49,80,50,47,98,51,80,51,47,80,50,78,81,82,80,80,47,49,82,50,66,49,75,49,32,98,32,45,32,45,32,54,32,50,50,0,0,0,114,49,113,50,114,107,49,47,50,112,49,98,112,112,112,47,50,80,112,52,47,112,54,98,47,81,49,80,78,112,51,47,52,66,51,47,80,80,49,82,49,80,80,80,47,50,75,52,82,32,119,32,45,32,45,32,50,32,49,56,0,0,0,0,52,107,50,114,47,49,112,98,50,112,112,112,47,49,112,50,112,51,47,49,82,49,112,52,47,51,80,52,47,50,114,49,80,78,50,47,80,52,80,80,80,47,49,82,52,75,49,32,98,32,45,32,45,32,51,32,50,50,0,0,0,0,0,0,51,113,50,107,49,47,112,98,51,112,49,112,47,52,112,98,112,49,47,50,114,53,47,80,112,78,50,78,50,47,49,80,50,80,50,80,47,53,80,80,49,47,81,50,82,50,75,49,32,98,32,45,32,45,32,52,32,50,54,0,0,0,0,0,54,107,49,47,54,112,49,47,54,80,112,47,112,112,112,53,47,51,112,110,50,80,47,49,80,51,75,50,47,49,80,80,50,80,50,47,51,78,52,32,98,32,45,32,45,32,48,32,49,0,0,0,0,0,0,0,51,98,52,47,53,107,112,49,47,49,112,49,112,49,112,49,112,47,112,80,49,80,112,80,49,80,47,80,49,80,49,80,51,47,51,75,78,51,47,56,47,56,32,119,32,45,32,45,32,48,32,49,0,0,0,0,50,75,53,47,112,55,47,55,80,47,53,112,82,49,47,56,47,53,107,50,47,114,55,47,56,32,119,32,45,32,45,32,48,32,49,0,0,0,0,0,56,47,54,112,107,47,49,112,54,47,56,47,80,80,51,112,49,112,47,53,80,50,47,52,75,80,49,113,47,51,81,52,32,119,32,45,32,45,32,48,32,49,0,0,0,0,0,0,55,107,47,51,112,50,112,112,47,52,113,51,47,56,47,52,81,51,47,53,75,112,49,47,80,54,98,47,56,32,119,32,45,32,45,32,48,32,49,0,56,47,50,112,53,47,56,47,50,107,80,75,112,49,112,47,50,112,52,80,47,50,80,53,47,51,80,52,47,56,32,119,32,45,32,45,32,48,32,49,0,0,0,0,0,0,0,0,56,47,49,112,51,112,112,49,47,55,112,47,53,80,49,80,47,50,107,51,80,49,47,56,47,50,75,50,80,50,47,56,32,119,32,45,32,45,32,48,32,49,0,0,0,0,0,0,56,47,112,112,50,114,49,107,49,47,50,112,49,112,51,47,51,112,80,50,112,47,49,80,49,80,49,80,49,80,47,80,53,75,82,47,56,47,56,32,119,32,45,32,45,32,48,32,49,0,0,0,0,0,0,0,56,47,51,112,52,47,112,49,98,107,51,112,47,80,112,54,47,49,75,112,49,80,112,80,112,47,50,80,50,80,49,80,47,50,80,53,47,53,66,50,32,98,32,45,32,45,32,48,32,49,0,0,0,0,0,0,53,107,50,47,55,82,47,52,80,50,112,47,53,75,50,47,112,49,114,50,80,49,112,47,56,47,56,47,56,32,98,32,45,32,45,32,48,32,49,0,54,107,49,47,54,112,49,47,80,54,112,47,114,49,78,53,47,53,112,50,47,55,80,47,49,98,51,80,80,49,47,52,82,49,75,49,32,119,32,45,32,45,32,48,32,49,0,0,49,114,51,107,50,47,52,113,51,47,50,80,112,51,98,47,51,66,112,51,47,50,81,50,112,50,47,49,112,49,80,50,80,49,47,49,80,50,75,80,50,47,51,78,52,32,119,32,45,32,45,32,48,32,49,0,54,107,49,47,52,112,112,49,112,47,51,112,50,112,49,47,80,49,112,80,98,51,47,82,55,47,49,114,50,80,49,80,80,47,51,66,49,80,50,47,54,75,49,32,119,32,45,32,45,32,48,32,49,0,0,0,56,47,51,112,51,66,47,53,112,50,47,53,80,50,47,112,55,47,80,80,53,98,47,107,55,47,54,75,49,32,119,32,45,32,45,32,48,32,49],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);
+allocate([7,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,17,0,0,0,15,0,0,0,10,0,0,0,6,0,0,0,250,255,255,255,246,255,255,255,241,255,255,255,239,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,9,0,0,0,7,0,0,0,249,255,255,255,247,255,255,255,8,0,0,0,1,0,0,0,255,255,255,255,248,255,255,255,0,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,248,255,255,255,255,255,255,255,9,0,0,0,249,255,255,255,247,255,255,255,7],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+133436);allocate([201,3,0,0,184,7,0,0,34,11,0,0,30,2,0,0,21,8,0,0,36,11,0,0,172,6,0,0,164,0,0,0,29,12,0,0,40,2,0,0,227,13,0,0,158,3,0,0,66,3,0,0,26,0,0,0,83,8,0,0,93,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,109,119,51,126,36,57,157,199,165,170,5,128,57,247,42,71,53,98,36,80,1,219,68,226,106,167,98,62,247,21,156,137,12,156,72,101,68,131,117,191,1,48,32,58,172,144,50,121,34,4,97,31,173,187,15,202,96,251,242,143,144,58,232,16,92,117,88,93,118,126,13,45,224,175,206,34,56,8,26,176,195,94,226,240,213,5,150,213,46,58,209,92,255,33,208,50,46,103,74,93,241,189,64,149,99,213,111,20,85,19,1,229,217,243,70,32,131,180,93,204,25,247,127,45,139,159,35,161,154,180,133,174,161,209,5,113,201,143,110,143,132,159,103,11,237,31,128,255,187,73,116,240,173,183,195,177,205,17,125,204,183,30,120,158,112,199,130,108,120,16,149,28,143,33,243,230,187,81,175,243,120,20,51,67,148,33,231,229,141,179,75,252,80,253,188,110,156,100,170,11,212,175,82,163,152,189,141,23,146,215,129,75,7,210,135,225,42,233,211,81,199,243,25,191,154,177,98,240,48,171,180,196,122,4,66,172,0,5,123,93,216,9,26,168,44,69,201,0,117,162,77,81,108,170,36,71,180,1,117,66,52,159,76,65,8,145,60,215,143,166,20,147,189,28,70,131,155,27,167,15,133,241,176,149,139,72,3,64,192,147,255,52,43,123,99,148,10,217,61,154,188,209,9,59,221,161,52,131,102,117,53,35,90,196,164,151,43,94,115,11,64,189,241,112,112,114,24,231,2,191,89,210,172,203,31,85,101,155,206,194,167,16,211,68,130,93,254,224,63,152,191,36,168,84,116,79,209,116,159,53,48,186,185,74,220,235,81,250,176,154,219,5,197,130,92,65,178,48,52,138,254,247,252,222,61,186,185,41,167,83,50,117,48,27,8,104,195,116,140,231,51,124,22,135,108,188,185,32,78,2,131,43,143,244,126,127,189,81,195,212,5,213,17,67,162,118,44,169,252,104,101,184,167,50,15,244,176,224,77,93,126,195,12,70,147,214,150,47,159,104,99,203,64,226,66,97,150,145,226,218,220,43,109,81,217,228,54,2,11,136,66,182,27,23,152,88,74,15,95,136,47,249,121,245,144,248,57,139,56,86,115,244,181,197,147,120,27,35,141,157,53,220,99,118,173,152,234,138,202,22,236,199,45,168,194,0,249,85,83,66,113,153,90,133,159,251,7,94,237,167,168,122,65,147,80,60,127,90,162,141,195,203,123,212,182,244,140,118,138,252,25,217,192,207,222,128,119,122,99,247,65,14,238,122,164,73,130,232,209,231,1,85,105,173,121,118,87,125,119,244,186,172,20,149,161,222,204,190,182,69,241,252,82,23,32,200,42,191,218,246,211,200,249,77,201,195,36,234,18,57,240,36,41,110,187,217,128,201,149,11,108,226,12,196,124,191,191,50,209,156,164,57,57,36,244,42,102,157,233,63,92,22,145,120,173,230,39,241,79,116,185,64,240,53,133,115,216,64,95,250,244,179,84,43,237,127,18,50,44,177,114,71,31,65,123,60,77,149,238,161,234,36,154,144,172,133,154,245,33,79,240,217,76,172,112,194,117,160,153,62,157,184,249,177,7,201,181,178,226,179,135,184,72,79,197,184,229,102,163,242,124,63,204,70,147,74,174,189,123,38,71,77,192,32,25,233,42,158,180,198,2,191,135,89,56,127,35,172,55,34,9,208,20,237,248,78,246,7,255,78,197,60,240,169,220,232,141,137,156,180,77,38,51,22,156,237,56,11,11,61,44,242,179,75,20,1,77,180,95,14,57,233,104,39,113,180,165,254,91,132,137,167,31,145,50,16,30,179,140,231,100,185,172,116,154,4,251,218,53,160,247,128,79,196,56,55,11,154,208,4,99,8,58,2,131,70,230,113,33,12,248,239,156,235,99,155,91,66,147,136,137,244,172,106,80,214,1,167,163,201,175,129,24,68,6,117,64,4,8,3,101,167,244,219,156,51,149,211,223,242,32,12,240,188,125,146,239,236,128,54,224,209,247,50,123,67,98,49,231,32,118,253,185,119,27,185,125,165,232,167,5,117,10,99,21,110,156,136,181,247,115,149,206,9,10,117,74,138,47,154,137,236,76,70,207,36,184,5,231,156,99,56,245,127,239,128,85,255,160,121,60,157,96,119,132,127,200,230,237,49,63,201,91,240,129,158,121,140,138,66,243,140,107,83,134,115,123,8,96,76,55,215,151,50,133,50,255,124,99,70,162,160,235,192,12,230,202,63,4,158,53,221,53,149,68,14,146,204,144,178,21,59,9,235,112,189,28,89,22,25,146,161,115,141,170,161,225,159,108,67,86,129,143,59,99,112,75,172,239,175,247,93,212,152,87,33,187,104,23,79,242,66,0,242,69,98,116,235,232,244,128,15,147,161,94,215,207,255,18,103,255,112,170,104,116,214,63,98,174,252,216,200,75,200,91,44,221,217,45,207,84,13,18,237,126,28,95,22,1,84,84,254,34,41,153,185,143,233,0,24,201,101,3,193,106,142,214,139,128,246,5,118,91,20,104,196,222,2,51,245,174,163,227,237,27,2,86,197,214,3,150,83,67,122,203,28,105,92,155,150,170,86,238,239,146,211,50,120,168,174,17,126,60,123,44,148,101,246,4,208,202,51,214,210,222,101,229,32,244,112,133,240,33,60,78,169,125,141,147,21,180,80,99,203,158,229,89,184,145,74,128,237,224,51,243,207,16,221,183,11,190,64,209,174,40,86,164,79,114,137,29,204,197,65,39,26,241,128,246,72,86,179,218,183,240,105,80,37,45,212,171,41,247,142,163,197,155,188,162,246,8,67,5,47,239,88,40,92,204,245,66,32,175,42,190,245,183,186,18,4,72,67,254,61,86,74,175,243,174,127,73,81,228,154,229,175,25,64,232,241,223,3,56,89,82,240,230,44,95,230,118,240,244,243,90,125,116,37,150,55,17,21,193,130,134,36,210,229,188,79,153,54,232,61,36,164,157,23,144,224,63,179,112,111,6,28,26,103,155,24,222,196,77,195,87,36,113,183,154,3,81,180,180,31,195,128,63,122,192,124,110,74,230,197,233,110,180,135,28,230,171,66,154,129,179,32,42,82,58,147,7,160,33,79,170,152,21,118,111,241,45,253,104,179,113,19,74,60,118,160,134,224,2,103,196,147,247,49,141,235,42,1,142,40,215,75,196,193,75,42,106,51,222,35,159,7,141,179,146,246,11,179,38,115,23,122,74,96,44,100,96,235,3,62,231,80,72,27,142,60,229,241,71,196,207,153,141,38,100,245,163,92,176,232,116,148,188,200,130,225,154,202,88,85,252,212,75,252,164,118,78,252,88,141,23,85,231,254,61,192,164,177,125,185,105,150,124,198,172,196,183,181,249,251,85,134,75,214,130,106,252,23,68,210,196,182,76,104,156,208,110,69,23,41,125,201,142,126,233,36,41,157,223,3,103,78,68,167,66,126,245,71,197,158,210,202,231,68,118,227,120,250,5,47,54,233,68,154,254,21,102,51,56,204,53,189,8,206,154,18,58,235,229,21,147,117,223,4,30,135,27,6,148,16,160,75,120,157,159,29,223,157,181,113,136,182,87,186,59,63,247,209,222,238,173,183,210,248,115,195,59,216,85,162,247,129,235,12,140,68,242,244,215,167,255,16,210,140,232,91,217,231,40,71,255,248,82,111,51,113,172,18,195,218,73,64,167,181,253,55,228,182,27,246,162,179,53,106,127,176,92,42,79,89,120,191,165,189,128,211,135,33,58,69,108,224,247,185,22,78,213,15,138,76,72,162,123,140,227,162,217,202,120,166,243,162,123,67,222,125,191,176,57,36,68,138,191,193,85,175,252,148,165,63,87,128,246,252,24,195,90,73,159,184,99,5,76,13,147,0,26,147,135,224,64,193,66,182,46,65,169,255,140,159,22,97,50,5,57,202,104,226,121,117,210,103,233,30,122,111,91,111,7,229,96,29,157,162,91,246,182,153,227,16,56,177,249,181,74,109,91,9,50,138,3,221,9,33,182,202,53,177,175,207,159,73,36,11,169,189,198,194,124,160,37,162,119,49,227,112,76,99,94,62,81,18,47,105,63,202,192,97,67,91,164,32,75,164,172,65,217,123,128,197,2,134,124,143,82,137,57,97,185,190,146,171,82,115,127,85,252,46,250,29,157,72,195,114,245,117,241,47,114,151,254,7,17,165,96,18,29,162,155,12,236,87,154,36,122,214,242,247,232,233,143,32,4,160,32,185,88,96,12,17,90,152,86,138,101,151,164,217,12,76,90,113,249,200,35,253,86,174,122,136,157,123,132,76,40,203,25,182,189,251,171,254,4,131,186,96,28,101,30,46,116,60,173,4,89,230,50,150,154,226,185,81,59,161,130,27,136,36,73,151,205,68,103,110,80,121,106,252,111,181,61,24,176,126,211,110,198,21,185,217,14,132,212,115,88,109,232,17,94,110,172,25,53,126,100,120,246,197,12,242,208,136,212,133,27,33,144,216,37,101,254,185,218,21,54,183,173,134,29,21,13,25,240,192,220,78,165,101,168,251,143,249,174,102,37,196,147,49,7,0,190,234,175,231,153,90,40,223,109,8,255,203,72,175,139,247,235,241,106,155,127,33,186,155,20,26,126,98,88,51,30,121,189,42,110,209,44,150,121,151,240,245,239,99,211,237,110,74,52,140,163,226,12,65,167,207,185,173,74,128,26,222,197,120,29,66,48,127,144,7,77,3,179,237,101,31,80,233,166,143,164,229,74,98,55,78,255,12,112,97,175,123,149,138,24,49,78,147,39,108,58,69,163,188,106,83,3,149,212,224,50,196,137,149,4,142,8,184,33,191,254,231,174,67,249,211,57,97,51,62,142,59,108,46,229,78,70,250,111,79,54,34,66,49,220,206,109,15,214,192,143,65,202,13,59,150,86,175,19,229,145,223,14,245,22,147,159,96,75,145,85,25,239,40,50,78,54,192,1,86,86,117,129,126,136,57,57,181,236,75,41,49,133,161,169,199,186,82,186,123,57,112,196,68,179,189,206,243,218,84,73,211,101,226,17,117,169,63,27,184,180,167,246,214,147,17,6,34,180,77,67,56,28,64,130,21,7,245,79,220,190,139,241,19,122,210,36,197,22,177,151,64,188,40,234,242,226,133,120,185,89,68,85,17,195,93,10,23,153,249,169,198,231,87,51,66,111,148,135,111,110,238,40,89,50,67,51,176,40,98,54,228,208,39,234,137,222,247,49,92,86,20,148,17,132,20,97,245,48,79,237,146,18,57,219,115,216,188,222,23,142,29,78,217,123,148,110,167,100,104,241,217,199,60,230,86,238,83,224,122,148,95,95,71,249,130,56,201,200,202,129,31,169,91,245,155,58,228,8,152,61,187,31,161,217,202,159,194,237,99,32,210,15,185,176,160,172,216,86,242,179,132,110,81,180,168,49,48,176,175,72,20,135,213,55,221,53,78,46,84,5,43,8,246,233,89,75,37,215,51,250,250,235,128,34,83,13,181,171,85,146,243,52,45,127,229,76,171,185,81,117,41,40,214,1,53,105,191,73,217,125,249,88,44,198,106,18,197,25,143,79,69,205,203,222,43,204,78,63,232,187,48,226,25,40,126,43,132,220,184,3,117,0,46,20,137,186,203,97,80,10,29,148,188,163,33,128,205,50,14,118,246,233,47,73,118,188,82,229,199,9,201,92,165,77,147,84,47,133,86,207,79,6,207,252,7,129,128,101,255,31,213,84,137,9,191,196,85,25,219,14,183,35,157,246,48,100,66,222,48,195,10,92,164,232,67,237,21,71,141,160,128,183,218,228,215,168,187,224,60,240,116,185,114,5,199,25,20,94,152,46,125,181,63,215,243,44,190,236,217,232,80,151,229,112,113,177,228,47,144,231,5,121,168,123,49,17,236,69,31,138,236,33,191,127,0,91,4,203,191,202,37,23,7,178,226,213,92,145,78,150,109,214,22,240,203,139,43,62,172,160,40,147,227,68,116,190,183,68,222,188,79,43,91,248,177,99,186,57,234,63,53,73,106,72,83,205,175,26,208,29,133,159,113,253,146,138,202,31,250,122,53,39,216,149,124,252,189,94,179,200,144,169,166,24,141,194,185,198,5,112,203,204,38,127,177,67,44,185,219,59,162,149,150,248,180,181,112,170,127,48,152,74,165,57,76,233,110,243,246,207,116,177,160,183,173,72,175,41,71,168,219,212,104,74,112,217,26,188,24,46,28,139,47,175,109,150,224,45,126,160,67,30,91,29,193,185,96,51,227,222,104,45,151,100,132,5,194,208,56,141,98,148,89,165,144,171,182,210,192,219,47,167,198,53,67,60,115,210,77,15,167,148,157,217,117,126,43,167,111,55,131,25,237,108,36,188,48,240,203,170,252,151,18,59,80,50,123,73,119,123,148,203,28,184,223,237,71,133,203,2,9,247,223,156,153,121,36,155,142,67,57,25,254,207,215,149,45,137,227,38,150,130,241,179,242,145,66,226,250,146,3,52,156,123,20,44,226,99,28,74,40,96,216,182,120,198,231,154,101,80,136,136,115,88,109,115,168,150,210,220,129,9,64,164,9,101,154,120,101,159,47,5,233,114,237,143,243,159,140,87,48,153,91,238,121,228,205,238,73,45,205,142,242,231,254,23,234,129,165,116,192,86,239,74,177,116,215,247,68,85,15,41,111,252,149,1,63,123,87,207,192,178,53,54,21,18,167,12,94,186,219,38,81,127,19,180,175,62,108,149,118,122,57,171,49,29,161,116,87,61,180,12,244,33,56,8,27,138,98,223,55,37,227,56,74,123,3,110,29,109,100,19,1,149,169,232,65,0,154,151,168,77,215,21,117,143,7,110,195,59,209,16,211,122,242,18,10,93,39,19,190,30,46,26,157,127,177,87,81,28,27,54,58,218,37,12,61,144,32,125,221,220,7,247,104,208,54,51,131,54,137,51,137,121,31,52,104,206,52,95,208,141,22,144,144,171,229,37,220,82,50,75,149,67,233,229,152,127,182,194,56,180,146,164,81,56,142,215,220,16,191,34,120,68,181,122,194,219,130,163,44,248,101,219,60,155,132,76,123,22,150,120,123,182,80,172,142,4,176,209,206,191,189,254,159,54,96,155,17,169,69,191,4,9,200,122,255,31,231,238,23,24,23,251,18,172,61,169,221,119,145,218,8,175,68,199,101,110,147,171,12,27,50,233,229,4,29,235,89,181,186,242,214,248,179,69,123,195,233,201,170,140,34,220,169,195,255,7,101,90,103,182,184,243,218,129,214,78,222,119,196,159,203,150,239,204,142,141,55,103,54,146,37,77,217,86,216,109,49,219,180,176,21,206,25,163,94,221,18,31,117,115,57,7,165,129,39,179,158,132,142,138,245,121,82,40,113,92,146,225,254,14,12,121,241,75,192,116,138,147,148,60,21,72,218,77,44,84,192,28,106,109,38,157,254,196,8,101,129,251,64,116,159,34,72,223,3,133,50,19,64,172,60,228,174,123,191,214,143,116,246,110,95,214,56,72,234,141,49,243,40,35,21,30,191,150,242,72,163,25,132,143,17,181,87,89,74,131,200,114,92,180,96,50,167,35,160,215,174,109,181,207,171,200,235,148,224,147,153,152,15,13,193,159,230,202,147,91,53,162,104,222,190,139,83,174,121,254,76,164,37,20,55,206,252,132,29,157,54,182,223,45,171,177,210,81,140,211,44,231,185,228,215,47,16,34,85,183,150,91,202,101,109,84,59,171,216,160,105,221,226,112,191,95,178,81,77,96,158,172,183,79,86,138,170,115,72,17,148,43,153,30,140,26,160,190,217,3,39,10,196,170,166,243,164,127,174,190,77,118,139,190,169,112,110,185,153,30,67,71,239,87,235,157,94,44,129,153,210,50,238,143,147,58,254,173,245,253,143,219,230,38,157,159,236,4,197,86,147,70,140,144,209,8,91,60,118,200,85,0,216,89,248,106,108,63,69,165,163,32,148,195,124,127,206,197,244,189,126,34,251,155,92,92,252,214,121,157,3,137,182,42,94,48,87,139,232,143,222,150,171,53,140,140,158,160,83,87,50,131,57,57,126,250,153,198,23,198,236,208,182,214,227,87,117,158,234,33,234,223,248,10,104,129,164,31,124,182,229,36,231,169,133,55,30,202,57,22,104,13,237,139,252,28,234,202,64,209,73,133,141,209,53,19,201,157,126,254,208,78,210,245,115,68,99,240,219,228,254,174,213,68,58,249,97,23,85,218,16,57,76,142,137,83,154,195,110,31,24,232,77,115,151,141,162,186,34,177,128,38,171,175,91,200,49,242,138,41,213,71,8,116,211,238,131,121,137,216,12,166,161,162,193,102,193,228,163,66,150,228,23,158,5,8,220,186,231,84,180,237,41,195,2,182,202,4,183,80,35,208,221,156,251,23,195,76,34,234,175,158,93,131,180,102,189,129,252,111,226,151,155,33,157,58,51,10,76,78,30,38,144,219,23,101,167,204,226,31,187,237,22,136,250,77,80,215,200,137,192,77,160,31,87,185,222,39,155,37,37,3,220,29,170,185,30,128,136,70,63,207,67,178,202,16,92,208,245,244,14,43,164,33,92,82,182,56,0,104,250,164,43,14,246,54,206,224,115,49,128,147,53,235,3,54,90,124,37,214,76,156,138,170,173,50,125,49,12,175,75,76,32,199,128,90,142,37,93,136,68,77,98,157,136,139,85,248,96,230,151,69,209,244,195,65,137,236,102,127,52,212,13,180,223,176,133,237,153,230,132,4,45,124,32,246,114,36,181,174,89,180,181,231,161,194,236,69,29,204,81,100,79,171,116,97,61,174,114,117,118,99,40,26,115,1,209,11,158,165,9,143,148,203,22,0,109,17,159,110,47,5,202,200,249,44,227,104,169,96,117,10,9,11,241,111,224,221,178,221,238,171,141,6,162,6,11,193,239,88,224,134,217,251,120,122,229,198,215,2,232,60,166,140,171,46,54,243,22,1,100,149,161,20,144,195,78,98,221,40,8,124,199,106,17,230,119,190,75,215,83,251,245,16,175,86,68,128,199,33,67,223,42,234,233,235,48,122,88,238,57,154,33,3,36,153,175,23,239,127,120,73,72,5,82,216,12,48,233,161,239,180,177,228,34,229,69,91,54,26,9,149,57,59,156,180,49,68,241,38,213,10,73,212,194,24,148,175,22,242,168,18,36,5,53,199,124,131,31,0,213,100,167,87,30,181,119,24,238,88,127,241,128,59,133,162,16,211,54,45,231,29,62,153,86,166,100,206,128,128,89,179,187,4,159,13,207,89,47,37,0,54,17,109,23,142,60,210,110,88,228,231,146,4,218,27,191,25,198,38,80,189,224,33,78,249,136,240,218,122,9,59,110,132,190,48,219,222,20,141,244,246,245,58,162,255,92,249,67,247,179,97,7,112,113,56,22,250,228,233,145,43,103,202,85,59,245,191,49,229,200,100,125,232,209,74,237,96,18,36,34,232,210,114,185,9,108,16,48,202,229,16,84,25,186,127,216,105,181,108,188,217,132,120,41,74,137,205,237,223,71,6,116,71,34,62,240,63,87,99,35,177,145,15,86,233,200,79,121,87,39,80,228,86,185,29,251,212,233,185,116,18,217,184,225,252,251,226,71,238,235,162,9,251,151,205,12,243,241,217,107,78,214,95,215,83,237,239,127,246,23,96,195,2,109,46,155,78,8,219,32,77,170,169,193,150,83,178,216,232,75,182,240,188,213,194,247,106,203,112,46,50,162,247,164,118,240,152,95,155,230,5,8,71,132,191,243,12,249,6,31,37,195,148,233,145,101,106,97,62,0,62,243,175,33,4,205,166,37,185,0,227,102,124,48,209,189,97,72,13,126,226,8,81,141,191,32,139,136,139,122,181,10,36,7,126,40,175,75,97,135,252,50,180,253,111,208,205,2,239,10,108,223,102,4,44,8,161,200,50,19,0,119,229,21,130,207,182,141,164,195,185,155,211,20,92,48,52,150,37,56,39,61,249,125,201,148,79,207,97,91,18,78,174,162,172,107,27,11,46,87,136,12,69,143,117,89,131,122,80,125,88,159,149,77,245,69,224,98,233,99,176,209,245,223,192,114,237,232,96,159,111,50,85,133,151,100,123,186,20,168,109,35,13,8,253,88,69,63,8,155,253,144,140,144,197,226,129,254,114,111,16,82,217,247,57,58,3,118,121,75,160,76,118,50,1,236,164,119,250,228,250,5,167,62,115,103,97,229,195,123,247,216,180,217,63,179,3,249,244,33,158,109,159,182,159,65,94,118,157,239,165,30,166,139,8,12,211,91,127,175,191,127,51,148,93,89,122,77,235,34,72,78,26,179,127,99,27,232,115,254,111,202,185,216,54,188,87,249,221,179,56,136,234,158,226,208,100,99,159,107,217,223,155,221,8,19,29,125,165,229,121,126,8,251,179,226,227,48,226,40,227,190,70,9,15,227,89,37,28,170,46,77,111,242,245,11,114,219,9,198,28,38,77,119,176,149,17,55,90,236,100,63,68,14,38,154,100,104,207,18,65,202,197,245,183,250,242,19,216,238,65,8,56,87,50,13,102,163,16,249,115,120,44,172,89,23,26,103,119,56,150,70,232,248,105,52,250,171,51,182,147,207,205,244,14,166,245,192,192,140,178,119,67,205,30,242,202,117,129,155,25,7,119,39,87,29,139,14,217,185,17,108,80,95,37,25,122,104,194,60,216,209,76,49,90,70,198,41,74,151,80,35,22,18,242,45,237,226,150,114,255,149,92,99,181,17,232,114,182,58,0,175,34,53,130,246,107,89,98,231,82,176,198,236,198,58,163,235,154,182,223,52,145,224,109,79,148,57,222,167,131,200,190,71,108,4,33,161,48,196,71,208,106,103,64,171,160,219,207,177,165,98,120,240,175,51,216,69,124,11,218,22,10,149,239,146,80,123,142,43,5,156,230,56,147,245,227,48,254,76,75,90,69,248,12,173,149,49,230,2,107,39,191,214,186,36,178,23,107,105,193,185,91,210,204,224,209,112,174,185,86,165,137,12,222,246,60,33,90,83,94,6,80,116,184,119,39,250,105,17,156,237,30,175,148,214,239,237,120,104,14,165,38,149,61,201,109,237,145,103,240,83,244,151,238,211,3,103,105,219,14,171,50,167,87,7,231,199,83,104,58,125,243,32,97,237,92,134,49,144,120,96,146,93,249,254,103,156,220,246,21,31,29,43,31,101,107,92,150,168,56,158,182,244,204,76,24,255,25,145,170,19,76,242,115,40,115,60,244,210,128,154,74,121,61,74,251,156,16,214,31,50,194,80,53,126,65,184,107,231,119,31,55,121,87,192,94,174,154,250,107,120,71,26,0,255,243,4,205,202,128,68,6,34,53,39,227,74,193,207,255,139,80,145,159,96,158,26,6,65,127,154,4,155,254,242,169,67,190,182,252,155,218,151,119,28,138,222,8,161,53,135,7,230,135,152,143,102,58,199,191,29,7,180,181,51,141,160,251,61,52,14,35,125,101,174,15,90,127,237,67,99,92,176,188,251,160,136,58,79,188,45,77,139,75,135,33,201,168,246,53,46,161,222,27,40,53,230,200,198,101,192,83,107,141,122,14,37,29,74,227,126,221,81,118,59,77,176,214,45,158,179,124,126,39,144,94,125,198,45,6,34,111,4,44,38,10,45,19,89,180,11,177,153,241,226,103,251,221,169,63,175,247,20,25,142,184,9,14,55,171,238,243,90,179,232,16,51,185,114,226,168,236,237,158,95,174,232,74,188,24,199,212,32,252,112,17,96,109,83,129,6,138,129,133,248,52,181,145,120,9,144,63,248,119,129,236,110,21,165,173,79,113,14,25,99,73,54,176,57,191,146,181,193,125,174,147,200,80,195,137,242,131,179,248,112,46,4,172,96,238,161,135,229,82,155,180,137,218,38,255,227,47,21,251,21,44,174,105,111,110,102,62,249,25,76,84,190,78,84,59,86,36,207,144,226,161,5,232,23,81,210,126,157,60,179,36,193,240,114,123,66,51,71,231,117,116,9,183,24,77,128,10,79,219,30,136,109,48,227,87,203,219,181,110,163,214,231,74,200,100,112,21,50,84,141,45,139,38,127,30,222,73,230,209,44,85,254,237,28,138,50,138,218,199,36,150,199,174,163,7,148,60,32,62,220,125,84,132,99,210,113,80,253,152,10,153,137,252,238,22,38,241,79,26,0,66,113,49,20,253,247,246,28,244,50,163,27,91,192,48,134,167,85,21,184,54,38,141,2,9,18,93,181,254,201,70,33,153,156,180,115,10,236,204,146,196,95,53,39,40,157,78,15,203,93,67,41,176,235,25,44,138,132,67,183,210,89,70,49,190,51,107,201,242,62,150,125,46,90,176,152,81,248,116,24,251,177,210,77,84,15,90,177,52,225,194,115,112,114,3,97,234,154,229,45,170,246,199,47,194,215,160,186,135,39,53,53,11,94,59,182,234,83,152,96,8,92,237,215,205,189,171,176,119,141,172,245,218,5,207,30,167,244,235,140,212,202,73,166,196,88,33,236,16,76,122,158,113,191,70,162,42,233,217,87,85,254,9,141,151,174,19,255,73,21,146,175,153,4,115,164,59,144,146,91,112,75,78,58,10,79,193,34,114,87,255,174,175,122,249,76,52,182,85,96,105,91,5,91,34,98,184,180,205,210,221,251,154,192,202,95,107,233,159,130,233,248,218,152,196,50,49,93,252,253,181,3,117,111,219,128,179,12,49,14,54,122,33,70,187,127,232,72,17,187,110,70,174,2,33,13,224,165,58,26,158,84,248,26,38,66,204,253,154,166,7,174,234,143,231,191,24,193,196,56,212,107,217,46,137,244,249,218,69,143,93,226,219,243,26,180,238,222,210,176,176,180,245,132,28,46,168,239,206,42,150,233,60,69,175,202,62,110,4,76,154,148,129,150,18,93,240,132,60,75,115,206,129,71,150,189,95,206,129,64,212,46,156,158,49,94,146,243,35,46,82,145,247,50,252,249,0,126,23,242,179,243,166,99,10,198,43,6,86,114,97,174,191,43,34,128,103,61,204,221,137,98,72,128,252,253,142,91,120,199,125,128,169,43,192,49,135,243,138,247,221,162,41,234,100,171,31,90,6,205,34,147,66,217,228,12,242,68,120,198,88,160,157,176,25,0,183,50,227,192,36,173,230,207,166,181,3,48,35,246,23,194,197,1,189,134,213,43,188,41,95,136,55,86,94,75,9,148,140,109,114,186,126,114,146,227,191,240,165,86,10,6,13,226,78,168,118,148,215,55,191,164,186,105,18,76,158,64,230,222,176,69,238,239,23,198,11,249,252,165,176,149,29,93,88,194,153,182,224,203,147,121,109,43,122,34,79,250,101,213,4,37,41,88,232,249,213,111,26,71,113,63,160,181,194,0,30,86,180,34,2,48,89,220,18,7,202,66,134,47,206,136,137,46,187,63,114,169,124,8,186,242,71,131,51,133,39,140,14,229,65,161,179,27,198,38,236,157,171,29,54,15,21,244,149,37,56,157,65,106,159,201,122,254,36,201,61,165,100,61,124,122,255,159,228,45,20,231,169,127,133,72,82,51,12,5,83,228,234,213,50,156,10,46,185,187,196,120,33,196,230,7,11,210,144,36,206,241,113,26,229,175,117,210,195,188,241,116,64,51,60,200,232,40,231,36,70,136,18,58,248,251,150,165,61,87,214,159,84,161,129,73,225,53,175,124,134,167,95,27,9,237,243,46,110,152,86,97,108,136,248,213,29,127,145,95,230,255,200,136,140,13,210,16,195,178,100,206,29,215,49,144,129,137,223,135,181,101,241,160,243,44,221,57,99,126,165,201,30,150,177,219,230,246,30,36,110,194,11,217,115,204,112,215,58,12,223,53,107,26,226,98,105,128,178,216,147,58,0,161,144,184,60,211,222,153,28,137,66,221,10,222,69,49,207,114,251,20,85,122,66,228,208,131,164,179,159,204,33,198,119,11,85,86,67,172,77,163,103,9,133,39,175,170,38,214,248,75,80,75,0,0,0,0,0,75,78,80,75,66,0,0,0,75,82,80,75,82,0,0,0,75,82,80,75,66,0,0,0,75,66,80,75,66,0,0,0,75,66,80,75,78,0,0,0,75,66,80,80,75,66,0,0,75,82,80,80,75,82,80,0,100,0,0,0,90,0,0,0,80,0,0,0,70,0,0,0,70,0,0,0,80,0,0,0,90,0,0,0,100,0,0,0,90,0,0,0,70,0,0,0,60,0,0,0,50,0,0,0,50,0,0,0,60,0,0,0,70,0,0,0,90,0,0,0,80,0,0,0,60,0,0,0,40,0,0,0,30,0,0,0,30,0,0,0,40,0,0,0,60,0,0,0,80,0,0,0,70,0,0,0,50,0,0,0,30,0,0,0,20,0,0,0,20,0,0,0,30,0,0,0,50,0,0,0,70,0,0,0,70,0,0,0,50,0,0,0,30,0,0,0,20,0,0,0,20,0,0,0,30,0,0,0,50,0,0,0,70,0,0,0,80,0,0,0,60,0,0,0,40,0,0,0,30,0,0,0,30,0,0,0,40,0,0,0,60,0,0,0,80,0,0,0,90,0,0,0,70,0,0,0,60,0,0,0,50,0,0,0,50,0,0,0,60,0,0,0,70,0,0,0,90,0,0,0,100,0,0,0,90,0,0,0,80,0,0,0,70,0,0,0,70,0,0,0,80,0,0,0,90,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,80,0,0,0,60,0,0,0,40,0,0,0,20,0,0,0,10,0,0,0,200,0,0,0,190,0,0,0,180,0,0,0,170,0,0,0,160,0,0,0,150,0,0,0,140,0,0,0,130,0,0,0,190,0,0,0,180,0,0,0,170,0,0,0,160,0,0,0,150,0,0,0,140,0,0,0,130,0,0,0,140,0,0,0,180,0,0,0,170,0,0,0,155,0,0,0,140,0,0,0,140,0,0,0,125,0,0,0,140,0,0,0,150,0,0,0,170,0,0,0,160,0,0,0,140,0,0,0,120,0,0,0,110,0,0,0,140,0,0,0,150,0,0,0,160,0,0,0,160,0,0,0,150,0,0,0,140,0,0,0,110,0,0,0,120,0,0,0,140,0,0,0,160,0,0,0,170,0,0,0,150,0,0,0,140,0,0,0,125,0,0,0,140,0,0,0,140,0,0,0,155,0,0,0,170,0,0,0,180,0,0,0,140,0,0,0,130,0,0,0,140,0,0,0,150,0,0,0,160,0,0,0,170,0,0,0,180,0,0,0,190,0,0,0,130,0,0,0,140,0,0,0,150,0,0,0,160,0,0,0,170,0,0,0,180,0,0,0,190,0,0,0,200,0,0,0,0,0,0,0,5,0,0,0,20,0,0,0,40,0,0,0,60,0,0,0,80,0,0,0,90,0,0,0,100,0,0,0,47,56,47,56,47,56,47,56,47,56,47,56,47,0,0,0,32,119,32,45,32,45,32,48,32,49,48,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,12,0,0,0,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,14,0,0,0,6,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,16,0,0,0,7,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,18,0,0,0,8,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,19,0,0,0,20,0,0,0,9,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,10,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,23,0,0,0,24,0,0,0,11,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,26,0,0,0,12,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,27,0,0,0,28,0,0,0,13,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,29,0,0,0,30,0,0,0,14,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,15,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,34,0,0,0,16,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,36,0,0,0,17,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,38,0,0,0,18,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,39,0,0,0,40,0,0,0,19,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,41,0,0,0,42,0,0,0,20,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,1,0,0,88,1,0,0,233,0,0,0,201,0,0,0,221,0,0,0,17,1,0,0,46,0,0,0,0,0,0,0,62,1,0,0,0,0,0,0,77,111,98,105,108,105,116,121,32,40,77,105,100,103,97,109,101,41,0,0,0,0,0,0,77,111,98,105,108,105,116,121,32,40,69,110,100,103,97,109,101,41,0,0,0,0,0,0,80,97,119,110,32,83,116,114,117,99,116,117,114,101,32,40,77,105,100,103,97,109,101,41,0,0,0,0,0,0,0,0,80,97,119,110,32,83,116,114,117,99,116,117,114,101,32,40,69,110,100,103,97,109,101,41,0,0,0,0,0,0,0,0,80,97,115,115,101,100,32,80,97,119,110,115,32,40,77,105,100,103,97,109,101,41,0,0,80,97,115,115,101,100,32,80,97,119,110,115,32,40,69,110,100,103,97,109,101,41,0,0,83,112,97,99,101,0,0,0,75,105,110,103,32,83,97,102,101,116,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,8,0,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,17,0,0,0,26,0,0,0,26,0,0,0,17,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,26,0,0,0,35,0,0,0,35,0,0,0,26,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,17,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,10,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,21,0,0,0,21,0,0,0,21,0,0,0,21,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,32,32,32,32,69,118,97,108,32,116,101,114,109,32,124,32,32,32,32,87,104,105,116,101,32,32,32,32,124,32,32,32,32,66,108,97,99,107,32,32,32,32,124,32,32,32,32,84,111,116,97,108,32,32,32,32,10,0,0,0,0,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,124,32,32,32,77,71,32,32,32,32,69,71,32,32,124,32,32,32,77,71,32,32,32,32,69,71,32,32,124,32,32,32,77,71,32,32,32,32,69,71,32,32,10,0,0,0,0,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,43,45,45,45,45,45,45,45,45,45,45,45,45,45,43,45,45,45,45,45,45,45,45,45,45,45,45,45,43,45,45,45,45,45,45,45,45,45,45,45,45,45,10,0,0,0,0,0,77,97,116,101,114,105,97,108,0,0,0,0,0,0,0,0,73,109,98,97,108,97,110,99,101,0,0,0,0,0,0,0,80,97,119,110,115,0,0,0,75,110,105,103,104,116,115,0,66,105,115,104,111,112,115,0,82,111,111,107,115,0,0,0,81,117,101,101,110,115,0,0,77,111,98,105,108,105,116,121,0,0,0,0,0,0,0,0,75,105,110,103,32,115,97,102,101,116,121,0,0,0,0,0,84,104,114,101,97,116,115,0,80,97,115,115,101,100,32,112,97,119,110,115,0,0,0,0,84,111,116,97,108,0,0,0,10,84,111,116,97,108,32,69,118,97,108,117,97,116,105,111,110,58,32,0,0,0,0,0,32,40,119,104,105,116,101,32,115,105,100,101,41,10,0,0,64,0,0,0,0,0,0,0,0,0,0,0,43,0,0,0,44,0,0,0,56,0,0,0,248,255,255,255,0,0,0,0,45,0,0,0,46,0,0,0,192,255,255,255,192,255,255,255,0,0,0,0,47,0,0,0,48,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,192,255,255,255,192,255,255,255,0,0,0,0,7,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,49,0,0,0,50,0,0,0,2,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,21,0,0,0,2,0,0,0,2,0,0,0,22,0,0,0,4,0,0,0,19,0,0,0,3,0,0,0,20],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+994872);
+allocate([32,124,32,32,32,45,45,45,32,32,32,45,45,45,32,124,32,32,32,45,45,45,32,32,32,45,45,45,32,124,32,0,32,0,0,0,0,0,0,0,32,10,0,0,0,0,0,0,32,124,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,101,116,111,112,116,105,111,110,32,110,97,109,101,32,79,119,110,66,111,111,107,32,118,97,108,117,101,32,116,114,117,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,60,7,0,0,94,255,255,255,158,251,255,255,73,255,255,255,249,0,0,0,102,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,39,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,0,0,0,15,1,0,0,252,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,105,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,229,255,255,255,254,255,255,255,46,0,0,0,100,0,0,0,115,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,79,255,255,255,25,0,0,0,129,0,0,0,142,0,0,0,119,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,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,57,0,0,0,64,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,0,0,0,40,0,0,0,23,0,0,0,234,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,0,0,0,105,0,0,0,217,255,255,255,141,0,0,0,18,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,0,0,0,52,0,0,0,23,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,53,0,0,0,54,0,0,0,24,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,55,0,0,0,56,0,0,0,25,0,0,0,23,0,0,0,0,0,0,0,0,0,0,0,57,0,0,0,58,0,0,0,26,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,60,0,0,0,27,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,97,110,32,70,101,98,32,77,97,114,32,65,112,114,32,77,97,121,32,74,117,110,32,74,117,108,32,65,117,103,32,83,101,112,32,79,99,116,32,78,111,118,32,68,101,99,0,74,117,110,32,50,48,32,50,48,49,52,0,0,0,0,0,83,116,111,99,107,102,105,115,104,46,106,115,32,0,0,0,0,0,0,0,0,0,0,0,10,105,100,32,97,117,116,104,111,114,32,0,0,0,0,0,32,98,121,32,0,0,0,0,84,111,114,100,32,82,111,109,115,116,97,100,44,32,77,97,114,99,111,32,67,111,115,116,97,108,98,97,44,32,74,111,111,110,97,32,75,105,105,115,107,105,32,38,32,78,97,116,104,97,110,32,82,117,103,103,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,111,116,97,108,32,0,0,32,72,105,116,115,32,0,0,32,104,105,116,32,114,97,116,101,32,40,37,41,32,0,0,32,77,101,97,110,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,105,111,95,108,111,103,46,116,120,116,0,0,0,0,0,0,97,0,0,0,0,0,0,0,104,0,0,0,0,0,0,0,0,0,0,0,61,0,0,0,62,0,0,0,152,255,255,255,152,255,255,255,0,0,0,0,63,0,0,0,64,0,0,0,104,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,66,0,0,0,152,255,255,255,152,255,255,255,0,0,0,0,67,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,69,0,0,0,70,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,28,0,0,0,2,0,0,0,2,0,0,0,29,0,0,0,30,0,0,0,26,0,0,0,3,0,0,0,27,0,0,0,60,60,32,0,0,0,0,0,10,0,0,0,0,0,0,0,62,62,32,0,0,0,0,0,99,112,32,0,0,0,0,0,109,97,116,101,32,0,0,0,32,108,111,119,101,114,98,111,117,110,100,0,0,0,0,0,32,117,112,112,101,114,98,111,117,110,100,0,0,0,0,0,0,0,0,0,0,0,0,0,40,110,111,110,101,41,0,0,40,110,117,108,108,41,0,0,79,45,79,0,0,0,0,0,79,45,79,45,79,0,0,0,43,0,0,0,0,0,0,0,35,0,0,0,0,0,0,0,32,32,0,0,0,0,0,0,75,32,32,0,0,0,0,0,77,32,32,0,0,0,0,0,45,35,0,0,0,0,0,0,32,80,78,66,82,81,75,0,32,112,110,98,114,113,107,0,43,0,13,0,48,0,20,0,48,0,23,0,48,0,23,0,48,0,23,0,48,0,23,0,48,0,20,0,43,0,13,0,45,0,37,0,52,0,54,0,52,0,60,0,52,0,60,0,52,0,60,0,52,0,60,0,52,0,54,0,45,0,37,0,30,0,25,0,35,0,36,0,35,0,40,0,35,0,40,0,35,0,40,0,35,0,40,0,35,0,36,0,30,0,25,0,42,0,30,0,46,0,43,0,46,0,49,0,46,0,49,0,46,0,49,0,46,0,49,0,46,0,43,0,42,0,30,0,28,0,20,0,31,0,29,0,31,0,33,0,31,0,33,0,31,0,33,0,31,0,33,0,31,0,29,0,28,0,20,0,0,0,0,0,13,0,6,0,13,0,6,0,29,0,14,0,68,0,34,0,166,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,20,0,40,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,27,0,0,0,73,0,0,0,92,0,0,0,101,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,128,0,0,0,51,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0,32,0,0,0,96,0,0,0,38,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,0,0,0,25,0,0,0,13],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1005112);allocate([32,80,78,66,82,81,75,32,32,112,110,98,114,113,107,0,0,0,0,0,198,0,0,0,49,3,0,0,68,3,0,0,246,4,0,0,217,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0,78,3,0,0,89,3,0,0,254,4,0,0,254,9],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1009360);allocate([32,119,32,0,0,0,0,0,32,98,32,0,0,0,0,0,32,45,32,0,0,0,0,0,32,0,0,0,0,0,0,0,10,77,111,118,101,58,32,0,46,46,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,32,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,10,0,0,0,0,32,124,32,0,0,0,0,0,32,124,10,32,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,45,45,45,43,10,0,0,10,70,101,110,58,32,0,0,10,75,101,121,58,32,0,0,10,67,104,101,99,107,101,114,115,58,32,0,0,0,0,0,10,76,101,103,97,108,32,109,111,118,101,115,58,32,0,0,10,76,101,103,97,108,32,117,99,105,32,109,111,118,101,115,58,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,0,0,0,0,0,0,0,119,0,0,0,0,0,0,0,66,32,0,0,0,0,0,0,87,32,0,0,0,0,0,0,45,0,0,0,0,0,0,0,54,0,0,0,0,0,0,0,51,0,0,0,0,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,71,0,0,0,72,0,0,0,200,255,255,255,200,255,255,255,0,0,0,0,73,0,0,0,74,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,66,0,0,0,200,255,255,255,200,255,255,255,0,0,0,0,67,0,0,0,68,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,75,0,0,0,76,0,0,0,196,255,255,255,196,255,255,255,0,0,0,0,77,0,0,0,78,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,6,0,0,0,196,255,255,255,196,255,255,255,0,0,0,0,7,0,0,0,8],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1022e3);allocate([67,111,110,116,101,109,112,116,32,70,97,99,116,111,114,0,0,0,0,0,0,0,0,0,105,110,102,111,32,100,101,112,116,104,32,48,32,115,99,111,114,101,32,0,0,0,0,0,79,119,110,66,111,111,107,0,66,111,111,107,32,70,105,108,101,0,0,0,0,0,0,0,66,101,115,116,32,66,111,111,107,32,77,111,118,101,0,0,87,114,105,116,101,32,83,101,97,114,99,104,32,76,111,103,0,0,0,0,0,0,0,0,83,101,97,114,99,104,32,76,111,103,32,70,105,108,101,110,97,109,101,0,0,0,0,0,10,83,101,97,114,99,104,105,110,103,58,32,0,0,0,0,10,105,110,102,105,110,105,116,101,58,32,0,0,0,0,0,32,112,111,110,100,101,114,58,32,0,0,0,0,0,0,0,32,116,105,109,101,58,32,0,32,105,110,99,114,101,109,101,110,116,58,32,0,0,0,0,32,109,111,118,101,115,32,116,111,32,103,111,58,32,0,0,10,0,0,0,0,0,0,0,78,111,100,101,115,58,32,0,10,78,111,100,101,115,47,115,101,99,111,110,100,58,32,0,10,66,101,115,116,32,109,111,118,101,58,32,0,0,0,0,10,80,111,110,100,101,114,32,109,111,118,101,58,32,0,0,105,110,102,111,32,110,111,100,101,115,32,0,0,0,0,0,32,116,105,109,101,32,0,0,98,101,115,116,109,111,118,101,32,0,0,0,0,0,0,0,32,112,111,110,100,101,114,32],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1057856);allocate([79,0,0,0,80,0,0,0,81],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1060456);allocate([105,110,102,111,32,100,101,112,116,104,32,0,0,0,0,0,32,99,117,114,114,109,111,118,101,32,0,0,0,0,0,0,32,99,117,114,114,109,111,118,101,110,117,109,98,101,114,32],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1064576);allocate([82,0,0,0,83,0,0,0,1],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1068744);allocate([77,117,108,116,105,80,86,0,0,0,0,0,0,0,0,0,83,107,105,108,108,32,76,101,118,101,108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,115,101,108,100,101,112,116,104,32,0,0,0,0,0,0,32,115,99,111,114,101,32,0,32,110,111,100,101,115,32,0,32,110,112,115,32,0,0,0,32,109,117,108,116,105,112,118,32,0,0,0,0,0,0,0,32,112,118,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,107,105,108,108,32,76,101,118,101,108,32,77,97,120,105,109,117,109,32,69,114,114,111,114,0,0,0,0,0,0,0,83,107,105,108,108,32,76,101,118,101,108,32,80,114,111,98,97,98,105,108,105,116,121,0,104,0,0,0,0,0,0,0,0,0,0,0,84,0,0,0,85,0,0,0,152,255,255,255,152,255,255,255,0,0,0,0,86,0,0,0,87,0,0,0,104,0,0,0,0,0,0,0,0,0,0,0,61,0,0,0,62,0,0,0,152,255,255,255,152,255,255,255,0,0,0,0,63,0,0,0,64,0,0,0,104,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,66,0,0,0,152,255,255,255,152,255,255,255,0,0,0,0,67,0,0,0,68,0,0,0,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,105,110,32,83,112,108,105,116,32,68,101,112,116,104,0,84,104,114,101,97,100,115,0,0,0,0,0,0,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,0,0,0,0,69,109,101,114,103,101,110,99,121,32,77,111,118,101,32,72,111,114,105,122,111,110,0,0,69,109,101,114,103,101,110,99,121,32,66,97,115,101,32,84,105,109,101,0,0,0,0,0,69,109,101,114,103,101,110,99,121,32,77,111,118,101,32,84,105,109,101,0,0,0,0,0,77,105,110,105,109,117,109,32,84,104,105,110,107,105,110,103,32,84,105,109,101,0,0,0,83,108,111,119,32,77,111,118,101,114,0,0,0,0,0,0,50,0,0,0,0,0,0,0,80,111,110,100,101,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,0,0,0,0,0,77,66,32,102,111,114,32,116,114,97,110,115,112,111,115,105,116,105,111,110,32,116,97,98,108,101,46],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1073800);allocate([113,117,105,116,0,0,0,0,115,116,111,112,0,0,0,0,112,111,110,100,101,114,104,105,116,0,0,0,0,0,0,0,112,101,114,102,116,0,0,0,100,105,118,105,100,101,0,0,32,0,0,0,0,0,0,0,84,104,114,101,97,100,115,0,32,99,117,114,114,101,110,116,32,0,0,0,0,0,0,0,107,101,121,0,0,0,0,0,112,111,115,105,116,105,111,110,32,107,101,121,58,32,0,0,10,109,97,116,101,114,105,97,108,32,107,101,121,58,32,0,10,112,97,119,110,32,107,101,121,58,32,32,32,32,32,0,117,99,105,0,0,0,0,0,105,100,32,110,97,109,101,32,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,10,117,99,105,111,107,0,0,117,99,105,110,101,119,103,97,109,101,0,0,0,0,0,0,103,111,0,0,0,0,0,0,112,111,115,105,116,105,111,110,0,0,0,0,0,0,0,0,115,101,116,111,112,116,105,111,110,0,0,0,0,0,0,0,102,108,105,112,0,0,0,0,98,101,110,99,104,0,0,0,100,0,0,0,0,0,0,0,105,115,114,101,97,100,121,0,114,101,97,100,121,111,107,0,101,118,97,108,0,0,0,0,85,110,107,110,111,119,110,32,99,111,109,109,97,110,100,58,32,0,0,0,0,0,0,0,118,97,108,117,101,0,0,0,78,111,32,115,117,99,104,32,111,112,116,105,111,110,58,32,0,0,0,0,0,0,0,0,115,116,97,114,116,112,111,115,0,0,0,0,0,0,0,0,102,101,110,0,0,0,0,0,109,111,118,101,115,0,0,0,85,67,73,95,67,104,101,115,115,57,54,48,0,0,0,0,115,101,97,114,99,104,109,111,118,101,115,0,0,0,0,0,119,116,105,109,101,0,0,0,98,116,105,109,101,0,0,0,119,105,110,99,0,0,0,0,98,105,110,99,0,0,0,0,109,111,118,101,115,116,111,103,111,0,0,0,0,0,0,0,100,101,112,116,104,0,0,0,110,111,100,101,115,0,0,0,109,111,118,101,116,105,109,101,0,0,0,0,0,0,0,0,109,97,116,101,0,0,0,0,105,110,102,105,110,105,116,101,0,0,0,0,0,0,0,0,112,111,110,100,101,114,0,0,114,110,98,113,107,98,110,114,47,112,112,112,112,112,112,112,112,47,56,47,56,47,56,47,56,47,80,80,80,80,80,80,80,80,47,82,78,66,81,75,66,78,82,32,119,32,75,81,107,113,32,45,32,48,32,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,87,114,105,116,101,32,68,101,98,117,103,32,76,111,103,0,87,114,105,116,101,32,83,101,97,114,99,104,32,76,111,103,0,0,0,0,0,0,0,0,83,101,97,114,99,104,32,76,111,103,32,70,105,108,101,110,97,109,101,0,0,0,0,0,83,101,97,114,99,104,76,111,103,46,116,120,116,0,0,0,66,111,111,107,32,70,105,108,101,0,0,0,0,0,0,0,98,111,111,107,46,98,105,110,0,0,0,0,0,0,0,0,66,101,115,116,32,66,111,111,107,32,77,111,118,101,0,0,67,111,110,116,101,109,112,116,32,70,97,99,116,111,114,0,77,111,98,105,108,105,116,121,32,40,77,105,100,103,97,109,101,41,0,0,0,0,0,0,77,111,98,105,108,105,116,121,32,40,69,110,100,103,97,109,101,41,0,0,0,0,0,0,80,97,119,110,32,83,116,114,117,99,116,117,114,101,32,40,77,105,100,103,97,109,101,41,0,0,0,0,0,0,0,0,80,97,119,110,32,83,116,114,117,99,116,117,114,101,32,40,69,110,100,103,97,109,101,41,0,0,0,0,0,0,0,0,80,97,115,115,101,100,32,80,97,119,110,115,32,40,77,105,100,103,97,109,101,41,0,0,80,97,115,115,101,100,32,80,97,119,110,115,32,40,69,110,100,103,97,109,101,41,0,0,83,112,97,99,101,0,0,0,75,105,110,103,32,83,97,102,101,116,121,0,0,0,0,0,77,105,110,32,83,112,108,105,116,32,68,101,112,116,104,0,84,104,114,101,97,100,115,0,67,108,101,97,114,32,72,97,115,104,0,0,0,0,0,0,80,111,110,100,101,114,0,0,79,119,110,66,111,111,107,0,77,117,108,116,105,80,86,0,83,107,105,108,108,32,76,101,118,101,108,0,0,0,0,0,83,107,105,108,108,32,76,101,118,101,108,32,77,97,120,105,109,117,109,32,69,114,114,111,114,0,0,0,0,0,0,0,83,107,105,108,108,32,76,101,118,101,108,32,80,114,111,98,97,98,105,108,105,116,121,0,69,109,101,114,103,101,110,99,121,32,77,111,118,101,32,72,111,114,105,122,111,110,0,0,69,109,101,114,103,101,110,99,121,32,66,97,115,101,32,84,105,109,101,0,0,0,0,0,69,109,101,114,103,101,110,99,121,32,77,111,118,101,32,84,105,109,101,0,0,0,0,0,77,105,110,105,109,117,109,32,84,104,105,110,107,105,110,103,32,84,105,109,101,0,0,0,83,108,111,119,32,77,111,118,101,114,0,0,0,0,0,0,85,67,73,95,67,104,101,115,115,57,54,48,0,0,0,0,10,111,112,116,105,111,110,32,110,97,109,101,32,0,0,0,32,116,121,112,101,32,0,0,98,117,116,116,111,110,0,0,32,100,101,102,97,117,108,116,32,0,0,0,0,0,0,0,115,112,105,110,0,0,0,0,32,109,105,110,32,0,0,0,32,109,97,120,32,0,0,0,115,116,114,105,110,103,0,0,99,104,101,99,107,0,0,0,116,114,117,101,0,0,0,0,102,97,108,115,101],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1076728);allocate([152,119,16,0,94,0,0,0,95,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,31,0,0,0,32,0,0,0,6,0,0,0,33,0,0,0,34,0,0,0,28,0,0,0,7,0,0,0,29,0,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,0,0,0,0,0,0,0,168,165,16,0,120,119,16,0,24,126,16,0,0,0,0,0,0,0,0,0,0,120,16,0,96,0,0,0,97,0,0,0,4,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,35,0,0,0,32,0,0,0,6,0,0,0,36,0,0,0,37,0,0,0,30,0,0,0,8,0,0,0,31,0,0,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,168,165,16,0,232,119,16,0,24,126,16,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,0,0,0,0,0,0,152,120,16,0,98,0,0,0,99,0,0,0,5,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,38,0,0,0,2,0,0,0,2,0,0,0,39,0,0,0,4,0,0,0,26,0,0,0,9,0,0,0,32,0,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,0,0,0,0,0,0,0,168,165,16,0,120,120,16,0,216,125,16,0,0,0,0,0,0,0,0,0,0,121,16,0,100,0,0,0,101,0,0,0,6,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,2,0,0,0,40,0,0,0,41,0,0,0,33,0,0,0,3,0,0,0,34,0,0,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,168,165,16,0,232,120,16,0,216,125,16,0,0,0,0,0,78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,0,0,0,0,0,0,0,128,165,16,0,16,121,16,0,0,0,0,0,120,121,16,0,102,0,0,0,103,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,32,122,16,0,104,0,0,0,105,0,0,0,43,0,0,0,0,0,0,0,83,116,49,49,108,111,103,105,99,95,101,114,114,111,114,0,168,165,16,0,104,121,16,0,0,0,0,0,0,0,0,0,0,0,0,0,184,121,16,0,102,0,0,0,106,0,0,0,42,0,0,0,0,0,0,0,83,116,49,50,108,101,110,103,116,104,95,101,114,114,111,114,0,0,0,0,0,0,0,0,168,165,16,0,160,121,16,0,120,121,16,0,0,0,0,0,0,0,0,0,248,121,16,0,102,0,0,0,107,0,0,0,42,0,0,0,0,0,0,0,83,116,49,50,111,117,116,95,111,102,95,114,97,110,103,101,0,0,0,0,0,0,0,0,168,165,16,0,224,121,16,0,120,121,16,0,0,0,0,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,0,0,0,0,0,0,168,165,16,0,8,122,16,0,0,0,0,0,0,0,0,0,58,32,0,0,0,0,0,0,0,0,0,0,104,122,16,0,108,0,0,0,109,0,0,0,43,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,0,168,165,16,0,80,122,16,0,32,122,16,0,0,0,0,0,78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,0,0,0,0,0,0,0,128,165,16,0,120,122,16,0,78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,0,168,165,16,0,160,122,16,0,152,122,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,98,97,115,105,99,95,115,116,114,105,110,103,0,0,0,0,0,0,0,0,80,125,16,0,110,0,0,0,111,0,0,0,0,0,0,0,216,125,16,0,112,0,0,0,113,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,21,0,0,0,2,0,0,0,2,0,0,0,39,0,0,0,4,0,0,0,26,0,0,0,3,0,0,0,34,0,0,0,0,0,0,0,24,126,16,0,114,0,0,0,115,0,0,0,7,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,35,0,0,0,32,0,0,0,6,0,0,0,33,0,0,0,34,0,0,0,28,0,0,0,8,0,0,0,31,0,0,0,8,0,0,0,0,0,0,0,80,126,16,0,5,0,0,0,6,0,0,0,248,255,255,255,248,255,255,255,80,126,16,0,7,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,152,126,16,0,116,0,0,0,117,0,0,0,248,255,255,255,248,255,255,255,152,126,16,0,118,0,0,0,119,0,0,0,4,0,0,0,0,0,0,0,224,126,16,0,65,0,0,0,66,0,0,0,252,255,255,255,252,255,255,255,224,126,16,0,67,0,0,0,68,0,0,0,4,0,0,0,0,0,0,0,40,127,16,0,120,0,0,0,121,0,0,0,252,255,255,255,252,255,255,255,40,127,16,0,122,0,0,0,123,0,0,0,105,111,115,116,114,101,97,109,0,0,0,0,0,0,0,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,124,16,0,124,0,0,0,125,0,0,0,43,0,0,0,0,0,0,0,0,0,0,0,24,125,16,0,126,0,0,0,127,0,0,0,105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,0,0,0,0,0,0,168,165,16,0,208,124,16,0,104,122,16,0,0,0,0,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0,0,0,0,0,0,0,128,165,16,0,0,125,16,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,0,0,0,0,0,0,168,165,16,0,32,125,16,0,24,125,16,0,0,0,0,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,0,0,0,0,0,0,168,165,16,0,96,125,16,0,24,125,16,0,0,0,0,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,0,0,0,0,0,0,0,128,165,16,0,160,125,16,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,0,0,0,0,0,0,0,128,165,16,0,224,125,16,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,0,8,166,16,0,32,126,16,0,0,0,0,0,1,0,0,0,80,125,16,0,3,244,255,255,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,0,8,166,16,0,104,126,16,0,0,0,0,0,1,0,0,0,144,125,16,0,3,244,255,255,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,0,8,166,16,0,176,126,16,0,0,0,0,0,1,0,0,0,80,125,16,0,3,244,255,255,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,0,8,166,16,0,248,126,16,0,0,0,0,0,1,0,0,0,144,125,16,0,3,244,255,255,0,0,0,0,136,127,16,0,128,0,0,0,129,0,0,0,44,0,0,0,1,0,0,0,10,0,0,0,11,0,0,0,2,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,0,0,168,165,16,0,104,127,16,0,184,122,16,0,0,0,0,0,0,0,0,0,176,141,16,0,130,0,0,0,131,0,0,0,132,0,0,0,1,0,0,0,5,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,141,16,0,133,0,0,0,134,0,0,0,132,0,0,0,2,0,0,0,6,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,146,16,0,135,0,0,0,136,0,0,0,132,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,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,0,0,0,0,0,0,0,37,112,0,0,0,0,0,0,0,0,0,0,32,147,16,0,137,0,0,0,138,0,0,0,132,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,147,16,0,139,0,0,0,140,0,0,0,132,0,0,0,5,0,0,0,6,0,0,0,23,0,0,0,7,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,148,16,0,141,0,0,0,142,0,0,0,132,0,0,0,9,0,0,0,10,0,0,0,25,0,0,0,11,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,0,0,0,0,37,112,0,0,0,0,0,0,0,0,0,0,160,143,16,0,143,0,0,0,144,0,0,0,132,0,0,0,45,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,160,143,16,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,72,58,37,77,58,37,83,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,0,0,0,0,0,37,72,58,37,77,0,0,0,37,72,58,37,77,58,37,83,0,0,0,0,64,144,16,0,145,0,0,0,146,0,0,0,132,0,0,0,53,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,64,144,16,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,208,144,16,0,147,0,0,0,148,0,0,0,132,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,145,16,0,149,0,0,0,150,0,0,0,132,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,142,16,0,151,0,0,0,152,0,0,0,132,0,0,0,61,0,0,0,62,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,63,0,0,0,12,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,142,16,0,153,0,0,0,154,0,0,0,132,0,0,0,64,0,0,0,65,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,66,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,142,16,0,155,0,0,0,156,0,0,0,132,0,0,0,67,0,0,0,68,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,69,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,142,16,0,157,0,0,0,158,0,0,0,132,0,0,0,70,0,0,0,71,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,72,0,0,0,30,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,149,16,0,159,0,0,0,160,0,0,0,132,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,0,0,0,0,0,0,37,76,102,0,0,0,0,0,109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0,0,0,0,0,152,149,16,0,161,0,0,0,162,0,0,0,132,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,0,0,0,0,0,0,0,0,0,0,40,150,16,0,163,0,0,0,164,0,0,0,132,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,46,48,76,102,0,0,0,0,0,0,0,184,150,16,0,165,0,0,0,166,0,0,0,132,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,145,16,0,167,0,0,0,168,0,0,0,132,0,0,0,14,0,0,0,13,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,145,16,0,169,0,0,0,170,0,0,0,132,0,0,0,15,0,0,0,14,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,118,101,99,116,111,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,0,0,0,0,0,0,0,0,0,0,0,136,141,16,0,171,0,0,0,172,0,0,0,132,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,138,16,0,173,0,0,0,174,0,0,0,132,0,0,0,35,0,0,0,16,0,0,0,36,0,0,0,17,0,0,0,37,0,0,0,1,0,0,0,18,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,139,16,0,175,0,0,0,176,0,0,0,132,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,73,0,0,0,74,0,0,0,5,0,0,0,75,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,141,16,0,177,0,0,0,178,0,0,0,132,0,0,0,76,0,0,0,77,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,0,0,0,0,96,141,16,0,179,0,0,0,180,0,0,0,132,0,0,0,78,0,0,0,79,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,116,114,117,101,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,102,97,108,115,101,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,109,47,37,100,47,37,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,72,58,37,77,58,37,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,73,58,37,77,58,37,83,32,37,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,0,0,0,0,0,0,0,152,137,16,0,181,0,0,0,182,0,0,0,132,0,0,0,0,0,0,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,0,0,168,165,16,0,128,137,16,0,48,121,16,0,0,0,0,0,0,0,0,0,40,138,16,0,181,0,0,0,183,0,0,0,132,0,0,0,19,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,38,0,0,0,20,0,0,0,39,0,0,0,21,0,0,0,40,0,0,0,5,0,0,0,22,0,0,0,6,0,0,0,0,0,0,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0,0,0,0,128,165,16,0,8,138,16,0,8,166,16,0,240,137,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,32,138,16,0,2,0,0,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0,0,0,0,0,0,0,8,166,16,0,72,138,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,32,138,16,0,2,0,0,0,0,0,0,0,248,138,16,0,181,0,0,0,184,0,0,0,132,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,80,0,0,0,81,0,0,0,8,0,0,0,82,0,0,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,0,128,165,16,0,216,138,16,0,8,166,16,0,176,138,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,240,138,16,0,2,0,0,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,0,0,0,0,0,0,8,166,16,0,24,139,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,240,138,16,0,2,0,0,0,0,0,0,0,184,139,16,0,181,0,0,0,185,0,0,0,132,0,0,0,5,0,0,0,6,0,0,0,9,0,0,0,83,0,0,0,84,0,0,0,10,0,0,0,85,0,0,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,0,0,0,0,0,8,166,16,0,144,139,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,240,138,16,0,2,0,0,0,0,0,0,0,48,140,16,0,181,0,0,0,186,0,0,0,132,0,0,0,7,0,0,0,8,0,0,0,11,0,0,0,86,0,0,0,87,0,0,0,12,0,0,0,88,0,0,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,0,0,0,0,0,8,166,16,0,8,140,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,240,138,16,0,2,0,0,0,0,0,0,0,168,140,16,0,181,0,0,0,187,0,0,0,132,0,0,0,7,0,0,0,8,0,0,0,11,0,0,0,86,0,0,0,87,0,0,0,12,0,0,0,88,0,0,0,78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,0,0,0,0,0,0,168,165,16,0,128,140,16,0,48,140,16,0,0,0,0,0,0,0,0,0,16,141,16,0,181,0,0,0,188,0,0,0,132,0,0,0,7,0,0,0,8,0,0,0,11,0,0,0,86,0,0,0,87,0,0,0,12,0,0,0,88,0,0,0,78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,0,0,0,0,0,168,165,16,0,232,140,16,0,48,140,16,0,0,0,0,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0,0,0,0,168,165,16,0,32,141,16,0,152,137,16,0,0,0,0,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0,0,0,0,168,165,16,0,72,141,16,0,152,137,16,0,0,0,0,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,0,0,168,165,16,0,112,141,16,0,152,137,16,0,0,0,0,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0,0,0,0,0,168,165,16,0,152,141,16,0,152,137,16,0,0,0,0,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0,0,0,0,0,168,165,16,0,192,141,16,0,152,137,16,0,0,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0,0,0,0,128,165,16,0,8,142,16,0,8,166,16,0,232,141,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,32,142,16,0,2,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,0,0,0,0,8,166,16,0,72,142,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,32,142,16,0,2,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,0,0,0,0,8,166,16,0,136,142,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,32,142,16,0,2,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,0,0,0,0,8,166,16,0,200,142,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,32,142,16,0,2,0,0,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,0,78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0,0,0,0,0,0,128,165,16,0,80,143,16,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,0,0,0,0,0,0,128,165,16,0,112,143,16,0,8,166,16,0,8,143,16,0,0,0,0,0,3,0,0,0,152,137,16,0,2,0,0,0,104,143,16,0,2,0,0,0,152,143,16,0,0,8,0,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,0,0,0,0,0,0,128,165,16,0,16,144,16,0,8,166,16,0,200,143,16,0,0,0,0,0,3,0,0,0,152,137,16,0,2,0,0,0,104,143,16,0,2,0,0,0,56,144,16,0,0,8,0,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,0,78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0,0,0,0,128,165,16,0,176,144,16,0,8,166,16,0,104,144,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,200,144,16,0,0,8,0,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,0,8,166,16,0,240,144,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,200,144,16,0,0,8,0,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0,0,0,0,78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,128,165,16,0,112,145,16,0,8,166,16,0,88,145,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,136,145,16,0,2,0,0,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0,0,0,0,8,166,16,0,176,145,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,136,145,16,0,2,0,0,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,0,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,0,0,0,0,0,0,0,128,165,16,0,72,146,16,0,8,166,16,0,48,146,16,0,0,0,0,0,1,0,0,0,104,146,16,0,0,0,0,0,8,166,16,0,232,145,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,112,146,16,0,0,0,0,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,0,0,8,166,16,0,240,146,16,0,0,0,0,0,1,0,0,0,104,146,16,0,0,0,0,0,8,166,16,0,168,146,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,8,147,16,0,0,0,0,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,0,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,0,0,0,0,0,0,0,128,165,16,0,160,147,16,0,8,166,16,0,136,147,16,0,0,0,0,0,1,0,0,0,192,147,16,0,0,0,0,0,8,166,16,0,64,147,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,200,147,16,0,0,0,0,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,0,0,8,166,16,0,72,148,16,0,0,0,0,0,1,0,0,0,192,147,16,0,0,0,0,0,8,166,16,0,0,148,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,96,148,16,0,0,0,0,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,0,0,0,0,0,0,0,128,165,16,0,224,148,16,0,8,166,16,0,152,148,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,0,149,16,0,0,0,0,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,0,0,0,0,0,0,0,128,165,16,0,112,149,16,0,8,166,16,0,40,149,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,144,149,16,0,0,0,0,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,0,0,0,0,0,0,0,128,165,16,0,0,150,16,0,8,166,16,0,184,149,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,32,150,16,0,0,0,0,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,0,0,0,0,0,0,0,128,165,16,0,144,150,16,0,8,166,16,0,72,150,16,0,0,0,0,0,2,0,0,0,152,137,16,0,2,0,0,0,176,150,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,77,0,0,0,0,0,0,80,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1079092);
+allocate([74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,0,0,0,0,0,0,0,77,97,114,99,104,0,0,0,65,112,114,105,108,0,0,0,77,97,121,0,0,0,0,0,74,117,110,101,0,0,0,0,74,117,108,121,0,0,0,0,65,117,103,117,115,116,0,0,83,101,112,116,101,109,98,101,114,0,0,0,0,0,0,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,0,0,0,0,0,0,0,68,101,99,101,109,98,101,114,0,0,0,0,0,0,0,0,74,97,110,0,0,0,0,0,70,101,98,0,0,0,0,0,77,97,114,0,0,0,0,0,65,112,114,0,0,0,0,0,74,117,110,0,0,0,0,0,74,117,108,0,0,0,0,0,65,117,103,0,0,0,0,0,83,101,112,0,0,0,0,0,79,99,116,0,0,0,0,0,78,111,118,0,0,0,0,0,68,101,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,117,110,100,97,121,0,0,77,111,110,100,97,121,0,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,0,0,0,0,0,0,84,104,117,114,115,100,97,121,0,0,0,0,0,0,0,0,70,114,105,100,97,121,0,0,83,97,116,117,114,100,97,121,0,0,0,0,0,0,0,0,83,117,110,0,0,0,0,0,77,111,110,0,0,0,0,0,84,117,101,0,0,0,0,0,87,101,100,0,0,0,0,0,84,104,117,0,0,0,0,0,70,114,105,0,0,0,0,0,83,97,116,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,164,16,0,189,0,0,0,190,0,0,0,89,0,0,0,0,0,0,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,0,0,83,116,57,116,121,112,101,95,105,110,102,111,0,0,0,0,128,165,16,0,208,164,16,0,83,116,56,98,97,100,95,99,97,115,116,0,0,0,0,0,168,165,16,0,232,164,16,0,0,0,0,0,0,0,0,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,0,0,0,0,0,0,0,168,165,16,0,8,165,16,0,224,164,16,0,0,0,0,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,0,0,0,0,0,0,168,165,16,0,64,165,16,0,48,165,16,0,0,0,0,0,0,0,0,0,104,165,16,0,191,0,0,0,192,0,0,0,193,0,0,0,194,0,0,0,23,0,0,0,15,0,0,0,1,0,0,0,7,0,0,0,0,0,0,0,240,165,16,0,191,0,0,0,195,0,0,0,193,0,0,0,194,0,0,0,23,0,0,0,16,0,0,0,2,0,0,0,8,0,0,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,0,0,0,168,165,16,0,200,165,16,0,104,165,16,0,0,0,0,0,0,0,0,0,80,166,16,0,191,0,0,0,196,0,0,0,193,0,0,0,194,0,0,0,23,0,0,0,17,0,0,0,3,0,0,0,9,0,0,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,0,0,168,165,16,0,40,166,16,0,104,165,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,168,16,0,197,0,0,0,198,0,0,0,90,0,0,0,0,0,0,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,0,83,116,57,98,97,100,95,97,108,108,111,99,0,0,0,0,168,165,16,0,136,168,16,0,0,0,0,0,0,0,0,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,0,0,0,0,0,0,0,1,2,4,7,3,6,5,0,0,0,0,0,0,0,0,105,110,102,105,110,105,116,121,0,0,0,0,0,0,0,0,110,97,110,0,0,0,0,0,95,112,137,0,255,9,47,15,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,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,45,43,32,32,32,48,88,48,120,0,0,0,0,0,0,0,40,110,117,108,108,41,0,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,0,0,0,0,0,105,110,102,0,0,0,0,0,73,78,70,0,0,0,0,0,110,97,110,0,0,0,0,0,78,65,78,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+1089432);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]}function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}Module["_i64Subtract"]=_i64Subtract;var ___errno_state=0;function ___setErrNo(value){HEAP32[___errno_state>>2]=value;return value}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(name){switch(name){case 30:return 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 79: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 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return 1}___setErrNo(ERRNO_CODES.EINVAL);return-1}var _SItoD=true;function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}function ___cxa_is_number_type(type){var isNumber=false;try{if(type==__ZTIi)isNumber=true}catch(e){}try{if(type==__ZTIj)isNumber=true}catch(e){}try{if(type==__ZTIl)isNumber=true}catch(e){}try{if(type==__ZTIm)isNumber=true}catch(e){}try{if(type==__ZTIx)isNumber=true}catch(e){}try{if(type==__ZTIy)isNumber=true}catch(e){}try{if(type==__ZTIf)isNumber=true}catch(e){}try{if(type==__ZTId)isNumber=true}catch(e){}try{if(type==__ZTIe)isNumber=true}catch(e){}try{if(type==__ZTIc)isNumber=true}catch(e){}try{if(type==__ZTIa)isNumber=true}catch(e){}try{if(type==__ZTIh)isNumber=true}catch(e){}try{if(type==__ZTIs)isNumber=true}catch(e){}try{if(type==__ZTIt)isNumber=true}catch(e){}return isNumber}function ___cxa_does_inherit(definiteType,possibilityType,possibility){if(possibility==0)return false;if(possibilityType==0||possibilityType==definiteType)return true;var possibility_type_info;if(___cxa_is_number_type(possibilityType)){possibility_type_info=possibilityType}else{var possibility_type_infoAddr=HEAP32[possibilityType>>2]-8;possibility_type_info=HEAP32[possibility_type_infoAddr>>2]}switch(possibility_type_info){case 0:var definite_type_infoAddr=HEAP32[definiteType>>2]-8;var definite_type_info=HEAP32[definite_type_infoAddr>>2];if(definite_type_info==0){var defPointerBaseAddr=definiteType+8;var defPointerBaseType=HEAP32[defPointerBaseAddr>>2];var possPointerBaseAddr=possibilityType+8;var possPointerBaseType=HEAP32[possPointerBaseAddr>>2];return ___cxa_does_inherit(defPointerBaseType,possPointerBaseType,possibility)}else return false;case 1:return false;case 2:var parentTypeAddr=possibilityType+8;var parentType=HEAP32[parentTypeAddr>>2];return ___cxa_does_inherit(definiteType,parentType,possibility);default:return false}}var ___cxa_last_thrown_exception=0;function ___resumeException(ptr){if(!___cxa_last_thrown_exception){___cxa_last_thrown_exception=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}var ___cxa_exception_header_size=8;function ___cxa_find_matching_catch(thrown,throwntype){if(thrown==-1)thrown=___cxa_last_thrown_exception;header=thrown-___cxa_exception_header_size;if(throwntype==-1)throwntype=HEAP32[header>>2];var typeArray=Array.prototype.slice.call(arguments,2);if(throwntype!=0&&!___cxa_is_number_type(throwntype)){var throwntypeInfoAddr=HEAP32[throwntype>>2]-8;var throwntypeInfo=HEAP32[throwntypeInfoAddr>>2];if(throwntypeInfo==0)thrown=HEAP32[thrown>>2]}for(var i=0;i<typeArray.length;i++){if(___cxa_does_inherit(typeArray[i],throwntype,thrown))return(asm["setTempRet0"](typeArray[i]),thrown)|0}return(asm["setTempRet0"](throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){if(!___cxa_throw.initialized){try{HEAP32[__ZTVN10__cxxabiv119__pointer_type_infoE>>2]=0}catch(e){}try{HEAP32[__ZTVN10__cxxabiv117__class_type_infoE>>2]=1}catch(e){}try{HEAP32[__ZTVN10__cxxabiv120__si_class_type_infoE>>2]=2}catch(e){}___cxa_throw.initialized=true}var header=ptr-___cxa_exception_header_size;HEAP32[header>>2]=type;HEAP32[header+4>>2]=destructor;___cxa_last_thrown_exception=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}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"};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){continue}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("/")}};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){if(stream.tty.output.length){stream.tty.ops.put_char(stream.tty,10)}},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){result=process["stdin"]["read"]();if(!result){if(process["stdin"]["_readableState"]&&process["stdin"]["_readableState"]["ended"]){return null}return undefined}}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"](tty.output.join(""));tty.output=[]}else{tty.output.push(TTY.utf8.processCChar(val))}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){Module["printErr"](tty.output.join(""));tty.output=[]}else{tty.output.push(TTY.utf8.processCChar(val))}}}};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}},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&&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));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)}stream.ungotten=[];stream.position=position;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}}}};var IDBFS={dbs:{},indexedDB:function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},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)}fileStore.createIndex("timestamp","timestamp",{unique:false})};req.onsuccess=function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)};req.onerror=function(){callback(this.error)}},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(){callback(this.error)};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.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(){callback(this.error)}},storeRemoteEntry:function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=function(){callback(null)};req.onerror=function(){callback(this.error)}},removeRemoteEntry:function(store,path,callback){var req=store.delete(path);req.onsuccess=function(){callback(null)};req.onerror=function(){callback(this.error)}},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(){done(this.error)};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){if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{return flags}},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{return fs.readlinkSync(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){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)}stream.position=position;return position}}};var _stdin=allocate(1,"i32*",ALLOC_STATIC);var _stdout=allocate(1,"i32*",ALLOC_STATIC);var _stderr=allocate(1,"i32*",ALLOC_STATIC);function _fflush(stream){}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:{},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||{};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)}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 accmode=flag&2097155;var perms=["r","w","rw"][accmode];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){return FS.nodePermissions(dir,"x")},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},getStreamFromPtr:function(ptr){return FS.streams[ptr-1]},getPtrForStream:function(stream){return stream?stream.fd+1:0},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);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){var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;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.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.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return link.node_ops.readlink(link)},stat:function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;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){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){}}if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0)}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}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){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)}return stream.stream_ops.llseek(stream,offset,whence)},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)},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="";var utf8=new Runtime.UTF8Processor;for(var i=0;i<length;i++){ret+=utf8.processCChar(buf[i])}}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 utf8=new Runtime.UTF8Processor;var buf=new Uint8Array(utf8.processJSString(data));FS.write(stream,buf,0,buf.length,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")},createDefaultDevices:function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:function(){return 0},write:function(){return 0}});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));FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},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");HEAP32[_stdin>>2]=FS.getPtrForStream(stdin);assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");HEAP32[_stdout>>2]=FS.getPtrForStream(stdout);assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");
+var stderr=FS.open("/dev/stderr","w");HEAP32[_stderr>>2]=FS.getPtrForStream(stderr);assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")},ensureErrnoError:function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}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()},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;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=Math.floor(idx/this.chunkSize);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){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;function processData(byteArray){function finish(byteArray){if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency("cp "+fullname)}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("cp "+fullname)});handled=true}});if(!handled)finish(byteArray)}addRunDependency("cp "+fullname);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}};function _mkport(){throw"TODO"}var SOCKFS={mount:function(mount){return FS.createNode(null,"/",16384|511,0)},createSocket:function(family,type,protocol){var streaming=type==1;if(protocol){assert(streaming==(protocol==6))}var sock={family:family,type:type,protocol:protocol,server:null,peers:{},pending:[],recv_queue:[],sock_ops:SOCKFS.websocket_sock_ops};var name=SOCKFS.nextname();var node=FS.createNode(SOCKFS.root,name,49152,0);node.sock=sock;var stream=FS.createStream({path:name,node:node,flags:FS.modeStringToFlags("r+"),seekable:false,stream_ops:SOCKFS.stream_ops});sock.stream=stream;return sock},getSocket:function(fd){var stream=FS.getStream(fd);if(!stream||!FS.isSocket(stream.node.mode)){return null}return stream.node.sock},stream_ops:{poll:function(stream){var sock=stream.node.sock;return sock.sock_ops.poll(sock)},ioctl:function(stream,request,varargs){var sock=stream.node.sock;return sock.sock_ops.ioctl(sock,request,varargs)},read:function(stream,buffer,offset,length,position){var sock=stream.node.sock;var msg=sock.sock_ops.recvmsg(sock,length);if(!msg){return 0}buffer.set(msg.buffer,offset);return msg.buffer.length},write:function(stream,buffer,offset,length,position){var sock=stream.node.sock;return sock.sock_ops.sendmsg(sock,buffer,offset,length)},close:function(stream){var sock=stream.node.sock;sock.sock_ops.close(sock)}},nextname:function(){if(!SOCKFS.nextname.current){SOCKFS.nextname.current=0}return"socket["+SOCKFS.nextname.current++ +"]"},websocket_sock_ops:{createPeer:function(sock,addr,port){var ws;if(typeof addr==="object"){ws=addr;addr=null;port=null}if(ws){if(ws._socket){addr=ws._socket.remoteAddress;port=ws._socket.remotePort}else{var result=/ws[s]?:\/\/([^:]+):(\d+)/.exec(ws.url);if(!result){throw new Error("WebSocket URL must be in the format ws(s)://address:port")}addr=result[1];port=parseInt(result[2],10)}}else{try{var runtimeConfig=Module["websocket"]&&"object"===typeof Module["websocket"];var url="ws:#".replace("#","//");if(runtimeConfig){if("string"===typeof Module["websocket"]["url"]){url=Module["websocket"]["url"]}}if(url==="ws://"||url==="wss://"){url=url+addr+":"+port}var subProtocols="binary";if(runtimeConfig){if("string"===typeof Module["websocket"]["subprotocol"]){subProtocols=Module["websocket"]["subprotocol"]}}subProtocols=subProtocols.replace(/^ +| +$/g,"").split(/ *, */);var opts=ENVIRONMENT_IS_NODE?{protocol:subProtocols.toString()}:subProtocols;var WebSocket=ENVIRONMENT_IS_NODE?require("ws"):window["WebSocket"];ws=new WebSocket(url,opts);ws.binaryType="arraybuffer"}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EHOSTUNREACH)}}var peer={addr:addr,port:port,socket:ws,dgram_send_queue:[]};SOCKFS.websocket_sock_ops.addPeer(sock,peer);SOCKFS.websocket_sock_ops.handlePeerEvents(sock,peer);if(sock.type===2&&typeof sock.sport!=="undefined"){peer.dgram_send_queue.push(new Uint8Array([255,255,255,255,"p".charCodeAt(0),"o".charCodeAt(0),"r".charCodeAt(0),"t".charCodeAt(0),(sock.sport&65280)>>8,sock.sport&255]))}return peer},getPeer:function(sock,addr,port){return sock.peers[addr+":"+port]},addPeer:function(sock,peer){sock.peers[peer.addr+":"+peer.port]=peer},removePeer:function(sock,peer){delete sock.peers[peer.addr+":"+peer.port]},handlePeerEvents:function(sock,peer){var first=true;var handleOpen=function(){try{var queued=peer.dgram_send_queue.shift();while(queued){peer.socket.send(queued);queued=peer.dgram_send_queue.shift()}}catch(e){peer.socket.close()}};function handleMessage(data){assert(typeof data!=="string"&&data.byteLength!==undefined);data=new Uint8Array(data);var wasfirst=first;first=false;if(wasfirst&&data.length===10&&data[0]===255&&data[1]===255&&data[2]===255&&data[3]===255&&data[4]==="p".charCodeAt(0)&&data[5]==="o".charCodeAt(0)&&data[6]==="r".charCodeAt(0)&&data[7]==="t".charCodeAt(0)){var newport=data[8]<<8|data[9];SOCKFS.websocket_sock_ops.removePeer(sock,peer);peer.port=newport;SOCKFS.websocket_sock_ops.addPeer(sock,peer);return}sock.recv_queue.push({addr:peer.addr,port:peer.port,data:data})}if(ENVIRONMENT_IS_NODE){peer.socket.on("open",handleOpen);peer.socket.on("message",function(data,flags){if(!flags.binary){return}handleMessage(new Uint8Array(data).buffer)});peer.socket.on("error",function(){})}else{peer.socket.onopen=handleOpen;peer.socket.onmessage=function peer_socket_onmessage(event){handleMessage(event.data)}}},poll:function(sock){if(sock.type===1&&sock.server){return sock.pending.length?64|1:0}var mask=0;var dest=sock.type===1?SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport):null;if(sock.recv_queue.length||!dest||dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){mask|=64|1}if(!dest||dest&&dest.socket.readyState===dest.socket.OPEN){mask|=4}if(dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){mask|=16}return mask},ioctl:function(sock,request,arg){switch(request){case 21531:var bytes=0;if(sock.recv_queue.length){bytes=sock.recv_queue[0].data.length}HEAP32[arg>>2]=bytes;return 0;default:return ERRNO_CODES.EINVAL}},close:function(sock){if(sock.server){try{sock.server.close()}catch(e){}sock.server=null}var peers=Object.keys(sock.peers);for(var i=0;i<peers.length;i++){var peer=sock.peers[peers[i]];try{peer.socket.close()}catch(e){}SOCKFS.websocket_sock_ops.removePeer(sock,peer)}return 0},bind:function(sock,addr,port){if(typeof sock.saddr!=="undefined"||typeof sock.sport!=="undefined"){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}sock.saddr=addr;sock.sport=port||_mkport();if(sock.type===2){if(sock.server){sock.server.close();sock.server=null}try{sock.sock_ops.listen(sock,0)}catch(e){if(!(e instanceof FS.ErrnoError))throw e;if(e.errno!==ERRNO_CODES.EOPNOTSUPP)throw e}}},connect:function(sock,addr,port){if(sock.server){throw new FS.ErrnoError(ERRNO_CODS.EOPNOTSUPP)}if(typeof sock.daddr!=="undefined"&&typeof sock.dport!=="undefined"){var dest=SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport);if(dest){if(dest.socket.readyState===dest.socket.CONNECTING){throw new FS.ErrnoError(ERRNO_CODES.EALREADY)}else{throw new FS.ErrnoError(ERRNO_CODES.EISCONN)}}}var peer=SOCKFS.websocket_sock_ops.createPeer(sock,addr,port);sock.daddr=peer.addr;sock.dport=peer.port;throw new FS.ErrnoError(ERRNO_CODES.EINPROGRESS)},listen:function(sock,backlog){if(!ENVIRONMENT_IS_NODE){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}if(sock.server){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var WebSocketServer=require("ws").Server;var host=sock.saddr;sock.server=new WebSocketServer({host:host,port:sock.sport});sock.server.on("connection",function(ws){if(sock.type===1){var newsock=SOCKFS.createSocket(sock.family,sock.type,sock.protocol);var peer=SOCKFS.websocket_sock_ops.createPeer(newsock,ws);newsock.daddr=peer.addr;newsock.dport=peer.port;sock.pending.push(newsock)}else{SOCKFS.websocket_sock_ops.createPeer(sock,ws)}});sock.server.on("closed",function(){sock.server=null});sock.server.on("error",function(){})},accept:function(listensock){if(!listensock.server){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var newsock=listensock.pending.shift();newsock.stream.flags=listensock.stream.flags;return newsock},getname:function(sock,peer){var addr,port;if(peer){if(sock.daddr===undefined||sock.dport===undefined){throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN)}addr=sock.daddr;port=sock.dport}else{addr=sock.saddr||0;port=sock.sport||0}return{addr:addr,port:port}},sendmsg:function(sock,buffer,offset,length,addr,port){if(sock.type===2){if(addr===undefined||port===undefined){addr=sock.daddr;port=sock.dport}if(addr===undefined||port===undefined){throw new FS.ErrnoError(ERRNO_CODES.EDESTADDRREQ)}}else{addr=sock.daddr;port=sock.dport}var dest=SOCKFS.websocket_sock_ops.getPeer(sock,addr,port);if(sock.type===1){if(!dest||dest.socket.readyState===dest.socket.CLOSING||dest.socket.readyState===dest.socket.CLOSED){throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN)}else if(dest.socket.readyState===dest.socket.CONNECTING){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}}var data;if(buffer instanceof Array||buffer instanceof ArrayBuffer){data=buffer.slice(offset,offset+length)}else{data=buffer.buffer.slice(buffer.byteOffset+offset,buffer.byteOffset+offset+length)}if(sock.type===2){if(!dest||dest.socket.readyState!==dest.socket.OPEN){if(!dest||dest.socket.readyState===dest.socket.CLOSING||dest.socket.readyState===dest.socket.CLOSED){dest=SOCKFS.websocket_sock_ops.createPeer(sock,addr,port)}dest.dgram_send_queue.push(data);return length}}try{dest.socket.send(data);return length}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}},recvmsg:function(sock,length){if(sock.type===1&&sock.server){throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN)}var queued=sock.recv_queue.shift();if(!queued){if(sock.type===1){var dest=SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport);if(!dest){throw new FS.ErrnoError(ERRNO_CODES.ENOTCONN)}else if(dest.socket.readyState===dest.socket.CLOSING||dest.socket.readyState===dest.socket.CLOSED){return null}else{throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}}else{throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}}var queuedLength=queued.data.byteLength||queued.data.length;var queuedOffset=queued.data.byteOffset||0;var queuedBuffer=queued.data.buffer||queued.data;var bytesRead=Math.min(length,queuedLength);var res={buffer:new Uint8Array(queuedBuffer,queuedOffset,bytesRead),addr:queued.addr,port:queued.port};if(sock.type===1&&bytesRead<queuedLength){var bytesRemaining=queuedLength-bytesRead;queued.data=new Uint8Array(queuedBuffer,queuedOffset+bytesRead,bytesRemaining);sock.recv_queue.unshift(queued)}return res}}};function _recv(fd,buf,len,flags){var sock=SOCKFS.getSocket(fd);if(!sock){___setErrNo(ERRNO_CODES.EBADF);return-1}return _read(fd,buf,len)}function _pread(fildes,buf,nbyte,offset){var stream=FS.getStream(fildes);if(!stream){___setErrNo(ERRNO_CODES.EBADF);return-1}try{var slab=HEAP8;return FS.read(stream,slab,buf,nbyte,offset)}catch(e){FS.handleFSError(e);return-1}}function _read(fildes,buf,nbyte){var stream=FS.getStream(fildes);if(!stream){___setErrNo(ERRNO_CODES.EBADF);return-1}try{var slab=HEAP8;return FS.read(stream,slab,buf,nbyte)}catch(e){FS.handleFSError(e);return-1}}function _fread(ptr,size,nitems,stream){var bytesToRead=nitems*size;if(bytesToRead==0){return 0}var bytesRead=0;var streamObj=FS.getStreamFromPtr(stream);if(!streamObj){___setErrNo(ERRNO_CODES.EBADF);return 0}while(streamObj.ungotten.length&&bytesToRead>0){HEAP8[ptr++>>0]=streamObj.ungotten.pop();bytesToRead--;bytesRead++}var err=_read(streamObj.fd,ptr,bytesToRead);if(err==-1){if(streamObj)streamObj.error=true;return 0}bytesRead+=err;if(bytesRead<bytesToRead)streamObj.eof=true;return Math.floor(bytesRead/size)}function _ftell(stream){stream=FS.getStreamFromPtr(stream);if(!stream){___setErrNo(ERRNO_CODES.EBADF);return-1}if(FS.isChrdev(stream.node.mode)){___setErrNo(ERRNO_CODES.ESPIPE);return-1}else{return stream.position}}function _ftello(){return _ftell.apply(null,arguments)}function _strerror_r(errnum,strerrbuf,buflen){if(errnum in ERRNO_MESSAGES){if(ERRNO_MESSAGES[errnum].length>buflen-1){return ___setErrNo(ERRNO_CODES.ERANGE)}else{var msg=ERRNO_MESSAGES[errnum];writeAsciiToMemory(msg,strerrbuf);return 0}}else{return ___setErrNo(ERRNO_CODES.EINVAL)}}function _malloc(bytes){var ptr=Runtime.dynamicAlloc(bytes+8);return ptr+8&4294967288}Module["_malloc"]=_malloc;function _strerror(errnum){if(!_strerror.buffer)_strerror.buffer=_malloc(256);_strerror_r(errnum,_strerror.buffer,256);return _strerror.buffer}function _pthread_mutex_lock(){}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2]};var pattern=Pointer_stringify(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(Math.floor(year/100),2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){return leadingNulls(date.tm_hour<13?date.tm_hour:date.tm_hour-12,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>0&&date.tm_hour<13){return"AM"}else{return"PM"}},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"   "},"%u":function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()||7},"%U":function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"},"%V":function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()<date.tm_year+1900){daysDifference=date.tm_yday+32-firstWeekStartThisYear.getDate()}else{daysDifference=date.tm_yday+1-firstWeekStartThisYear.getDate()}return leadingNulls(Math.ceil(daysDifference/7),2)},"%w":function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()},"%W":function(date){var janFirst=new Date(date.tm_year,0,1);var firstMonday=janFirst.getDay()===1?janFirst:__addDays(janFirst,janFirst.getDay()===0?1:7-janFirst.getDay()+1);var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstMonday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstMondayUntilEndJanuary=31-firstMonday.getDate();var days=firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstMonday,janFirst)===0?"01":"00"},"%y":function(date){return(date.tm_year+1900).toString().substring(2)},"%Y":function(date){return date.tm_year+1900},"%z":function(date){return""},"%Z":function(date){return""},"%%":function(){return"%"}};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}function _abort(){Module["abort"]()}function _open(path,oflag,varargs){var mode=HEAP32[varargs>>2];path=Pointer_stringify(path);try{var stream=FS.open(path,oflag,mode);return stream.fd}catch(e){FS.handleFSError(e);return-1}}function _fopen(filename,mode){var flags;mode=Pointer_stringify(mode);if(mode[0]=="r"){if(mode.indexOf("+")!=-1){flags=2}else{flags=0}}else if(mode[0]=="w"){if(mode.indexOf("+")!=-1){flags=2}else{flags=1}flags|=64;flags|=512}else if(mode[0]=="a"){if(mode.indexOf("+")!=-1){flags=2}else{flags=1}flags|=64;flags|=1024}else{___setErrNo(ERRNO_CODES.EINVAL);return 0}var fd=_open(filename,flags,allocate([511,0,0,0],"i32",ALLOC_STACK));return fd===-1?0:FS.getPtrForStream(FS.getStream(fd))}Module["_strlen"]=_strlen;function _pthread_cond_wait(){return 0}Module["_i64Add"]=_i64Add;function _fabs(){return Math_abs.apply(null,arguments)}function _send(fd,buf,len,flags){var sock=SOCKFS.getSocket(fd);if(!sock){___setErrNo(ERRNO_CODES.EBADF);return-1}return _write(fd,buf,len)
+}function _pwrite(fildes,buf,nbyte,offset){var stream=FS.getStream(fildes);if(!stream){___setErrNo(ERRNO_CODES.EBADF);return-1}try{var slab=HEAP8;return FS.write(stream,slab,buf,nbyte,offset)}catch(e){FS.handleFSError(e);return-1}}function _write(fildes,buf,nbyte){var stream=FS.getStream(fildes);if(!stream){___setErrNo(ERRNO_CODES.EBADF);return-1}try{var slab=HEAP8;return FS.write(stream,slab,buf,nbyte)}catch(e){FS.handleFSError(e);return-1}}function _fileno(stream){stream=FS.getStreamFromPtr(stream);if(!stream)return-1;return stream.fd}function _fwrite(ptr,size,nitems,stream){var bytesToWrite=nitems*size;if(bytesToWrite==0)return 0;var fd=_fileno(stream);var bytesWritten=_write(fd,ptr,bytesToWrite);if(bytesWritten==-1){var streamObj=FS.getStreamFromPtr(stream);if(streamObj)streamObj.error=true;return 0}else{return Math.floor(bytesWritten/size)}}function _fgetc(stream){var streamObj=FS.getStreamFromPtr(stream);if(!streamObj)return-1;if(streamObj.eof||streamObj.error)return-1;var ret=_fread(_fgetc.ret,1,1,stream);if(ret==0){return-1}else if(ret==-1){streamObj.error=true;return-1}else{return HEAPU8[_fgetc.ret>>0]}}function _getc(){return _fgetc.apply(null,arguments)}function _catopen(name,oflag){return-1}function _close(fildes){var stream=FS.getStream(fildes);if(!stream){___setErrNo(ERRNO_CODES.EBADF);return-1}try{FS.close(stream);return 0}catch(e){FS.handleFSError(e);return-1}}function _fsync(fildes){var stream=FS.getStream(fildes);if(stream){return 0}else{___setErrNo(ERRNO_CODES.EBADF);return-1}}function _fclose(stream){var fd=_fileno(stream);_fsync(fd);return _close(fd)}var Browser={mainLoop:{scheduler:null,method:"",shouldPause:false,paused:false,queue:[],pause:function(){Browser.mainLoop.shouldPause=true},resume:function(){if(Browser.mainLoop.paused){Browser.mainLoop.paused=false;Browser.mainLoop.scheduler()}Browser.mainLoop.shouldPause=false},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"]("")}}}},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:function(){if(!Module["preloadPlugins"])Module["preloadPlugins"]=[];if(Browser.initted||ENVIRONMENT_IS_WORKER)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"];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);function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}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){var ctx;var errorInfo="?";function onContextCreationError(event){errorInfo=event.statusMessage||errorInfo}try{if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}canvas.addEventListener("webglcontextcreationerror",onContextCreationError,false);try{["experimental-webgl","webgl"].some(function(webglId){return ctx=canvas.getContext(webglId,contextAttributes)})}finally{canvas.removeEventListener("webglcontextcreationerror",onContextCreationError,false)}}else{ctx=canvas.getContext("2d")}if(!ctx)throw":("}catch(e){Module.print("Could not create canvas: "+[errorInfo,e]);return null}if(useWebGL){canvas.style.backgroundColor="black"}if(setInModule){GLctx=Module.ctx=ctx;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){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;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);canvasContainer.requestFullScreen()},requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){setTimeout(func,1e3/60)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||window["setTimeout"]}window.requestAnimationFrame(func)}},safeCallback:function(func){return function(){if(!ABORT)return func.apply(null,arguments)}},safeRequestAnimationFrame:function(func){return Browser.requestAnimationFrame(function(){if(!ABORT)func()})},safeSetTimeout:function(func,timeout){Module["noExitRuntime"]=true;return setTimeout(function(){if(!ABORT)func()},timeout)},safeSetInterval:function(func,timeout){Module["noExitRuntime"]=true;return setInterval(function(){if(!ABORT)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 Math.max(-1,Math.min(1,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"){Browser.lastTouches[touch.identifier]=Browser.touches[touch.identifier];Browser.touches[touch.identifier]={x:adjustedX,y:adjustedY}}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")}}}}};function _time(ptr){var ret=Math.floor(Date.now()/1e3);if(ptr){HEAP32[ptr>>2]=ret}return ret}function ___ctype_b_loc(){var me=___ctype_b_loc;if(!me.ret){var values=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,8195,8194,8194,8194,8194,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,24577,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,55304,55304,55304,55304,55304,55304,55304,55304,55304,55304,49156,49156,49156,49156,49156,49156,49156,54536,54536,54536,54536,54536,54536,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,49156,49156,49156,49156,49156,49156,54792,54792,54792,54792,54792,54792,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,49156,49156,49156,49156,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];var i16size=2;var arr=_malloc(values.length*i16size);for(var i=0;i<values.length;i++){HEAP16[arr+i*i16size>>1]=values[i]}me.ret=allocate([arr+128*i16size],"i16*",ALLOC_NORMAL)}return me.ret}function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}function _free(){}Module["_free"]=_free;function _freelocale(locale){_free(locale)}function ___cxa_allocate_exception(size){var ptr=_malloc(size+___cxa_exception_header_size);return ptr+___cxa_exception_header_size}function _fmod(x,y){return x%y}function _fmodl(){return _fmod.apply(null,arguments)}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_memset"]=_memset;function _catgets(catd,set_id,msg_id,s){return s}var _BDtoILow=true;var _BDtoIHigh=true;function _pthread_cond_broadcast(){return 0}function ___ctype_toupper_loc(){var me=___ctype_toupper_loc;if(!me.ret){var values=[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,-1,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,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,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];var i32size=4;var arr=_malloc(values.length*i32size);for(var i=0;i<values.length;i++){HEAP32[arr+i*i32size>>2]=values[i]}me.ret=allocate([arr+128*i32size],"i32*",ALLOC_NORMAL)}return me.ret}function ___cxa_guard_acquire(variable){if(!HEAP8[variable>>0]){HEAP8[variable>>0]=1;return 1}return 0}function __ZSt9terminatev(){_exit(-1234)}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=Math.floor(now/1e3);HEAP32[ptr+4>>2]=Math.floor((now-1e3*Math.floor(now/1e3))*1e3);return 0}function ___cxa_guard_release(){}function ___ctype_tolower_loc(){var me=___ctype_tolower_loc;if(!me.ret){var values=[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,-1,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,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,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];var i32size=4;var arr=_malloc(values.length*i32size);for(var i=0;i<values.length;i++){HEAP32[arr+i*i32size>>2]=values[i]}me.ret=allocate([arr+128*i32size],"i32*",ALLOC_NORMAL)}return me.ret}function _pthread_mutex_unlock(){}Module["_bitshift64Shl"]=_bitshift64Shl;function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function _log(){return Math_log.apply(null,arguments)}function _lseek(fildes,offset,whence){var stream=FS.getStream(fildes);if(!stream){___setErrNo(ERRNO_CODES.EBADF);return-1}try{return FS.llseek(stream,offset,whence)}catch(e){FS.handleFSError(e);return-1}}function _fseek(stream,offset,whence){var fd=_fileno(stream);var ret=_lseek(fd,offset,whence);if(ret==-1){return-1}stream=FS.getStreamFromPtr(stream);stream.eof=false;return 0}function _fseeko(){return _fseek.apply(null,arguments)}function _llvm_pow_f64(){return Math_pow.apply(null,arguments)}function __ZNSt9exceptionD2Ev(){}Module["_memmove"]=_memmove;function _newlocale(mask,locale,base){return _malloc(4)}var ___cxa_caught_exceptions=[];function ___cxa_begin_catch(ptr){__ZSt18uncaught_exceptionv.uncaught_exception--;___cxa_caught_exceptions.push(___cxa_last_thrown_exception);return ptr}function ___errno_location(){return ___errno_state}var _BItoD=true;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function _catclose(catd){return 0}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)self.alloc(bytes);return ret}function _exp(){return Math_exp.apply(null,arguments)}function __reallyNegative(x){return x<0||x===0&&1/x===-Infinity}function _copysign(a,b){return __reallyNegative(a)===__reallyNegative(b)?a:-a}function _copysignl(){return _copysign.apply(null,arguments)}function _ungetc(c,stream){stream=FS.getStreamFromPtr(stream);if(!stream){return-1}if(c===-1){return c}c=unSign(c&255);stream.ungotten.push(c);stream.eof=false;return c}function _uselocale(locale){return 0}function _emscripten_async_call(func,arg,millis){Module["noExitRuntime"]=true;function wrapper(){Runtime.getFuncWrapper(func,"vi")(arg)}if(millis>=0){Browser.safeSetTimeout(wrapper,millis)}else{Browser.safeRequestAnimationFrame(wrapper)}}var __ZTISt9exception=allocate([allocate([1,0,0,0,0,0,0],"i8",ALLOC_STATIC)+8,0],"i32",ALLOC_STATIC);var ___dso_handle=allocate(1,"i32*",ALLOC_STATIC);___errno_state=Runtime.staticAlloc(4);HEAP32[___errno_state>>2]=0;FS.staticInit();__ATINIT__.unshift({func:function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}});__ATMAIN__.push({func:function(){FS.ignorePermissions=false}});__ATEXIT__.push({func: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;__ATINIT__.unshift({func:function(){TTY.init()}});__ATEXIT__.push({func:function(){TTY.shutdown()}});TTY.utf8=new Runtime.UTF8Processor;if(ENVIRONMENT_IS_NODE){var fs=require("fs");NODEFS.staticInit()}__ATINIT__.push({func:function(){SOCKFS.root=FS.mount(SOCKFS,{},null)}});_fgetc.ret=allocate([0],"i8",ALLOC_STATIC);Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas){Browser.requestFullScreen(lockPointer,resizeCanvas)};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()};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+5242880;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var ctlz_i8=allocate([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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",ALLOC_DYNAMIC);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);var Math_min=Math.min;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_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_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_viiiiiid(index,a1,a2,a3,a4,a5,a6,a7){try{Module["dynCall_viiiiiid"](index,a1,a2,a3,a4,a5,a6,a7)}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_viiiiid(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiid"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){try{return Module["dynCall_iiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8)}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_viiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){try{Module["dynCall_viiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}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)}}function asmPrintInt(x,y){Module.print("int "+x+","+y)}function asmPrintFloat(x,y){Module.print("float "+x+","+y)}var asm=function(global,env,buffer){"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT|0;var m=env.cttz_i8|0;var n=env.ctlz_i8|0;var o=env.__ZTISt9exception|0;var p=env.___dso_handle|0;var q=env._stderr|0;var r=env._stdin|0;var s=env._stdout|0;var t=0;var u=0;var v=0;var w=0;var x=+env.NaN,y=+env.Infinity;var z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;var I=0;var J=0;var K=0;var L=0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=global.Math.floor;var T=global.Math.abs;var U=global.Math.sqrt;var V=global.Math.pow;
+var W=global.Math.cos;var X=global.Math.sin;var Y=global.Math.tan;var Z=global.Math.acos;var _=global.Math.asin;var $=global.Math.atan;var aa=global.Math.atan2;var ba=global.Math.exp;var ca=global.Math.log;var da=global.Math.ceil;var ea=global.Math.imul;var fa=env.abort;var ga=env.assert;var ha=env.asmPrintInt;var ia=env.asmPrintFloat;var ja=env.min;var ka=env.invoke_iiii;var la=env.invoke_viiiiiii;var ma=env.invoke_viiiii;var na=env.invoke_vi;var oa=env.invoke_vii;var pa=env.invoke_viiiiiiiii;var qa=env.invoke_ii;var ra=env.invoke_viiiiiid;var sa=env.invoke_viii;var ta=env.invoke_viiiiid;var ua=env.invoke_v;var va=env.invoke_iiiiiiiii;var wa=env.invoke_iiiii;var xa=env.invoke_viiiiiiii;var ya=env.invoke_viiiiii;var za=env.invoke_iii;var Aa=env.invoke_iiiiii;var Ba=env.invoke_viiii;var Ca=env._fabs;var Da=env._pthread_cond_wait;var Ea=env._exp;var Fa=env._llvm_pow_f64;var Ga=env._send;var Ha=env._fread;var Ia=env.___ctype_b_loc;var Ja=env.__ZSt9terminatev;var Ka=env._fmod;var La=env.___cxa_pure_virtual;var Ma=env.___cxa_guard_acquire;var Na=env._lseek;var Oa=env._open;var Pa=env.___cxa_is_number_type;var Qa=env._ungetc;var Ra=env._catopen;var Sa=env.___cxa_atexit;var Ta=env.___cxa_allocate_exception;var Ua=env.__ZSt18uncaught_exceptionv;var Va=env.___ctype_toupper_loc;var Wa=env._fflush;var Xa=env.___cxa_guard_release;var Ya=env.__addDays;var Za=env._pwrite;var _a=env._strerror_r;var $a=env._strftime_l;var ab=env.___setErrNo;var bb=env._sbrk;var cb=env._uselocale;var db=env._catgets;var eb=env._newlocale;var fb=env.___cxa_begin_catch;var gb=env._emscripten_memcpy_big;var hb=env._fileno;var ib=env.___resumeException;var jb=env.___cxa_find_matching_catch;var kb=env._sysconf;var lb=env.__reallyNegative;var mb=env._close;var nb=env._strftime;var ob=env.__arraySum;var pb=env._fseeko;var qb=env._read;var rb=env.___ctype_tolower_loc;var sb=env._fseek;var tb=env._pthread_mutex_unlock;var ub=env._time;var vb=env._pread;var wb=env._ftell;var xb=env._mkport;var yb=env._fclose;var zb=env._log;var Ab=env._getc;var Bb=env._write;var Cb=env.__isLeapYear;var Db=env._fsync;var Eb=env.___errno_location;var Fb=env._recv;var Gb=env.__ZNSt9exceptionD2Ev;var Hb=env._fgetc;var Ib=env._copysign;var Jb=env.___cxa_does_inherit;var Kb=env._freelocale;var Lb=env._pthread_cond_broadcast;var Mb=env._copysignl;var Nb=env.__exit;var Ob=env._abort;var Pb=env._catclose;var Qb=env._fwrite;var Rb=env.___cxa_throw;var Sb=env._pthread_mutex_lock;var Tb=env._strerror;var Ub=env._ftello;var Vb=env._atexit;var Wb=env._fopen;var Xb=env._exit;var Yb=env._gettimeofday;var Zb=env._emscripten_async_call;var _b=env._fmodl;var $b=0;function un(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;s=i;i=i+304|0;u=s+8|0;C=s;y=s+272|0;B=s+268|0;z=s+40|0;x=s+36|0;d=s+32|0;q=s+28|0;v=s+24|0;t=s+20|0;E=C;c[E>>2]=37;c[E+4>>2]=0;E=C+1|0;A=f+4|0;F=c[A>>2]|0;if((F&2048|0)!=0){a[E>>0]=43;E=C+2|0}if((F&1024|0)!=0){a[E>>0]=35;E=E+1|0}D=F&260;F=F>>>14;do{if((D|0)==260){if((F&1|0)==0){a[E>>0]=97;D=0;break}else{a[E>>0]=65;D=0;break}}else{a[E>>0]=46;G=E+2|0;a[E+1>>0]=42;if((D|0)==256){if((F&1|0)==0){a[G>>0]=101;D=1;break}else{a[G>>0]=69;D=1;break}}else if((D|0)==4){if((F&1|0)==0){a[G>>0]=102;D=1;break}else{a[G>>0]=70;D=1;break}}else{if((F&1|0)==0){a[G>>0]=103;D=1;break}else{a[G>>0]=71;D=1;break}}}}while(0);c[B>>2]=y;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}E=c[270684]|0;if(D){c[u>>2]=c[f+8>>2];G=u+4|0;h[k>>3]=j;c[G>>2]=c[k>>2];c[G+4>>2]=c[k+4>>2];E=an(y,30,E,C,u)|0}else{h[k>>3]=j;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];E=an(y,30,E,C,u)|0}if((E|0)>29){E=(a[1082744]|0)==0;if(D){if(E?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}G=c[270684]|0;c[u>>2]=c[f+8>>2];F=u+4|0;h[k>>3]=j;c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];C=gn(B,G,C,u)|0}else{if(E?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}G=c[270684]|0;c[u>>2]=c[f+8>>2];F=u+4|0;h[k>>3]=j;c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];C=gn(B,G,C,u)|0}B=c[B>>2]|0;if((B|0)==0){bt()}else{p=B;m=B;w=C}}else{p=c[B>>2]|0;m=0;w=E}B=p+w|0;A=c[A>>2]&176;do{if((A|0)==16){A=a[p>>0]|0;if(A<<24>>24==43|A<<24>>24==45){A=p+1|0;break}if((w|0)>1&A<<24>>24==48?(G=a[p+1>>0]|0,G<<24>>24==88|G<<24>>24==120):0){A=p+2|0}else{r=44}}else if((A|0)==32){A=B}else{r=44}}while(0);if((r|0)==44){A=p}if((p|0)!=(y|0)){r=Ps(w<<3)|0;if((r|0)==0){bt()}else{l=p;n=r;o=r}}else{l=y;n=0;o=z}Bk(q,f);vn(l,A,B,o,x,d,q);Dj(c[q>>2]|0)|0;c[t>>2]=c[e>>2];F=c[x>>2]|0;G=c[d>>2]|0;c[u+0>>2]=c[t+0>>2];qn(v,u,o,F,G,f,g);G=c[v>>2]|0;c[e>>2]=G;c[b>>2]=G;if((n|0)!=0){Qs(n)}if((m|0)==0){i=s;return}Qs(m);i=s;return}function vn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;k=i;i=i+32|0;o=k;l=k+12|0;t=c[j>>2]|0;if(!((c[270710]|0)==-1)){c[o>>2]=1082840;c[o+4>>2]=221;c[o+8>>2]=0;Yj(1082840,o,222)}m=(c[1082844>>2]|0)+-1|0;q=c[t+8>>2]|0;if(!((c[t+12>>2]|0)-q>>2>>>0>m>>>0)){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}m=c[q+(m<<2)>>2]|0;if((m|0)==0){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}j=c[j>>2]|0;if(!((c[270750]|0)==-1)){c[o>>2]=1083e3;c[o+4>>2]=221;c[o+8>>2]=0;Yj(1083e3,o,222)}q=(c[1083004>>2]|0)+-1|0;o=c[j+8>>2]|0;if(!((c[j+12>>2]|0)-o>>2>>>0>q>>>0)){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}j=c[o+(q<<2)>>2]|0;if((j|0)==0){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}ec[c[(c[j>>2]|0)+20>>2]&63](l,j);c[h>>2]=f;o=a[b>>0]|0;if(o<<24>>24==43|o<<24>>24==45){y=pc[c[(c[m>>2]|0)+44>>2]&63](m,o)|0;t=c[h>>2]|0;c[h>>2]=t+4;c[t>>2]=y;t=b+1|0}else{t=b}o=e;a:do{if(((o-t|0)>1?(a[t>>0]|0)==48:0)?(p=t+1|0,y=a[p>>0]|0,y<<24>>24==88|y<<24>>24==120):0){y=pc[c[(c[m>>2]|0)+44>>2]&63](m,48)|0;x=c[h>>2]|0;c[h>>2]=x+4;c[x>>2]=y;t=t+2|0;x=pc[c[(c[m>>2]|0)+44>>2]&63](m,a[p>>0]|0)|0;y=c[h>>2]|0;c[h>>2]=y+4;c[y>>2]=x;if(t>>>0<e>>>0){q=t;while(1){p=a[q>>0]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}u=q+1|0;if((as(p<<24>>24,c[270684]|0)|0)==0){p=t;break a}if(u>>>0<e>>>0){q=u}else{p=t;q=u;break}}}else{p=t;q=t}}else{s=14}}while(0);b:do{if((s|0)==14){if(t>>>0<e>>>0){q=t;while(1){p=a[q>>0]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}s=q+1|0;if(($r(p<<24>>24,c[270684]|0)|0)==0){p=t;break b}if(s>>>0<e>>>0){q=s}else{p=t;q=s;break}}}else{p=t;q=t}}}while(0);s=a[l>>0]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[l+4>>2]|0}if((s|0)!=0){if((p|0)!=(q|0)?(r=q+-1|0,r>>>0>p>>>0):0){s=p;do{y=a[s>>0]|0;a[s>>0]=a[r>>0]|0;a[r>>0]=y;s=s+1|0;r=r+-1|0}while(s>>>0<r>>>0)}v=gc[c[(c[j>>2]|0)+16>>2]&127](j)|0;if(p>>>0<q>>>0){t=l+1|0;u=l+4|0;s=l+8|0;w=0;x=0;r=p;while(1){y=(a[l>>0]&1)==0;if((a[(y?t:c[s>>2]|0)+x>>0]|0)>0?(w|0)==(a[(y?t:c[s>>2]|0)+x>>0]|0):0){w=c[h>>2]|0;c[h>>2]=w+4;c[w>>2]=v;w=a[l>>0]|0;if((w&1)==0){y=(w&255)>>>1}else{y=c[u>>2]|0}w=0;x=(x>>>0<(y+-1|0)>>>0&1)+x|0}A=pc[c[(c[m>>2]|0)+44>>2]&63](m,a[r>>0]|0)|0;z=c[h>>2]|0;y=z+4|0;c[h>>2]=y;c[z>>2]=A;r=r+1|0;if(!(r>>>0<q>>>0)){break}else{w=w+1|0}}}else{y=c[h>>2]|0}p=f+(p-b<<2)|0;if((p|0)!=(y|0)?(n=y+-4|0,n>>>0>p>>>0):0){do{A=c[p>>2]|0;c[p>>2]=c[n>>2];c[n>>2]=A;p=p+4|0;n=n+-4|0}while(p>>>0<n>>>0)}}else{mc[c[(c[m>>2]|0)+48>>2]&7](m,p,q,c[h>>2]|0)|0;y=(c[h>>2]|0)+(q-p<<2)|0;c[h>>2]=y}c:do{if(q>>>0<e>>>0){while(1){n=a[q>>0]|0;if(n<<24>>24==46){break}z=pc[c[(c[m>>2]|0)+44>>2]&63](m,n)|0;A=c[h>>2]|0;y=A+4|0;c[h>>2]=y;c[A>>2]=z;q=q+1|0;if(!(q>>>0<e>>>0)){break c}}z=gc[c[(c[j>>2]|0)+12>>2]&127](j)|0;A=c[h>>2]|0;y=A+4|0;c[h>>2]=y;c[A>>2]=z;q=q+1|0}}while(0);mc[c[(c[m>>2]|0)+48>>2]&7](m,q,e,y)|0;m=(c[h>>2]|0)+(o-q<<2)|0;c[h>>2]=m;if((d|0)==(e|0)){A=m;c[g>>2]=A;ck(l);i=k;return}A=f+(d-b<<2)|0;c[g>>2]=A;ck(l);i=k;return}function wn(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;s=i;i=i+304|0;u=s+8|0;C=s;y=s+272|0;B=s+268|0;z=s+40|0;q=s+36|0;r=s+32|0;d=s+28|0;v=s+24|0;t=s+20|0;F=C;c[F>>2]=37;c[F+4>>2]=0;F=C+1|0;A=f+4|0;D=c[A>>2]|0;if((D&2048|0)!=0){a[F>>0]=43;F=C+2|0}if((D&1024|0)!=0){a[F>>0]=35;F=F+1|0}E=D&260;D=D>>>14;do{if((E|0)==260){a[F>>0]=76;E=F+1|0;if((D&1|0)==0){a[E>>0]=97;D=0;break}else{a[E>>0]=65;D=0;break}}else{a[F>>0]=46;a[F+1>>0]=42;a[F+2>>0]=76;F=F+3|0;if((E|0)==256){if((D&1|0)==0){a[F>>0]=101;D=1;break}else{a[F>>0]=69;D=1;break}}else if((E|0)==4){if((D&1|0)==0){a[F>>0]=102;D=1;break}else{a[F>>0]=70;D=1;break}}else{if((D&1|0)==0){a[F>>0]=103;D=1;break}else{a[F>>0]=71;D=1;break}}}}while(0);c[B>>2]=y;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}E=c[270684]|0;if(D){c[u>>2]=c[f+8>>2];F=u+4|0;h[k>>3]=j;c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];E=an(y,30,E,C,u)|0}else{h[k>>3]=j;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];E=an(y,30,E,C,u)|0}if((E|0)>29){E=(a[1082744]|0)==0;if(D){if(E?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}F=c[270684]|0;c[u>>2]=c[f+8>>2];E=u+4|0;h[k>>3]=j;c[E>>2]=c[k>>2];c[E+4>>2]=c[k+4>>2];C=gn(B,F,C,u)|0}else{if(E?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}F=c[270684]|0;h[k>>3]=j;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];C=gn(B,F,C,u)|0}B=c[B>>2]|0;if((B|0)==0){bt()}else{m=B;l=B;w=C}}else{m=c[B>>2]|0;l=0;w=E}B=m+w|0;A=c[A>>2]&176;do{if((A|0)==32){A=B}else if((A|0)==16){A=a[m>>0]|0;if(A<<24>>24==43|A<<24>>24==45){A=m+1|0;break}if((w|0)>1&A<<24>>24==48?(F=a[m+1>>0]|0,F<<24>>24==88|F<<24>>24==120):0){A=m+2|0}else{x=44}}else{x=44}}while(0);if((x|0)==44){A=m}if((m|0)!=(y|0)){w=Ps(w<<3)|0;if((w|0)==0){bt()}else{o=m;n=w;p=w}}else{o=y;n=0;p=z}Bk(d,f);vn(o,A,B,p,q,r,d);Dj(c[d>>2]|0)|0;c[t>>2]=c[e>>2];E=c[q>>2]|0;F=c[r>>2]|0;c[u+0>>2]=c[t+0>>2];qn(v,u,p,E,F,f,g);F=c[v>>2]|0;c[e>>2]=F;c[b>>2]=F;if((n|0)!=0){Qs(n)}if((l|0)==0){i=s;return}Qs(l);i=s;return}function xn(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+208|0;l=j;o=j+188|0;m=j+168|0;k=j+20|0;n=j+16|0;d=j+12|0;a[o+0>>0]=a[1081648>>0]|0;a[o+1>>0]=a[1081649>>0]|0;a[o+2>>0]=a[1081650>>0]|0;a[o+3>>0]=a[1081651>>0]|0;a[o+4>>0]=a[1081652>>0]|0;a[o+5>>0]=a[1081653>>0]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}q=c[270684]|0;c[l>>2]=h;o=an(m,20,q,o,l)|0;h=m+o|0;q=c[f+4>>2]&176;do{if((q|0)==32){q=h}else if((q|0)==16){q=a[m>>0]|0;if(q<<24>>24==43|q<<24>>24==45){q=m+1|0;break}if((o|0)>1&q<<24>>24==48?(s=a[m+1>>0]|0,s<<24>>24==88|s<<24>>24==120):0){q=m+2|0}else{p=10}}else{p=10}}while(0);if((p|0)==10){q=m}Bk(n,f);r=c[n>>2]|0;if(!((c[270710]|0)==-1)){c[l>>2]=1082840;c[l+4>>2]=221;c[l+8>>2]=0;Yj(1082840,l,222)}p=(c[1082844>>2]|0)+-1|0;s=c[r+8>>2]|0;if(!((c[r+12>>2]|0)-s>>2>>>0>p>>>0)){s=Ta(4)|0;us(s);Rb(s|0,1090808,189)}p=c[s+(p<<2)>>2]|0;if((p|0)==0){s=Ta(4)|0;us(s);Rb(s|0,1090808,189)}Dj(c[n>>2]|0)|0;mc[c[(c[p>>2]|0)+48>>2]&7](p,m,h,k)|0;n=k+(o<<2)|0;if((q|0)==(h|0)){s=n;r=c[e>>2]|0;c[d>>2]=r;c[l+0>>2]=c[d+0>>2];qn(b,l,k,s,n,f,g);i=j;return}s=k+(q-m<<2)|0;r=c[e>>2]|0;c[d>>2]=r;c[l+0>>2]=c[d+0>>2];qn(b,l,k,s,n,f,g);i=j;return}function yn(e,f,g,h,j,k,l,m,n){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|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;p=i;i=i+32|0;t=p;q=p+28|0;x=p+24|0;r=p+20|0;s=p+16|0;u=p+12|0;Bk(x,j);w=c[x>>2]|0;if(!((c[270712]|0)==-1)){c[t>>2]=1082848;c[t+4>>2]=221;c[t+8>>2]=0;Yj(1082848,t,222)}y=(c[1082852>>2]|0)+-1|0;z=c[w+8>>2]|0;if(!((c[w+12>>2]|0)-z>>2>>>0>y>>>0)){D=Ta(4)|0;us(D);Rb(D|0,1090808,189)}w=c[z+(y<<2)>>2]|0;if((w|0)==0){D=Ta(4)|0;us(D);Rb(D|0,1090808,189)}Dj(c[x>>2]|0)|0;c[k>>2]=0;a:do{if((m|0)!=(n|0)){x=w+8|0;y=0;b:while(1){while(1){if((y|0)!=0){o=65;break a}y=c[g>>2]|0;if((y|0)!=0){if((c[y+12>>2]|0)==(c[y+16>>2]|0)?(gc[c[(c[y>>2]|0)+36>>2]&127](y)|0)==-1:0){c[g>>2]=0;y=0}}else{y=0}A=(y|0)==0;z=c[h>>2]|0;do{if((z|0)!=0){if((c[z+12>>2]|0)==(c[z+16>>2]|0)?(gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1:0){c[h>>2]=0;o=19;break}if(!A){o=20;break b}}else{o=19}}while(0);if((o|0)==19){o=0;if(A){o=20;break b}else{z=0}}if((ac[c[(c[w>>2]|0)+36>>2]&31](w,a[m>>0]|0,0)|0)<<24>>24==37){o=22;break}A=a[m>>0]|0;if(A<<24>>24>-1?(v=c[x>>2]|0,!((b[v+(A<<24>>24<<1)>>1]&8192)==0)):0){o=33;break}z=y+12|0;B=c[z>>2]|0;A=y+16|0;if((B|0)==(c[A>>2]|0)){B=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{B=d[B>>0]|0}D=pc[c[(c[w>>2]|0)+12>>2]&63](w,B&255)|0;if(D<<24>>24==(pc[c[(c[w>>2]|0)+12>>2]&63](w,a[m>>0]|0)|0)<<24>>24){o=60;break}c[k>>2]=4;y=4}c:do{if((o|0)==22){o=0;B=m+1|0;if((B|0)==(n|0)){o=23;break b}A=ac[c[(c[w>>2]|0)+36>>2]&31](w,a[B>>0]|0,0)|0;if(A<<24>>24==48|A<<24>>24==69){B=m+2|0;if((B|0)==(n|0)){o=26;break b}m=B;B=ac[c[(c[w>>2]|0)+36>>2]&31](w,a[B>>0]|0,0)|0}else{m=B;B=A;A=0}D=c[(c[f>>2]|0)+36>>2]|0;c[s>>2]=y;c[u>>2]=z;c[q+0>>2]=c[s+0>>2];c[t+0>>2]=c[u+0>>2];fc[D&3](r,f,q,t,j,k,l,B,A);c[g>>2]=c[r>>2];m=m+1|0}else if((o|0)==33){while(1){o=0;m=m+1|0;if((m|0)==(n|0)){m=n;break}A=a[m>>0]|0;if(!(A<<24>>24>-1)){break}if((b[v+(A<<24>>24<<1)>>1]&8192)==0){break}else{o=33}}B=z;A=z;while(1){if((y|0)!=0){if((c[y+12>>2]|0)==(c[y+16>>2]|0)?(gc[c[(c[y>>2]|0)+36>>2]&127](y)|0)==-1:0){c[g>>2]=0;y=0}}else{y=0}C=(y|0)==0;do{if((A|0)!=0){if((c[A+12>>2]|0)!=(c[A+16>>2]|0)){if(C){z=B;break}else{break c}}if(!((gc[c[(c[A>>2]|0)+36>>2]&127](A)|0)==-1)){if(C^(B|0)==0){z=B;A=B;break}else{break c}}else{c[h>>2]=0;z=0;o=46;break}}else{z=B;o=46}}while(0);if((o|0)==46){o=0;if(C){break c}else{A=0}}C=y+12|0;D=c[C>>2]|0;B=y+16|0;if((D|0)==(c[B>>2]|0)){D=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{D=d[D>>0]|0}if(!((D&255)<<24>>24>-1)){break c}if((b[(c[x>>2]|0)+(D<<24>>24<<1)>>1]&8192)==0){break c}D=c[C>>2]|0;if((D|0)==(c[B>>2]|0)){gc[c[(c[y>>2]|0)+40>>2]&127](y)|0;B=z;continue}else{c[C>>2]=D+1;B=z;continue}}}else if((o|0)==60){o=0;B=c[z>>2]|0;if((B|0)==(c[A>>2]|0)){gc[c[(c[y>>2]|0)+40>>2]&127](y)|0}else{c[z>>2]=B+1}m=m+1|0}}while(0);if((m|0)==(n|0)){o=65;break a}y=c[k>>2]|0}if((o|0)==20){c[k>>2]=4;break}else if((o|0)==23){c[k>>2]=4;break}else if((o|0)==26){c[k>>2]=4;break}}else{o=65}}while(0);if((o|0)==65){y=c[g>>2]|0}if((y|0)!=0){if((c[y+12>>2]|0)==(c[y+16>>2]|0)?(gc[c[(c[y>>2]|0)+36>>2]&127](y)|0)==-1:0){c[g>>2]=0;y=0}}else{y=0}j=(y|0)==0;g=c[h>>2]|0;do{if((g|0)!=0){if((c[g+12>>2]|0)==(c[g+16>>2]|0)?(gc[c[(c[g>>2]|0)+36>>2]&127](g)|0)==-1:0){c[h>>2]=0;o=75;break}if(j){c[e>>2]=y;i=p;return}}else{o=75}}while(0);if((o|0)==75?!j:0){c[e>>2]=y;i=p;return}c[k>>2]=c[k>>2]|2;c[e>>2]=y;i=p;return}function zn(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function An(a){a=a|0;return}function Bn(a){a=a|0;return 2}function Cn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;j=i;i=i+16|0;k=j+12|0;l=j+8|0;n=j+4|0;m=j;c[n>>2]=c[d>>2];c[m>>2]=c[e>>2];c[l+0>>2]=c[n+0>>2];c[k+0>>2]=c[m+0>>2];yn(a,b,l,k,f,g,h,1081752,1081760|0);i=j;return}function Dn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;p=d+8|0;p=gc[c[(c[p>>2]|0)+20>>2]&127](p)|0;c[n>>2]=c[e>>2];c[m>>2]=c[f>>2];e=a[p>>0]|0;if((e&1)==0){f=p+1|0;e=(e&255)>>>1;p=p+1|0}else{q=c[p+8>>2]|0;f=q;e=c[p+4>>2]|0;p=q}q=f+e|0;c[l+0>>2]=c[n+0>>2];c[k+0>>2]=c[m+0>>2];yn(b,d,l,k,g,h,j,p,q);i=o;return}function En(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j;m=j+16|0;l=j+12|0;Bk(l,f);f=c[l>>2]|0;if(!((c[270712]|0)==-1)){c[k>>2]=1082848;c[k+4>>2]=221;c[k+8>>2]=0;Yj(1082848,k,222)}o=(c[1082852>>2]|0)+-1|0;n=c[f+8>>2]|0;if(!((c[f+12>>2]|0)-n>>2>>>0>o>>>0)){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}f=c[n+(o<<2)>>2]|0;if((f|0)==0){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}Dj(c[l>>2]|0)|0;n=c[e>>2]|0;o=b+8|0;o=gc[c[c[o>>2]>>2]&127](o)|0;c[m>>2]=n;n=o+168|0;c[k+0>>2]=c[m+0>>2];k=(_l(d,k,o,n,f,g,0)|0)-o|0;if((k|0)>=168){o=c[d>>2]|0;c[a>>2]=o;i=j;return}c[h+24>>2]=((k|0)/12|0|0)%7|0;o=c[d>>2]|0;c[a>>2]=o;i=j;return}function Fn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j;m=j+16|0;l=j+12|0;Bk(l,f);f=c[l>>2]|0;if(!((c[270712]|0)==-1)){c[k>>2]=1082848;c[k+4>>2]=221;c[k+8>>2]=0;Yj(1082848,k,222)}o=(c[1082852>>2]|0)+-1|0;n=c[f+8>>2]|0;if(!((c[f+12>>2]|0)-n>>2>>>0>o>>>0)){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}f=c[n+(o<<2)>>2]|0;if((f|0)==0){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}Dj(c[l>>2]|0)|0;n=c[e>>2]|0;o=b+8|0;o=gc[c[(c[o>>2]|0)+4>>2]&127](o)|0;c[m>>2]=n;n=o+288|0;c[k+0>>2]=c[m+0>>2];k=(_l(d,k,o,n,f,g,0)|0)-o|0;if((k|0)>=288){o=c[d>>2]|0;c[a>>2]=o;i=j;return}c[h+16>>2]=((k|0)/12|0|0)%12|0;o=c[d>>2]|0;c[a>>2]=o;i=j;return}function Gn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;b=i;i=i+32|0;j=b;k=b+16|0;l=b+12|0;Bk(l,f);f=c[l>>2]|0;if(!((c[270712]|0)==-1)){c[j>>2]=1082848;c[j+4>>2]=221;c[j+8>>2]=0;Yj(1082848,j,222)}n=(c[1082852>>2]|0)+-1|0;m=c[f+8>>2]|0;if(!((c[f+12>>2]|0)-m>>2>>>0>n>>>0)){n=Ta(4)|0;us(n);Rb(n|0,1090808,189)}f=c[m+(n<<2)>>2]|0;if((f|0)==0){n=Ta(4)|0;us(n);Rb(n|0,1090808,189)}Dj(c[l>>2]|0)|0;h=h+20|0;c[k>>2]=c[e>>2];c[j+0>>2]=c[k+0>>2];e=Kn(d,j,g,f,4)|0;if((c[g>>2]&4|0)!=0){n=c[d>>2]|0;c[a>>2]=n;i=b;return}if((e|0)<69){g=e+2e3|0}else{g=(e+-69|0)>>>0<31?e+1900|0:e}c[h>>2]=g+-1900;n=c[d>>2]|0;c[a>>2]=n;i=b;return}function Hn(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;l=i;i=i+176|0;m=l;n=l+164|0;y=l+160|0;$=l+156|0;W=l+152|0;q=l+148|0;U=l+144|0;H=l+140|0;G=l+136|0;z=l+132|0;_=l+128|0;x=l+124|0;L=l+120|0;T=l+116|0;R=l+112|0;r=l+108|0;w=l+104|0;v=l+100|0;C=l+96|0;B=l+92|0;O=l+88|0;I=l+84|0;Q=l+80|0;J=l+76|0;M=l+72|0;X=l+68|0;Z=l+64|0;Y=l+60|0;P=l+56|0;N=l+52|0;A=l+48|0;F=l+44|0;D=l+40|0;E=l+36|0;V=l+32|0;S=l+28|0;s=l+24|0;u=l+20|0;t=l+16|0;K=l+12|0;c[h>>2]=0;Bk(R,g);aa=c[R>>2]|0;if(!((c[270712]|0)==-1)){c[m>>2]=1082848;c[m+4>>2]=221;c[m+8>>2]=0;Yj(1082848,m,222)}ba=(c[1082852>>2]|0)+-1|0;p=c[aa+8>>2]|0;if(!((c[aa+12>>2]|0)-p>>2>>>0>ba>>>0)){ba=Ta(4)|0;us(ba);Rb(ba|0,1090808,189)}p=c[p+(ba<<2)>>2]|0;if((p|0)==0){ba=Ta(4)|0;us(ba);Rb(ba|0,1090808,189)}Dj(c[R>>2]|0)|0;a:do{switch(k<<24>>24|0){case 73:{j=j+8|0;c[z>>2]=c[f>>2];c[m+0>>2]=c[z+0>>2];m=Kn(e,m,h,p,2)|0;d=c[h>>2]|0;if((d&4|0)==0?(m+-1|0)>>>0<12:0){c[j>>2]=m;break a}c[h>>2]=d|4;break};case 83:{c[W>>2]=c[f>>2];c[m+0>>2]=c[W+0>>2];m=Kn(e,m,h,p,2)|0;d=c[h>>2]|0;if((d&4|0)==0&(m|0)<61){c[j>>2]=m;break a}else{c[h>>2]=d|4;break a}};case 77:{c[U>>2]=c[f>>2];c[m+0>>2]=c[U+0>>2];d=Kn(e,m,h,p,2)|0;m=c[h>>2]|0;if((m&4|0)==0&(d|0)<60){c[j+4>>2]=d;break a}else{c[h>>2]=m|4;break a}};case 65:case 97:{aa=c[f>>2]|0;ba=d+8|0;ba=gc[c[c[ba>>2]>>2]&127](ba)|0;c[T>>2]=aa;c[m+0>>2]=c[T+0>>2];h=(_l(e,m,ba,ba+168|0,p,h,0)|0)-ba|0;if((h|0)<168){c[j+24>>2]=((h|0)/12|0|0)%7|0}break};case 89:{c[n>>2]=c[f>>2];c[m+0>>2]=c[n+0>>2];m=Kn(e,m,h,p,4)|0;if((c[h>>2]&4|0)==0){c[j+20>>2]=m+-1900}break};case 119:{c[$>>2]=c[f>>2];c[m+0>>2]=c[$+0>>2];m=Kn(e,m,h,p,1)|0;d=c[h>>2]|0;if((d&4|0)==0&(m|0)<7){c[j+24>>2]=m;break a}else{c[h>>2]=d|4;break a}};case 99:{o=d+8|0;o=gc[c[(c[o>>2]|0)+12>>2]&127](o)|0;c[w>>2]=c[e>>2];c[v>>2]=c[f>>2];q=a[o>>0]|0;if((q&1)==0){p=o+1|0;q=(q&255)>>>1;o=o+1|0}else{ba=c[o+8>>2]|0;p=ba;q=c[o+4>>2]|0;o=ba}c[n+0>>2]=c[w+0>>2];c[m+0>>2]=c[v+0>>2];yn(r,d,n,m,g,h,j,o,p+q|0);c[e>>2]=c[r>>2];break};case 72:{c[_>>2]=c[f>>2];c[m+0>>2]=c[_+0>>2];d=Kn(e,m,h,p,2)|0;m=c[h>>2]|0;if((m&4|0)==0&(d|0)<24){c[j+8>>2]=d;break a}else{c[h>>2]=m|4;break a}};case 114:{c[Z>>2]=c[e>>2];c[Y>>2]=c[f>>2];c[n+0>>2]=c[Z+0>>2];c[m+0>>2]=c[Y+0>>2];yn(X,d,n,m,g,h,j,1081776,1081787|0);c[e>>2]=c[X>>2];break};case 120:{ba=c[(c[d>>2]|0)+20>>2]|0;c[V>>2]=c[e>>2];c[S>>2]=c[f>>2];c[n+0>>2]=c[V+0>>2];c[m+0>>2]=c[S+0>>2];bc[ba&63](b,d,n,m,g,h,j);i=l;return};case 70:{c[Q>>2]=c[e>>2];c[J>>2]=c[f>>2];c[n+0>>2]=c[Q+0>>2];c[m+0>>2]=c[J+0>>2];yn(I,d,n,m,g,h,j,1081768,1081776|0);c[e>>2]=c[I>>2];break};case 109:{c[H>>2]=c[f>>2];c[m+0>>2]=c[H+0>>2];d=Kn(e,m,h,p,2)|0;m=c[h>>2]|0;if((m&4|0)==0&(d|0)<13){c[j+16>>2]=d+-1;break a}else{c[h>>2]=m|4;break a}};case 106:{c[G>>2]=c[f>>2];c[m+0>>2]=c[G+0>>2];d=Kn(e,m,h,p,3)|0;m=c[h>>2]|0;if((m&4|0)==0&(d|0)<366){c[j+28>>2]=d;break a}else{c[h>>2]=m|4;break a}};case 112:{j=j+8|0;g=c[f>>2]|0;d=d+8|0;d=gc[c[(c[d>>2]|0)+8>>2]&127](d)|0;n=a[d>>0]|0;if((n&1)==0){n=(n&255)>>>1}else{n=c[d+4>>2]|0}f=a[d+12>>0]|0;if((f&1)==0){f=(f&255)>>>1}else{f=c[d+16>>2]|0}if((n|0)==(0-f|0)){c[h>>2]=c[h>>2]|4;break a}c[q>>2]=g;c[m+0>>2]=c[q+0>>2];ba=_l(e,m,d,d+24|0,p,h,0)|0;h=ba-d|0;if((ba|0)==(d|0)?(c[j>>2]|0)==12:0){c[j>>2]=0;break a}if((h|0)==12?(o=c[j>>2]|0,(o|0)<12):0){c[j>>2]=o+12}break};case 68:{c[B>>2]=c[e>>2];c[O>>2]=c[f>>2];c[n+0>>2]=c[B+0>>2];c[m+0>>2]=c[O+0>>2];yn(C,d,n,m,g,h,j,1081760,1081768|0);c[e>>2]=c[C>>2];break};case 84:{c[D>>2]=c[e>>2];c[E>>2]=c[f>>2];c[n+0>>2]=c[D+0>>2];c[m+0>>2]=c[E+0>>2];yn(F,d,n,m,g,h,j,1081800,1081808|0);c[e>>2]=c[F>>2];break};case 101:case 100:{j=j+12|0;c[x>>2]=c[f>>2];c[m+0>>2]=c[x+0>>2];m=Kn(e,m,h,p,2)|0;d=c[h>>2]|0;if((d&4|0)==0?(m+-1|0)>>>0<31:0){c[j>>2]=m;break a}c[h>>2]=d|4;break};case 88:{p=d+8|0;p=gc[c[(c[p>>2]|0)+24>>2]&127](p)|0;c[u>>2]=c[e>>2];c[t>>2]=c[f>>2];q=a[p>>0]|0;if((q&1)==0){o=p+1|0;q=(q&255)>>>1;p=p+1|0}else{ba=c[p+8>>2]|0;o=ba;q=c[p+4>>2]|0;p=ba}c[n+0>>2]=c[u+0>>2];c[m+0>>2]=c[t+0>>2];yn(s,d,n,m,g,h,j,p,o+q|0);c[e>>2]=c[s>>2];break};case 37:{c[K>>2]=c[f>>2];c[m+0>>2]=c[K+0>>2];Jn(0,e,m,h,p);break};case 104:case 66:case 98:{aa=c[f>>2]|0;ba=d+8|0;ba=gc[c[(c[ba>>2]|0)+4>>2]&127](ba)|0;c[L>>2]=aa;c[m+0>>2]=c[L+0>>2];h=(_l(e,m,ba,ba+288|0,p,h,0)|0)-ba|0;if((h|0)<288){c[j+16>>2]=((h|0)/12|0|0)%12|0}break};case 116:case 110:{c[M>>2]=c[f>>2];c[m+0>>2]=c[M+0>>2];In(0,e,m,h,p);break};case 82:{c[N>>2]=c[e>>2];c[A>>2]=c[f>>2];c[n+0>>2]=c[N+0>>2];c[m+0>>2]=c[A+0>>2];yn(P,d,n,m,g,h,j,1081792,1081797|0);c[e>>2]=c[P>>2];break};case 121:{j=j+20|0;c[y>>2]=c[f>>2];c[m+0>>2]=c[y+0>>2];m=Kn(e,m,h,p,4)|0;if((c[h>>2]&4|0)==0){if((m|0)<69){h=m+2e3|0}else{h=(m+-69|0)>>>0<31?m+1900|0:m}c[j>>2]=h+-1900}break};default:{c[h>>2]=c[h>>2]|4}}}while(0);c[b>>2]=c[e>>2];i=l;return}function In(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;a=i;h=h+8|0;a:while(1){k=c[e>>2]|0;do{if((k|0)!=0){if((c[k+12>>2]|0)==(c[k+16>>2]|0)){if((gc[c[(c[k>>2]|0)+36>>2]&127](k)|0)==-1){c[e>>2]=0;k=0;break}else{k=c[e>>2]|0;break}}}else{k=0}}while(0);l=(k|0)==0;k=c[f>>2]|0;do{if((k|0)!=0){if((c[k+12>>2]|0)!=(c[k+16>>2]|0)){if(l){break}else{break a}}if(!((gc[c[(c[k>>2]|0)+36>>2]&127](k)|0)==-1)){if(l){break}else{break a}}else{c[f>>2]=0;j=12;break}}else{j=12}}while(0);if((j|0)==12){j=0;if(l){k=0;break}else{k=0}}m=c[e>>2]|0;l=c[m+12>>2]|0;if((l|0)==(c[m+16>>2]|0)){l=gc[c[(c[m>>2]|0)+36>>2]&127](m)|0}else{l=d[l>>0]|0}if(!((l&255)<<24>>24>-1)){break}if((b[(c[h>>2]|0)+(l<<24>>24<<1)>>1]&8192)==0){break}k=c[e>>2]|0;m=k+12|0;l=c[m>>2]|0;if((l|0)==(c[k+16>>2]|0)){gc[c[(c[k>>2]|0)+40>>2]&127](k)|0;continue}else{c[m>>2]=l+1;continue}}h=c[e>>2]|0;do{if((h|0)!=0){if((c[h+12>>2]|0)==(c[h+16>>2]|0)){if((gc[c[(c[h>>2]|0)+36>>2]&127](h)|0)==-1){c[e>>2]=0;h=0;break}else{h=c[e>>2]|0;break}}}else{h=0}}while(0);e=(h|0)==0;do{if((k|0)!=0){if((c[k+12>>2]|0)==(c[k+16>>2]|0)?(gc[c[(c[k>>2]|0)+36>>2]&127](k)|0)==-1:0){c[f>>2]=0;j=32;break}if(e){i=a;return}}else{j=32}}while(0);if((j|0)==32?!e:0){i=a;return}c[g>>2]=c[g>>2]|2;i=a;return}function Jn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0;a=i;j=c[b>>2]|0;do{if((j|0)!=0){if((c[j+12>>2]|0)==(c[j+16>>2]|0)){if((gc[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1){c[b>>2]=0;j=0;break}else{j=c[b>>2]|0;break}}}else{j=0}}while(0);k=(j|0)==0;j=c[e>>2]|0;do{if((j|0)!=0){if((c[j+12>>2]|0)==(c[j+16>>2]|0)?(gc[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1:0){c[e>>2]=0;h=11;break}if(!k){h=12}}else{h=11}}while(0);if((h|0)==11){if(k){h=12}else{j=0}}if((h|0)==12){c[f>>2]=c[f>>2]|6;i=a;return}l=c[b>>2]|0;k=c[l+12>>2]|0;if((k|0)==(c[l+16>>2]|0)){k=gc[c[(c[l>>2]|0)+36>>2]&127](l)|0}else{k=d[k>>0]|0}if(!((ac[c[(c[g>>2]|0)+36>>2]&31](g,k&255,0)|0)<<24>>24==37)){c[f>>2]=c[f>>2]|4;i=a;return}l=c[b>>2]|0;k=l+12|0;g=c[k>>2]|0;if((g|0)==(c[l+16>>2]|0)){gc[c[(c[l>>2]|0)+40>>2]&127](l)|0}else{c[k>>2]=g+1}g=c[b>>2]|0;do{if((g|0)!=0){if((c[g+12>>2]|0)==(c[g+16>>2]|0)){if((gc[c[(c[g>>2]|0)+36>>2]&127](g)|0)==-1){c[b>>2]=0;g=0;break}else{g=c[b>>2]|0;break}}}else{g=0}}while(0);b=(g|0)==0;do{if((j|0)!=0){if((c[j+12>>2]|0)==(c[j+16>>2]|0)?(gc[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1:0){c[e>>2]=0;h=31;break}if(b){i=a;return}}else{h=31}}while(0);if((h|0)==31?!b:0){i=a;return}c[f>>2]=c[f>>2]|2;i=a;return}function Kn(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;j=i;l=c[a>>2]|0;do{if((l|0)!=0){if((c[l+12>>2]|0)==(c[l+16>>2]|0)){if((gc[c[(c[l>>2]|0)+36>>2]&127](l)|0)==-1){c[a>>2]=0;l=0;break}else{l=c[a>>2]|0;break}}}else{l=0}}while(0);m=(l|0)==0;l=c[e>>2]|0;do{if((l|0)!=0){if((c[l+12>>2]|0)==(c[l+16>>2]|0)?(gc[c[(c[l>>2]|0)+36>>2]&127](l)|0)==-1:0){c[e>>2]=0;n=11;break}if(!m){n=12}}else{n=11}}while(0);if((n|0)==11){if(m){n=12}else{l=0}}if((n|0)==12){c[f>>2]=c[f>>2]|6;q=0;i=j;return q|0}n=c[a>>2]|0;m=c[n+12>>2]|0;if((m|0)==(c[n+16>>2]|0)){n=gc[c[(c[n>>2]|0)+36>>2]&127](n)|0}else{n=d[m>>0]|0}m=n&255;if(m<<24>>24>-1?(k=g+8|0,!((b[(c[k>>2]|0)+(n<<24>>24<<1)>>1]&2048)==0)):0){m=(ac[c[(c[g>>2]|0)+36>>2]&31](g,m,0)|0)<<24>>24;p=c[a>>2]|0;n=p+12|0;o=c[n>>2]|0;if((o|0)==(c[p+16>>2]|0)){gc[c[(c[p>>2]|0)+40>>2]&127](p)|0;o=l;n=l}else{c[n>>2]=o+1;o=l;n=l}while(1){m=m+-48|0;h=h+-1|0;l=c[a>>2]|0;do{if((l|0)!=0){if((c[l+12>>2]|0)==(c[l+16>>2]|0)){if((gc[c[(c[l>>2]|0)+36>>2]&127](l)|0)==-1){c[a>>2]=0;l=0;break}else{l=c[a>>2]|0;break}}}else{l=0}}while(0);p=(l|0)==0;if((n|0)!=0){if((c[n+12>>2]|0)==(c[n+16>>2]|0)){if((gc[c[(c[n>>2]|0)+36>>2]&127](n)|0)==-1){c[e>>2]=0;l=0;n=0}else{l=o;n=o}}else{l=o}}else{l=o;n=0}o=c[a>>2]|0;if(!((p^(n|0)==0)&(h|0)>0)){n=40;break}p=c[o+12>>2]|0;if((p|0)==(c[o+16>>2]|0)){o=gc[c[(c[o>>2]|0)+36>>2]&127](o)|0}else{o=d[p>>0]|0}p=o&255;if(!(p<<24>>24>-1)){n=52;break}if((b[(c[k>>2]|0)+(o<<24>>24<<1)>>1]&2048)==0){n=52;break}m=((ac[c[(c[g>>2]|0)+36>>2]&31](g,p,0)|0)<<24>>24)+(m*10|0)|0;p=c[a>>2]|0;q=p+12|0;o=c[q>>2]|0;if((o|0)==(c[p+16>>2]|0)){gc[c[(c[p>>2]|0)+40>>2]&127](p)|0;o=l;continue}else{c[q>>2]=o+1;o=l;continue}}if((n|0)==40){do{if((o|0)!=0){if((c[o+12>>2]|0)==(c[o+16>>2]|0)){if((gc[c[(c[o>>2]|0)+36>>2]&127](o)|0)==-1){c[a>>2]=0;o=0;break}else{o=c[a>>2]|0;break}}}else{o=0}}while(0);g=(o|0)==0;do{if((l|0)!=0){if((c[l+12>>2]|0)==(c[l+16>>2]|0)?(gc[c[(c[l>>2]|0)+36>>2]&127](l)|0)==-1:0){c[e>>2]=0;n=50;break}if(g){q=m;i=j;return q|0}}else{n=50}}while(0);if((n|0)==50?!g:0){q=m;i=j;return q|0}c[f>>2]=c[f>>2]|2;q=m;i=j;return q|0}else if((n|0)==52){i=j;return m|0}}c[f>>2]=c[f>>2]|4;q=0;i=j;return q|0}function Ln(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;m=i;i=i+32|0;r=m;o=m+28|0;t=m+24|0;p=m+20|0;q=m+16|0;n=m+12|0;Bk(t,f);v=c[t>>2]|0;if(!((c[270710]|0)==-1)){c[r>>2]=1082840;c[r+4>>2]=221;c[r+8>>2]=0;Yj(1082840,r,222)}s=(c[1082844>>2]|0)+-1|0;u=c[v+8>>2]|0;if(!((c[v+12>>2]|0)-u>>2>>>0>s>>>0)){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}s=c[u+(s<<2)>>2]|0;if((s|0)==0){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}Dj(c[t>>2]|0)|0;c[g>>2]=0;a:do{if((j|0)!=(k|0)){t=0;b:while(1){while(1){if((t|0)!=0){l=69;break a}t=c[d>>2]|0;if((t|0)!=0){u=c[t+12>>2]|0;if((u|0)==(c[t+16>>2]|0)){u=gc[c[(c[t>>2]|0)+36>>2]&127](t)|0}else{u=c[u>>2]|0}if((u|0)==-1){c[d>>2]=0;v=1;t=0}else{v=0}}else{v=1;t=0}u=c[e>>2]|0;do{if((u|0)!=0){w=c[u+12>>2]|0;if((w|0)==(c[u+16>>2]|0)){w=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{w=c[w>>2]|0}if(!((w|0)==-1)){if(v){break}else{l=24;break b}}else{c[e>>2]=0;l=22;break}}else{l=22}}while(0);if((l|0)==22){l=0;if(v){l=24;break b}else{u=0}}if((ac[c[(c[s>>2]|0)+52>>2]&31](s,c[j>>2]|0,0)|0)<<24>>24==37){l=26;break}if(ac[c[(c[s>>2]|0)+12>>2]&31](s,8192,c[j>>2]|0)|0){l=36;break}u=t+12|0;w=c[u>>2]|0;v=t+16|0;if((w|0)==(c[v>>2]|0)){w=gc[c[(c[t>>2]|0)+36>>2]&127](t)|0}else{w=c[w>>2]|0}y=pc[c[(c[s>>2]|0)+28>>2]&63](s,w)|0;if((y|0)==(pc[c[(c[s>>2]|0)+28>>2]&63](s,c[j>>2]|0)|0)){l=64;break}c[g>>2]=4;t=4}c:do{if((l|0)==26){l=0;w=j+4|0;if((w|0)==(k|0)){l=27;break b}v=ac[c[(c[s>>2]|0)+52>>2]&31](s,c[w>>2]|0,0)|0;if(v<<24>>24==48|v<<24>>24==69){w=j+8|0;if((w|0)==(k|0)){l=30;break b}j=w;w=ac[c[(c[s>>2]|0)+52>>2]&31](s,c[w>>2]|0,0)|0}else{j=w;w=v;v=0}y=c[(c[b>>2]|0)+36>>2]|0;c[q>>2]=t;c[n>>2]=u;c[o+0>>2]=c[q+0>>2];c[r+0>>2]=c[n+0>>2];fc[y&3](p,b,o,r,f,g,h,w,v);c[d>>2]=c[p>>2];j=j+4|0}else if((l|0)==36){while(1){l=0;j=j+4|0;if((j|0)==(k|0)){j=k;break}if(ac[c[(c[s>>2]|0)+12>>2]&31](s,8192,c[j>>2]|0)|0){l=36}else{break}}v=u;while(1){if((t|0)!=0){w=c[t+12>>2]|0;if((w|0)==(c[t+16>>2]|0)){w=gc[c[(c[t>>2]|0)+36>>2]&127](t)|0}else{w=c[w>>2]|0}if((w|0)==-1){c[d>>2]=0;w=1;t=0}else{w=0}}else{w=1;t=0}do{if((u|0)!=0){x=c[u+12>>2]|0;if((x|0)==(c[u+16>>2]|0)){u=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{u=c[x>>2]|0}if(!((u|0)==-1)){if(w^(v|0)==0){w=v;u=v;break}else{break c}}else{c[e>>2]=0;v=0;l=51;break}}else{l=51}}while(0);if((l|0)==51){l=0;if(w){break c}else{w=v;u=0}}x=t+12|0;y=c[x>>2]|0;v=t+16|0;if((y|0)==(c[v>>2]|0)){y=gc[c[(c[t>>2]|0)+36>>2]&127](t)|0}else{y=c[y>>2]|0}if(!(ac[c[(c[s>>2]|0)+12>>2]&31](s,8192,y)|0)){break c}y=c[x>>2]|0;if((y|0)==(c[v>>2]|0)){gc[c[(c[t>>2]|0)+40>>2]&127](t)|0;v=w;continue}else{c[x>>2]=y+4;v=w;continue}}}else if((l|0)==64){l=0;w=c[u>>2]|0;if((w|0)==(c[v>>2]|0)){gc[c[(c[t>>2]|0)+40>>2]&127](t)|0}else{c[u>>2]=w+4}j=j+4|0}}while(0);if((j|0)==(k|0)){l=69;break a}t=c[g>>2]|0}if((l|0)==24){c[g>>2]=4;break}else if((l|0)==27){c[g>>2]=4;break}else if((l|0)==30){c[g>>2]=4;break}}else{l=69}}while(0);if((l|0)==69){t=c[d>>2]|0}if((t|0)!=0){f=c[t+12>>2]|0;if((f|0)==(c[t+16>>2]|0)){f=gc[c[(c[t>>2]|0)+36>>2]&127](t)|0}else{f=c[f>>2]|0}if((f|0)==-1){c[d>>2]=0;t=0;d=1}else{d=0}}else{t=0;d=1}f=c[e>>2]|0;do{if((f|0)!=0){n=c[f+12>>2]|0;if((n|0)==(c[f+16>>2]|0)){f=gc[c[(c[f>>2]|0)+36>>2]&127](f)|0}else{f=c[n>>2]|0}if((f|0)==-1){c[e>>2]=0;l=82;break}if(d){c[a>>2]=t;i=m;return}}else{l=82}}while(0);if((l|0)==82?!d:0){c[a>>2]=t;i=m;return}c[g>>2]=c[g>>2]|2;c[a>>2]=t;i=m;return}function Mn(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Nn(a){a=a|0;return}function On(a){a=a|0;return 2}function Pn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;j=i;i=i+16|0;k=j+12|0;l=j+8|0;n=j+4|0;m=j;c[n>>2]=c[d>>2];c[m>>2]=c[e>>2];c[l+0>>2]=c[n+0>>2];c[k+0>>2]=c[m+0>>2];Ln(a,b,l,k,f,g,h,1081904,1081936|0);i=j;return}function Qn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;p=d+8|0;p=gc[c[(c[p>>2]|0)+20>>2]&127](p)|0;c[n>>2]=c[e>>2];c[m>>2]=c[f>>2];e=a[p>>0]|0;if((e&1)==0){f=p+4|0;e=(e&255)>>>1;p=p+4|0}else{q=c[p+8>>2]|0;f=q;e=c[p+4>>2]|0;p=q}q=f+(e<<2)|0;c[l+0>>2]=c[n+0>>2];c[k+0>>2]=c[m+0>>2];Ln(b,d,l,k,g,h,j,p,q);i=o;return}function Rn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j;m=j+16|0;l=j+12|0;Bk(l,f);f=c[l>>2]|0;if(!((c[270710]|0)==-1)){c[k>>2]=1082840;c[k+4>>2]=221;c[k+8>>2]=0;Yj(1082840,k,222)}o=(c[1082844>>2]|0)+-1|0;n=c[f+8>>2]|0;if(!((c[f+12>>2]|0)-n>>2>>>0>o>>>0)){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}f=c[n+(o<<2)>>2]|0;if((f|0)==0){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}Dj(c[l>>2]|0)|0;n=c[e>>2]|0;o=b+8|0;o=gc[c[c[o>>2]>>2]&127](o)|0;c[m>>2]=n;n=o+168|0;c[k+0>>2]=c[m+0>>2];k=(xm(d,k,o,n,f,g,0)|0)-o|0;if((k|0)>=168){o=c[d>>2]|0;c[a>>2]=o;i=j;return}c[h+24>>2]=((k|0)/12|0|0)%7|0;o=c[d>>2]|0;c[a>>2]=o;i=j;return}function Sn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+32|0;k=j;m=j+16|0;l=j+12|0;Bk(l,f);f=c[l>>2]|0;if(!((c[270710]|0)==-1)){c[k>>2]=1082840;c[k+4>>2]=221;c[k+8>>2]=0;Yj(1082840,k,222)}o=(c[1082844>>2]|0)+-1|0;n=c[f+8>>2]|0;if(!((c[f+12>>2]|0)-n>>2>>>0>o>>>0)){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}f=c[n+(o<<2)>>2]|0;if((f|0)==0){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}Dj(c[l>>2]|0)|0;n=c[e>>2]|0;o=b+8|0;o=gc[c[(c[o>>2]|0)+4>>2]&127](o)|0;c[m>>2]=n;n=o+288|0;c[k+0>>2]=c[m+0>>2];k=(xm(d,k,o,n,f,g,0)|0)-o|0;if((k|0)>=288){o=c[d>>2]|0;c[a>>2]=o;i=j;return}c[h+16>>2]=((k|0)/12|0|0)%12|0;
+o=c[d>>2]|0;c[a>>2]=o;i=j;return}function Tn(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;b=i;i=i+32|0;j=b;k=b+16|0;l=b+12|0;Bk(l,f);f=c[l>>2]|0;if(!((c[270710]|0)==-1)){c[j>>2]=1082840;c[j+4>>2]=221;c[j+8>>2]=0;Yj(1082840,j,222)}n=(c[1082844>>2]|0)+-1|0;m=c[f+8>>2]|0;if(!((c[f+12>>2]|0)-m>>2>>>0>n>>>0)){n=Ta(4)|0;us(n);Rb(n|0,1090808,189)}f=c[m+(n<<2)>>2]|0;if((f|0)==0){n=Ta(4)|0;us(n);Rb(n|0,1090808,189)}Dj(c[l>>2]|0)|0;h=h+20|0;c[k>>2]=c[e>>2];c[j+0>>2]=c[k+0>>2];e=Xn(d,j,g,f,4)|0;if((c[g>>2]&4|0)!=0){n=c[d>>2]|0;c[a>>2]=n;i=b;return}if((e|0)<69){g=e+2e3|0}else{g=(e+-69|0)>>>0<31?e+1900|0:e}c[h>>2]=g+-1900;n=c[d>>2]|0;c[a>>2]=n;i=b;return}function Un(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;l=i;i=i+176|0;m=l;n=l+164|0;x=l+160|0;I=l+156|0;_=l+152|0;q=l+148|0;B=l+144|0;M=l+140|0;H=l+136|0;y=l+132|0;X=l+128|0;z=l+124|0;Q=l+120|0;J=l+116|0;R=l+112|0;r=l+108|0;v=l+104|0;w=l+100|0;A=l+96|0;E=l+92|0;F=l+88|0;P=l+84|0;N=l+80|0;O=l+76|0;S=l+72|0;C=l+68|0;U=l+64|0;T=l+60|0;W=l+56|0;$=l+52|0;G=l+48|0;L=l+44|0;D=l+40|0;K=l+36|0;Y=l+32|0;Z=l+28|0;u=l+24|0;s=l+20|0;t=l+16|0;V=l+12|0;c[h>>2]=0;Bk(R,g);aa=c[R>>2]|0;if(!((c[270710]|0)==-1)){c[m>>2]=1082840;c[m+4>>2]=221;c[m+8>>2]=0;Yj(1082840,m,222)}ba=(c[1082844>>2]|0)+-1|0;p=c[aa+8>>2]|0;if(!((c[aa+12>>2]|0)-p>>2>>>0>ba>>>0)){ba=Ta(4)|0;us(ba);Rb(ba|0,1090808,189)}p=c[p+(ba<<2)>>2]|0;if((p|0)==0){ba=Ta(4)|0;us(ba);Rb(ba|0,1090808,189)}Dj(c[R>>2]|0)|0;a:do{switch(k<<24>>24|0){case 72:{c[X>>2]=c[f>>2];c[m+0>>2]=c[X+0>>2];m=Xn(e,m,h,p,2)|0;d=c[h>>2]|0;if((d&4|0)==0&(m|0)<24){c[j+8>>2]=m;break a}else{c[h>>2]=d|4;break a}};case 73:{j=j+8|0;c[y>>2]=c[f>>2];c[m+0>>2]=c[y+0>>2];m=Xn(e,m,h,p,2)|0;d=c[h>>2]|0;if((d&4|0)==0?(m+-1|0)>>>0<12:0){c[j>>2]=m;break a}c[h>>2]=d|4;break};case 114:{c[U>>2]=c[e>>2];c[T>>2]=c[f>>2];c[n+0>>2]=c[U+0>>2];c[m+0>>2]=c[T+0>>2];Ln(C,d,n,m,g,h,j,1082e3,1082044|0);c[e>>2]=c[C>>2];break};case 82:{c[$>>2]=c[e>>2];c[G>>2]=c[f>>2];c[n+0>>2]=c[$+0>>2];c[m+0>>2]=c[G+0>>2];Ln(W,d,n,m,g,h,j,1082048,1082068|0);c[e>>2]=c[W>>2];break};case 77:{c[B>>2]=c[f>>2];c[m+0>>2]=c[B+0>>2];m=Xn(e,m,h,p,2)|0;d=c[h>>2]|0;if((d&4|0)==0&(m|0)<60){c[j+4>>2]=m;break a}else{c[h>>2]=d|4;break a}};case 112:{j=j+8|0;g=c[f>>2]|0;d=d+8|0;d=gc[c[(c[d>>2]|0)+8>>2]&127](d)|0;n=a[d>>0]|0;if((n&1)==0){n=(n&255)>>>1}else{n=c[d+4>>2]|0}f=a[d+12>>0]|0;if((f&1)==0){f=(f&255)>>>1}else{f=c[d+16>>2]|0}if((n|0)==(0-f|0)){c[h>>2]=c[h>>2]|4;break a}c[q>>2]=g;c[m+0>>2]=c[q+0>>2];ba=xm(e,m,d,d+24|0,p,h,0)|0;h=ba-d|0;if((ba|0)==(d|0)?(c[j>>2]|0)==12:0){c[j>>2]=0;break a}if((h|0)==12?(o=c[j>>2]|0,(o|0)<12):0){c[j>>2]=o+12}break};case 84:{c[D>>2]=c[e>>2];c[K>>2]=c[f>>2];c[n+0>>2]=c[D+0>>2];c[m+0>>2]=c[K+0>>2];Ln(L,d,n,m,g,h,j,1082072,1082104|0);c[e>>2]=c[L>>2];break};case 109:{c[M>>2]=c[f>>2];c[m+0>>2]=c[M+0>>2];d=Xn(e,m,h,p,2)|0;m=c[h>>2]|0;if((m&4|0)==0&(d|0)<13){c[j+16>>2]=d+-1;break a}else{c[h>>2]=m|4;break a}};case 104:case 66:case 98:{aa=c[f>>2]|0;ba=d+8|0;ba=gc[c[(c[ba>>2]|0)+4>>2]&127](ba)|0;c[Q>>2]=aa;c[m+0>>2]=c[Q+0>>2];h=(xm(e,m,ba,ba+288|0,p,h,0)|0)-ba|0;if((h|0)<288){c[j+16>>2]=((h|0)/12|0|0)%12|0}break};case 116:case 110:{c[S>>2]=c[f>>2];c[m+0>>2]=c[S+0>>2];Vn(0,e,m,h,p);break};case 37:{c[V>>2]=c[f>>2];c[m+0>>2]=c[V+0>>2];Wn(0,e,m,h,p);break};case 101:case 100:{j=j+12|0;c[z>>2]=c[f>>2];c[m+0>>2]=c[z+0>>2];m=Xn(e,m,h,p,2)|0;d=c[h>>2]|0;if((d&4|0)==0?(m+-1|0)>>>0<31:0){c[j>>2]=m;break a}c[h>>2]=d|4;break};case 120:{ba=c[(c[d>>2]|0)+20>>2]|0;c[Y>>2]=c[e>>2];c[Z>>2]=c[f>>2];c[n+0>>2]=c[Y+0>>2];c[m+0>>2]=c[Z+0>>2];bc[ba&63](b,d,n,m,g,h,j);i=l;return};case 83:{c[_>>2]=c[f>>2];c[m+0>>2]=c[_+0>>2];d=Xn(e,m,h,p,2)|0;m=c[h>>2]|0;if((m&4|0)==0&(d|0)<61){c[j>>2]=d;break a}else{c[h>>2]=m|4;break a}};case 99:{o=d+8|0;o=gc[c[(c[o>>2]|0)+12>>2]&127](o)|0;c[v>>2]=c[e>>2];c[w>>2]=c[f>>2];q=a[o>>0]|0;if((q&1)==0){p=o+4|0;q=(q&255)>>>1;o=o+4|0}else{ba=c[o+8>>2]|0;p=ba;q=c[o+4>>2]|0;o=ba}c[n+0>>2]=c[v+0>>2];c[m+0>>2]=c[w+0>>2];Ln(r,d,n,m,g,h,j,o,p+(q<<2)|0);c[e>>2]=c[r>>2];break};case 68:{c[E>>2]=c[e>>2];c[F>>2]=c[f>>2];c[n+0>>2]=c[E+0>>2];c[m+0>>2]=c[F+0>>2];Ln(A,d,n,m,g,h,j,1081936,1081968|0);c[e>>2]=c[A>>2];break};case 106:{c[H>>2]=c[f>>2];c[m+0>>2]=c[H+0>>2];d=Xn(e,m,h,p,3)|0;m=c[h>>2]|0;if((m&4|0)==0&(d|0)<366){c[j+28>>2]=d;break a}else{c[h>>2]=m|4;break a}};case 119:{c[I>>2]=c[f>>2];c[m+0>>2]=c[I+0>>2];m=Xn(e,m,h,p,1)|0;d=c[h>>2]|0;if((d&4|0)==0&(m|0)<7){c[j+24>>2]=m;break a}else{c[h>>2]=d|4;break a}};case 65:case 97:{aa=c[f>>2]|0;ba=d+8|0;ba=gc[c[c[ba>>2]>>2]&127](ba)|0;c[J>>2]=aa;c[m+0>>2]=c[J+0>>2];h=(xm(e,m,ba,ba+168|0,p,h,0)|0)-ba|0;if((h|0)<168){c[j+24>>2]=((h|0)/12|0|0)%7|0}break};case 88:{o=d+8|0;o=gc[c[(c[o>>2]|0)+24>>2]&127](o)|0;c[s>>2]=c[e>>2];c[t>>2]=c[f>>2];q=a[o>>0]|0;if((q&1)==0){p=o+4|0;q=(q&255)>>>1;o=o+4|0}else{ba=c[o+8>>2]|0;p=ba;q=c[o+4>>2]|0;o=ba}c[n+0>>2]=c[s+0>>2];c[m+0>>2]=c[t+0>>2];Ln(u,d,n,m,g,h,j,o,p+(q<<2)|0);c[e>>2]=c[u>>2];break};case 70:{c[N>>2]=c[e>>2];c[O>>2]=c[f>>2];c[n+0>>2]=c[N+0>>2];c[m+0>>2]=c[O+0>>2];Ln(P,d,n,m,g,h,j,1081968,1082e3|0);c[e>>2]=c[P>>2];break};case 89:{c[n>>2]=c[f>>2];c[m+0>>2]=c[n+0>>2];m=Xn(e,m,h,p,4)|0;if((c[h>>2]&4|0)==0){c[j+20>>2]=m+-1900}break};case 121:{j=j+20|0;c[x>>2]=c[f>>2];c[m+0>>2]=c[x+0>>2];m=Xn(e,m,h,p,4)|0;if((c[h>>2]&4|0)==0){if((m|0)<69){h=m+2e3|0}else{h=(m+-69|0)>>>0<31?m+1900|0:m}c[j>>2]=h+-1900}break};default:{c[h>>2]=c[h>>2]|4}}}while(0);c[b>>2]=c[e>>2];i=l;return}function Vn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;a=i;a:while(1){h=c[b>>2]|0;do{if((h|0)!=0){j=c[h+12>>2]|0;if((j|0)==(c[h+16>>2]|0)){h=gc[c[(c[h>>2]|0)+36>>2]&127](h)|0}else{h=c[j>>2]|0}if((h|0)==-1){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else{h=1}}while(0);j=c[d>>2]|0;do{if((j|0)!=0){k=c[j+12>>2]|0;if((k|0)==(c[j+16>>2]|0)){k=gc[c[(c[j>>2]|0)+36>>2]&127](j)|0}else{k=c[k>>2]|0}if(!((k|0)==-1)){if(h){break}else{f=j;break a}}else{c[d>>2]=0;g=15;break}}else{g=15}}while(0);if((g|0)==15){g=0;if(h){f=0;break}else{j=0}}h=c[b>>2]|0;k=c[h+12>>2]|0;if((k|0)==(c[h+16>>2]|0)){h=gc[c[(c[h>>2]|0)+36>>2]&127](h)|0}else{h=c[k>>2]|0}if(!(ac[c[(c[f>>2]|0)+12>>2]&31](f,8192,h)|0)){f=j;break}h=c[b>>2]|0;j=h+12|0;k=c[j>>2]|0;if((k|0)==(c[h+16>>2]|0)){gc[c[(c[h>>2]|0)+40>>2]&127](h)|0;continue}else{c[j>>2]=k+4;continue}}h=c[b>>2]|0;do{if((h|0)!=0){j=c[h+12>>2]|0;if((j|0)==(c[h+16>>2]|0)){h=gc[c[(c[h>>2]|0)+36>>2]&127](h)|0}else{h=c[j>>2]|0}if((h|0)==-1){c[b>>2]=0;b=1;break}else{b=(c[b>>2]|0)==0;break}}else{b=1}}while(0);do{if((f|0)!=0){h=c[f+12>>2]|0;if((h|0)==(c[f+16>>2]|0)){f=gc[c[(c[f>>2]|0)+36>>2]&127](f)|0}else{f=c[h>>2]|0}if((f|0)==-1){c[d>>2]=0;g=37;break}if(b){i=a;return}}else{g=37}}while(0);if((g|0)==37?!b:0){i=a;return}c[e>>2]=c[e>>2]|2;i=a;return}function Wn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;a=i;j=c[b>>2]|0;do{if((j|0)!=0){h=c[j+12>>2]|0;if((h|0)==(c[j+16>>2]|0)){h=gc[c[(c[j>>2]|0)+36>>2]&127](j)|0}else{h=c[h>>2]|0}if((h|0)==-1){c[b>>2]=0;j=1;break}else{j=(c[b>>2]|0)==0;break}}else{j=1}}while(0);h=c[d>>2]|0;do{if((h|0)!=0){k=c[h+12>>2]|0;if((k|0)==(c[h+16>>2]|0)){k=gc[c[(c[h>>2]|0)+36>>2]&127](h)|0}else{k=c[k>>2]|0}if(!((k|0)==-1)){if(j){break}else{g=16;break}}else{c[d>>2]=0;g=14;break}}else{g=14}}while(0);if((g|0)==14){if(j){g=16}else{h=0}}if((g|0)==16){c[e>>2]=c[e>>2]|6;i=a;return}k=c[b>>2]|0;j=c[k+12>>2]|0;if((j|0)==(c[k+16>>2]|0)){j=gc[c[(c[k>>2]|0)+36>>2]&127](k)|0}else{j=c[j>>2]|0}if(!((ac[c[(c[f>>2]|0)+52>>2]&31](f,j,0)|0)<<24>>24==37)){c[e>>2]=c[e>>2]|4;i=a;return}j=c[b>>2]|0;k=j+12|0;f=c[k>>2]|0;if((f|0)==(c[j+16>>2]|0)){gc[c[(c[j>>2]|0)+40>>2]&127](j)|0}else{c[k>>2]=f+4}f=c[b>>2]|0;do{if((f|0)!=0){j=c[f+12>>2]|0;if((j|0)==(c[f+16>>2]|0)){f=gc[c[(c[f>>2]|0)+36>>2]&127](f)|0}else{f=c[j>>2]|0}if((f|0)==-1){c[b>>2]=0;b=1;break}else{b=(c[b>>2]|0)==0;break}}else{b=1}}while(0);do{if((h|0)!=0){f=c[h+12>>2]|0;if((f|0)==(c[h+16>>2]|0)){f=gc[c[(c[h>>2]|0)+36>>2]&127](h)|0}else{f=c[f>>2]|0}if((f|0)==-1){c[d>>2]=0;g=38;break}if(b){i=a;return}}else{g=38}}while(0);if((g|0)==38?!b:0){i=a;return}c[e>>2]=c[e>>2]|2;i=a;return}function Xn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;j=c[a>>2]|0;do{if((j|0)!=0){k=c[j+12>>2]|0;if((k|0)==(c[j+16>>2]|0)){j=gc[c[(c[j>>2]|0)+36>>2]&127](j)|0}else{j=c[k>>2]|0}if((j|0)==-1){c[a>>2]=0;k=1;break}else{k=(c[a>>2]|0)==0;break}}else{k=1}}while(0);j=c[b>>2]|0;do{if((j|0)!=0){l=c[j+12>>2]|0;if((l|0)==(c[j+16>>2]|0)){l=gc[c[(c[j>>2]|0)+36>>2]&127](j)|0}else{l=c[l>>2]|0}if(!((l|0)==-1)){if(k){break}else{g=16;break}}else{c[b>>2]=0;g=14;break}}else{g=14}}while(0);if((g|0)==14){if(k){g=16}else{j=0}}if((g|0)==16){c[d>>2]=c[d>>2]|6;o=0;i=h;return o|0}k=c[a>>2]|0;l=c[k+12>>2]|0;if((l|0)==(c[k+16>>2]|0)){k=gc[c[(c[k>>2]|0)+36>>2]&127](k)|0}else{k=c[l>>2]|0}if(!(ac[c[(c[e>>2]|0)+12>>2]&31](e,2048,k)|0)){c[d>>2]=c[d>>2]|4;o=0;i=h;return o|0}k=(ac[c[(c[e>>2]|0)+52>>2]&31](e,k,0)|0)<<24>>24;m=c[a>>2]|0;l=m+12|0;n=c[l>>2]|0;if((n|0)==(c[m+16>>2]|0)){gc[c[(c[m>>2]|0)+40>>2]&127](m)|0;l=j;m=j;j=k}else{c[l>>2]=n+4;l=j;m=j;j=k}while(1){j=j+-48|0;f=f+-1|0;n=c[a>>2]|0;do{if((n|0)!=0){k=c[n+12>>2]|0;if((k|0)==(c[n+16>>2]|0)){k=gc[c[(c[n>>2]|0)+36>>2]&127](n)|0}else{k=c[k>>2]|0}if((k|0)==-1){c[a>>2]=0;n=1;break}else{n=(c[a>>2]|0)==0;break}}else{n=1}}while(0);do{if((m|0)!=0){k=c[m+12>>2]|0;if((k|0)==(c[m+16>>2]|0)){k=gc[c[(c[m>>2]|0)+36>>2]&127](m)|0}else{k=c[k>>2]|0}if((k|0)==-1){c[b>>2]=0;k=0;m=0;o=1;break}else{k=l;m=l;o=(l|0)==0;break}}else{k=l;m=0;o=1}}while(0);l=c[a>>2]|0;if(!((n^o)&(f|0)>0)){break}n=c[l+12>>2]|0;if((n|0)==(c[l+16>>2]|0)){l=gc[c[(c[l>>2]|0)+36>>2]&127](l)|0}else{l=c[n>>2]|0}if(!(ac[c[(c[e>>2]|0)+12>>2]&31](e,2048,l)|0)){g=63;break}j=((ac[c[(c[e>>2]|0)+52>>2]&31](e,l,0)|0)<<24>>24)+(j*10|0)|0;o=c[a>>2]|0;n=o+12|0;l=c[n>>2]|0;if((l|0)==(c[o+16>>2]|0)){gc[c[(c[o>>2]|0)+40>>2]&127](o)|0;l=k;continue}else{c[n>>2]=l+4;l=k;continue}}if((g|0)==63){i=h;return j|0}do{if((l|0)!=0){e=c[l+12>>2]|0;if((e|0)==(c[l+16>>2]|0)){e=gc[c[(c[l>>2]|0)+36>>2]&127](l)|0}else{e=c[e>>2]|0}if((e|0)==-1){c[a>>2]=0;a=1;break}else{a=(c[a>>2]|0)==0;break}}else{a=1}}while(0);do{if((k|0)!=0){e=c[k+12>>2]|0;if((e|0)==(c[k+16>>2]|0)){e=gc[c[(c[k>>2]|0)+36>>2]&127](k)|0}else{e=c[e>>2]|0}if((e|0)==-1){c[b>>2]=0;g=60;break}if(a){o=j;i=h;return o|0}}else{g=60}}while(0);if((g|0)==60?!a:0){o=j;i=h;return o|0}c[d>>2]=c[d>>2]|2;o=j;i=h;return o|0}function Yn(b){b=b|0;var d=0,e=0,f=0;d=i;e=b+8|0;f=c[e>>2]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}if((f|0)==(c[270684]|0)){Ys(b);i=d;return}Kb(c[e>>2]|0);Ys(b);i=d;return}function Zn(b){b=b|0;var d=0,e=0;d=i;b=b+8|0;e=c[b>>2]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}if((e|0)==(c[270684]|0)){i=d;return}Kb(c[b>>2]|0);i=d;return}function _n(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0;f=i;i=i+112|0;n=f+100|0;g=f;a[n>>0]=37;l=n+1|0;a[l>>0]=j;m=n+2|0;a[m>>0]=k;a[n+3>>0]=0;if(!(k<<24>>24==0)){a[l>>0]=k;a[m>>0]=j}n=$a(g|0,100,n|0,h|0,c[d+8>>2]|0)|0;h=g+n|0;d=c[e>>2]|0;if((n|0)==0){n=d;c[b>>2]=n;i=f;return}else{e=d;l=d}do{j=a[g>>0]|0;do{if((e|0)!=0){k=e+24|0;d=c[k>>2]|0;if((d|0)==(c[e+28>>2]|0)){n=(pc[c[(c[e>>2]|0)+52>>2]&63](e,j&255)|0)==-1;l=n?0:l;e=n?0:e;break}else{c[k>>2]=d+1;a[d>>0]=j;break}}else{e=0}}while(0);g=g+1|0}while((g|0)!=(h|0));c[b>>2]=l;i=f;return}function $n(b){b=b|0;var d=0,e=0,f=0;d=i;e=b+8|0;f=c[e>>2]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}if((f|0)==(c[270684]|0)){Ys(b);i=d;return}Kb(c[e>>2]|0);Ys(b);i=d;return}function ao(b){b=b|0;var d=0,e=0;d=i;b=b+8|0;e=c[b>>2]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}if((e|0)==(c[270684]|0)){i=d;return}Kb(c[b>>2]|0);i=d;return}function bo(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;f=i;i=i+416|0;e=f+8|0;k=f;c[k>>2]=e+400;co(b+8|0,e,k,g,h,j);b=c[k>>2]|0;g=c[d>>2]|0;if((e|0)==(b|0)){k=g;c[a>>2]=k;i=f;return}else{d=g}do{h=c[e>>2]|0;if((g|0)==0){g=0}else{j=g+24|0;k=c[j>>2]|0;if((k|0)==(c[g+28>>2]|0)){h=pc[c[(c[g>>2]|0)+52>>2]&63](g,h)|0}else{c[j>>2]=k+4;c[k>>2]=h}k=(h|0)==-1;d=k?0:d;g=k?0:g}e=e+4|0}while((e|0)!=(b|0));c[a>>2]=d;i=f;return}function co(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+128|0;o=j+112|0;m=j+12|0;k=j;l=j+8|0;a[o>>0]=37;p=o+1|0;a[p>>0]=g;n=o+2|0;a[n>>0]=h;a[o+3>>0]=0;if(!(h<<24>>24==0)){a[p>>0]=h;a[n>>0]=g}$a(m|0,100,o|0,f|0,c[b>>2]|0)|0;g=k;c[g>>2]=0;c[g+4>>2]=0;c[l>>2]=m;g=(c[e>>2]|0)-d>>2;m=cb(c[b>>2]|0)|0;k=fs(d,l,g,k)|0;if((m|0)!=0){cb(m|0)|0}if((k|0)==-1){$o(1083728)}else{c[e>>2]=d+(k<<2);i=j;return}}function eo(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function fo(a){a=a|0;return}function go(a){a=a|0;return 127}function ho(a){a=a|0;return 127}function io(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function jo(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function ko(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function lo(a,b){a=a|0;b=b|0;b=i;bk(a,1,45);i=b;return}function mo(a){a=a|0;return 0}function no(b,c){b=b|0;c=c|0;a[b>>0]=67109634;a[b+1>>0]=262147;a[b+2>>0]=1024;a[b+3>>0]=4;return}function oo(b,c){b=b|0;c=c|0;a[b>>0]=67109634;a[b+1>>0]=262147;a[b+2>>0]=1024;a[b+3>>0]=4;return}function po(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function qo(a){a=a|0;return}function ro(a){a=a|0;return 127}function so(a){a=a|0;return 127}function to(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function uo(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function vo(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function wo(a,b){a=a|0;b=b|0;b=i;bk(a,1,45);i=b;return}function xo(a){a=a|0;return 0}function yo(b,c){b=b|0;c=c|0;a[b>>0]=67109634;a[b+1>>0]=262147;a[b+2>>0]=1024;a[b+3>>0]=4;return}function zo(b,c){b=b|0;c=c|0;a[b>>0]=67109634;a[b+1>>0]=262147;a[b+2>>0]=1024;a[b+3>>0]=4;return}function Ao(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Bo(a){a=a|0;return}function Co(a){a=a|0;return 2147483647}function Do(a){a=a|0;return 2147483647}function Eo(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function Fo(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function Go(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function Ho(a,b){a=a|0;b=b|0;b=i;pk(a,1,45);i=b;return}function Io(a){a=a|0;return 0}function Jo(b,c){b=b|0;c=c|0;a[b>>0]=67109634;a[b+1>>0]=262147;a[b+2>>0]=1024;a[b+3>>0]=4;return}function Ko(b,c){b=b|0;c=c|0;a[b>>0]=67109634;a[b+1>>0]=262147;a[b+2>>0]=1024;a[b+3>>0]=4;return}function Lo(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Mo(a){a=a|0;return}function No(a){a=a|0;return 2147483647}function Oo(a){a=a|0;return 2147483647}function Po(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function Qo(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function Ro(a,b){a=a|0;b=b|0;b=i;c[a+0>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;i=b;return}function So(a,b){a=a|0;b=b|0;b=i;pk(a,1,45);i=b;return}function To(a){a=a|0;return 0}function Uo(b,c){b=b|0;c=c|0;a[b>>0]=67109634;a[b+1>>0]=262147;a[b+2>>0]=1024;a[b+3>>0]=4;return}function Vo(b,c){b=b|0;c=c|0;a[b>>0]=67109634;a[b+1>>0]=262147;a[b+2>>0]=1024;a[b+3>>0]=4;return}function Wo(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Xo(a){a=a|0;return}function Yo(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;m=i;i=i+256|0;q=m;w=m+144|0;d=m+24|0;t=m+20|0;o=m+16|0;v=m+142|0;x=m+12|0;s=m+132|0;r=m+32|0;c[d>>2]=w;n=d+4|0;c[n>>2]=223;w=w+100|0;Bk(o,h);A=c[o>>2]|0;if(!((c[270712]|0)==-1)){c[q>>2]=1082848;c[q+4>>2]=221;c[q+8>>2]=0;Yj(1082848,q,222)}z=(c[1082852>>2]|0)+-1|0;y=c[A+8>>2]|0;if(!((c[A+12>>2]|0)-y>>2>>>0>z>>>0)){A=Ta(4)|0;us(A);Rb(A|0,1090808,189)}y=c[y+(z<<2)>>2]|0;if((y|0)==0){A=Ta(4)|0;us(A);Rb(A|0,1090808,189)}a[v>>0]=0;c[x>>2]=c[f>>2];A=c[h+4>>2]|0;c[q+0>>2]=c[x+0>>2];if(_o(e,q,g,o,A,j,v,y,d,t,w)|0){mc[c[(c[y>>2]|0)+32>>2]&7](y,1082464,1082474|0,s)|0;h=c[t>>2]|0;g=c[d>>2]|0;w=h-g|0;if((w|0)>98){w=Ps(w+2|0)|0;if((w|0)==0){bt()}else{p=w;u=w}}else{p=0;u=r}if((a[v>>0]|0)!=0){a[u>>0]=45;u=u+1|0}if(g>>>0<h>>>0){v=s+10|0;h=s;do{w=a[g>>0]|0;x=s;while(1){if((a[x>>0]|0)==w<<24>>24){break}x=x+1|0;if((x|0)==(v|0)){x=v;break}}a[u>>0]=a[1082464+(x-h)>>0]|0;g=g+1|0;u=u+1|0}while(g>>>0<(c[t>>2]|0)>>>0)}a[u>>0]=0;c[q>>2]=k;if((ks(r,1082480,q)|0)!=1){A=Ta(8)|0;Jj(A,1082488);Rb(A|0,1079840,104)}if((p|0)!=0){Qs(p)}}p=c[e>>2]|0;if((p|0)!=0){if((c[p+12>>2]|0)==(c[p+16>>2]|0)?(gc[c[(c[p>>2]|0)+36>>2]&127](p)|0)==-1:0){c[e>>2]=0;p=0}}else{p=0}k=(p|0)==0;e=c[f>>2]|0;do{if((e|0)!=0){if((c[e+12>>2]|0)!=(c[e+16>>2]|0)){if(k){break}else{l=33;break}}if(!((gc[c[(c[e>>2]|0)+36>>2]&127](e)|0)==-1)){if(k){break}else{l=33;break}}else{c[f>>2]=0;l=31;break}}else{l=31}}while(0);if((l|0)==31?k:0){l=33}if((l|0)==33){c[j>>2]=c[j>>2]|2}c[b>>2]=p;Dj(c[o>>2]|0)|0;l=c[d>>2]|0;c[d>>2]=0;if((l|0)==0){i=m;return}dc[c[n>>2]&255](l);i=m;return}function Zo(a){a=a|0;return}function _o(e,f,g,h,j,k,l,m,n,o,p){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,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;v=i;i=i+480|0;X=v+72|0;A=v+68|0;E=v+473|0;B=v+472|0;q=v+56|0;u=v+44|0;t=v+32|0;s=v+20|0;r=v+8|0;D=v+4|0;w=v;c[A>>2]=0;c[q+0>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[t+0>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;cp(g,h,A,E,B,q,u,t,s,D);c[o>>2]=c[n>>2];F=m+8|0;g=s+1|0;G=s+4|0;h=s+8|0;H=t+1|0;m=t+4|0;I=t+8|0;R=(j&512|0)!=0;j=u+1|0;P=u+8|0;O=u+4|0;N=r+1|0;Q=r+8|0;S=r+4|0;J=A+3|0;L=n+4|0;M=q+4|0;V=X+400|0;W=X;T=0;K=0;U=223;a:while(1){Y=c[e>>2]|0;do{if((Y|0)!=0){if((c[Y+12>>2]|0)==(c[Y+16>>2]|0)){if((gc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0)==-1){c[e>>2]=0;Y=0;break}else{Y=c[e>>2]|0;break}}}else{Y=0}}while(0);Z=(Y|0)==0;Y=c[f>>2]|0;do{if((Y|0)!=0){if((c[Y+12>>2]|0)!=(c[Y+16>>2]|0)){if(Z){break}else{z=X;C=U;x=269;break a}}if(!((gc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0)==-1)){if(Z){break}else{z=X;C=U;x=269;break a}}else{c[f>>2]=0;x=12;break}}else{x=12}}while(0);if((x|0)==12){x=0;if(Z){z=X;C=U;x=269;break}else{Y=0}}b:do{switch(a[A+T>>0]|0){case 0:{x=26;break};case 1:{if((T|0)==3){z=X;C=U;x=269;break a}x=c[e>>2]|0;Z=c[x+12>>2]|0;if((Z|0)==(c[x+16>>2]|0)){x=gc[c[(c[x>>2]|0)+36>>2]&127](x)|0}else{x=d[Z>>0]|0}if(!((x&255)<<24>>24>-1)){x=25;break a}if((b[(c[F>>2]|0)+(x<<24>>24<<1)>>1]&8192)==0){x=25;break a}_=c[e>>2]|0;Z=_+12|0;x=c[Z>>2]|0;if((x|0)==(c[_+16>>2]|0)){x=gc[c[(c[_>>2]|0)+40>>2]&127](_)|0}else{c[Z>>2]=x+1;x=d[x>>0]|0}ik(r,x&255);x=26;break};case 4:{Y=0;c:while(1){Z=c[e>>2]|0;do{if((Z|0)!=0){if((c[Z+12>>2]|0)==(c[Z+16>>2]|0)){if((gc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0)==-1){c[e>>2]=0;Z=0;break}else{Z=c[e>>2]|0;break}}}else{Z=0}}while(0);Z=(Z|0)==0;_=c[f>>2]|0;do{if((_|0)!=0){if((c[_+12>>2]|0)!=(c[_+16>>2]|0)){if(Z){break}else{break c}}if(!((gc[c[(c[_>>2]|0)+36>>2]&127](_)|0)==-1)){if(Z){break}else{break c}}else{c[f>>2]=0;x=173;break}}else{x=173}}while(0);if((x|0)==173?(x=0,Z):0){break}_=c[e>>2]|0;Z=c[_+12>>2]|0;if((Z|0)==(c[_+16>>2]|0)){_=gc[c[(c[_>>2]|0)+36>>2]&127](_)|0}else{_=d[Z>>0]|0}Z=_&255;if(Z<<24>>24>-1?!((b[(c[F>>2]|0)+(_<<24>>24<<1)>>1]&2048)==0):0){_=c[o>>2]|0;if((_|0)==(p|0)){$=(c[L>>2]|0)!=223;aa=c[n>>2]|0;_=p-aa|0;p=_>>>0<2147483647?_<<1:-1;aa=Ss($?aa:0,p)|0;if((aa|0)==0){x=182;break a}if(!$){$=c[n>>2]|0;c[n>>2]=aa;if(($|0)!=0){dc[c[L>>2]&255]($);aa=c[n>>2]|0}}else{c[n>>2]=aa}c[L>>2]=224;_=aa+_|0;c[o>>2]=_;p=(c[n>>2]|0)+p|0}c[o>>2]=_+1;a[_>>0]=Z;Y=Y+1|0}else{_=a[q>>0]|0;if((_&1)==0){_=(_&255)>>>1}else{_=c[M>>2]|0}if((_|0)==0|(Y|0)==0){break}if(!(Z<<24>>24==(a[B>>0]|0))){break}if((W|0)==(V|0)){W=W-X|0;V=W>>>0<2147483647?W<<1:-1;if((U|0)==223){X=0}U=Ss(X,V)|0;if((U|0)==0){x=198;break a}W=U+(W>>2<<2)|0;X=U;V=U+(V>>>2<<2)|0;U=224}c[W>>2]=Y;W=W+4|0;Y=0}Z=c[e>>2]|0;$=Z+12|0;_=c[$>>2]|0;if((_|0)==(c[Z+16>>2]|0)){gc[c[(c[Z>>2]|0)+40>>2]&127](Z)|0;continue}else{c[$>>2]=_+1;continue}}if(!((X|0)==(W|0)|(Y|0)==0)){if((W|0)==(V|0)){W=W-X|0;V=W>>>0<2147483647?W<<1:-1;if((U|0)==223){X=0}U=Ss(X,V)|0;if((U|0)==0){x=209;break a}W=U+(W>>2<<2)|0;X=U;V=U+(V>>>2<<2)|0;U=224}c[W>>2]=Y;W=W+4|0}Y=c[D>>2]|0;if((Y|0)>0){Z=c[e>>2]|0;do{if((Z|0)!=0){if((c[Z+12>>2]|0)==(c[Z+16>>2]|0)){if((gc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0)==-1){c[e>>2]=0;Z=0;break}else{Z=c[e>>2]|0;break}}}else{Z=0}}while(0);_=(Z|0)==0;Z=c[f>>2]|0;do{if((Z|0)!=0){if((c[Z+12>>2]|0)!=(c[Z+16>>2]|0)){if(_){break}else{x=229;break a}}if(!((gc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0)==-1)){if(_){break}else{x=229;break a}}else{c[f>>2]=0;x=223;break}}else{x=223}}while(0);if((x|0)==223){x=0;if(_){x=229;break a}else{Z=0}}$=c[e>>2]|0;_=c[$+12>>2]|0;if((_|0)==(c[$+16>>2]|0)){_=gc[c[(c[$>>2]|0)+36>>2]&127]($)|0}else{_=d[_>>0]|0}if(!((_&255)<<24>>24==(a[E>>0]|0))){x=229;break a}_=c[e>>2]|0;$=_+12|0;aa=c[$>>2]|0;if((aa|0)==(c[_+16>>2]|0)){gc[c[(c[_>>2]|0)+40>>2]&127](_)|0;$=Z;_=Z}else{c[$>>2]=aa+1;$=Z;_=Z}while(1){Z=c[e>>2]|0;do{if((Z|0)!=0){if((c[Z+12>>2]|0)==(c[Z+16>>2]|0)){if((gc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0)==-1){c[e>>2]=0;Z=0;break}else{Z=c[e>>2]|0;break}}}else{Z=0}}while(0);aa=(Z|0)==0;do{if((_|0)!=0){if((c[_+12>>2]|0)!=(c[_+16>>2]|0)){if(aa){Z=$;break}else{x=250;break a}}if(!((gc[c[(c[_>>2]|0)+36>>2]&127](_)|0)==-1)){if(aa^($|0)==0){Z=$;_=$;break}else{x=250;break a}}else{c[f>>2]=0;Z=0;x=243;break}}else{Z=$;x=243}}while(0);if((x|0)==243){x=0;if(aa){x=250;break a}else{_=0}}$=c[e>>2]|0;aa=c[$+12>>2]|0;if((aa|0)==(c[$+16>>2]|0)){$=gc[c[(c[$>>2]|0)+36>>2]&127]($)|0}else{$=d[aa>>0]|0}if(!(($&255)<<24>>24>-1)){x=250;break a}if((b[(c[F>>2]|0)+($<<24>>24<<1)>>1]&2048)==0){x=250;break a}$=c[o>>2]|0;if(($|0)==(p|0)){aa=(c[L>>2]|0)!=223;ba=c[n>>2]|0;$=p-ba|0;p=$>>>0<2147483647?$<<1:-1;ba=Ss(aa?ba:0,p)|0;if((ba|0)==0){x=253;break a}do{if(aa){c[n>>2]=ba}else{aa=c[n>>2]|0;c[n>>2]=ba;if((aa|0)==0){break}dc[c[L>>2]&255](aa);ba=c[n>>2]|0}}while(0);c[L>>2]=224;$=ba+$|0;c[o>>2]=$;p=(c[n>>2]|0)+p|0}aa=c[e>>2]|0;ba=c[aa+12>>2]|0;if((ba|0)==(c[aa+16>>2]|0)){aa=gc[c[(c[aa>>2]|0)+36>>2]&127](aa)|0;$=c[o>>2]|0}else{aa=d[ba>>0]|0}c[o>>2]=$+1;a[$>>0]=aa;Y=Y+-1|0;c[D>>2]=Y;$=c[e>>2]|0;aa=$+12|0;ba=c[aa>>2]|0;if((ba|0)==(c[$+16>>2]|0)){gc[c[(c[$>>2]|0)+40>>2]&127]($)|0}else{c[aa>>2]=ba+1}if((Y|0)<=0){break}else{$=Z}}}if((c[o>>2]|0)==(c[n>>2]|0)){x=267;break a}break};case 2:{if(!((K|0)!=0|T>>>0<2)){if((T|0)==2){Z=(a[J>>0]|0)!=0}else{Z=0}if(!(R|Z)){K=0;break b}}_=a[u>>0]|0;$=(_&1)==0;Z=$?j:c[P>>2]|0;d:do{if((T|0)!=0?(d[A+(T+-1)>>0]|0)<2:0){$=Z+($?(_&255)>>>1:c[O>>2]|0)|0;ba=Z;while(1){if((ba|0)==($|0)){break}aa=a[ba>>0]|0;if(!(aa<<24>>24>-1)){$=ba;break}if((b[(c[F>>2]|0)+(aa<<24>>24<<1)>>1]&8192)==0){$=ba;break}else{ba=ba+1|0}}aa=$-Z|0;ba=a[r>>0]|0;ca=(ba&1)==0;if(ca){da=(ba&255)>>>1}else{da=c[S>>2]|0}if(!(aa>>>0>da>>>0)){if(ca){da=(ba&255)>>>1;ba=N;ca=da;aa=r+(da-aa)+1|0}else{ea=c[Q>>2]|0;da=c[S>>2]|0;ba=ea;ca=da;aa=ea+(da-aa)|0}ba=ba+ca|0;if((aa|0)==(ba|0)){aa=Y;Z=$;$=Y}else{ca=Z;while(1){if((a[aa>>0]|0)!=(a[ca>>0]|0)){aa=Y;$=Y;break d}aa=aa+1|0;if((aa|0)==(ba|0)){aa=Y;Z=$;$=Y;break}else{ca=ca+1|0}}}}else{aa=Y;$=Y}}else{aa=Y;$=Y}}while(0);e:while(1){if((_&1)==0){Y=j;_=(_&255)>>>1}else{Y=c[P>>2]|0;_=c[O>>2]|0}if((Z|0)==(Y+_|0)){break}Y=c[e>>2]|0;do{if((Y|0)!=0){if((c[Y+12>>2]|0)==(c[Y+16>>2]|0)){if((gc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0)==-1){c[e>>2]=0;Y=0;break}else{Y=c[e>>2]|0;break}}}else{Y=0}}while(0);Y=(Y|0)==0;do{if(($|0)!=0){if((c[$+12>>2]|0)!=(c[$+16>>2]|0)){if(Y){Y=aa;break}else{break e}}if(!((gc[c[(c[$>>2]|0)+36>>2]&127]($)|0)==-1)){if(Y^(aa|0)==0){Y=aa;$=aa;break}else{break e}}else{c[f>>2]=0;aa=0;x=147;break}}else{x=147}}while(0);if((x|0)==147){x=0;if(Y){break}else{Y=aa;$=0}}aa=c[e>>2]|0;_=c[aa+12>>2]|0;if((_|0)==(c[aa+16>>2]|0)){_=gc[c[(c[aa>>2]|0)+36>>2]&127](aa)|0}else{_=d[_>>0]|0}if(!((_&255)<<24>>24==(a[Z>>0]|0))){break}ba=c[e>>2]|0;_=ba+12|0;aa=c[_>>2]|0;if((aa|0)==(c[ba+16>>2]|0)){gc[c[(c[ba>>2]|0)+40>>2]&127](ba)|0}else{c[_>>2]=aa+1}aa=Y;_=a[u>>0]|0;Z=Z+1|0}if(R){_=a[u>>0]|0;if((_&1)==0){Y=j;_=(_&255)>>>1}else{Y=c[P>>2]|0;_=c[O>>2]|0}if((Z|0)!=(Y+_|0)){x=162;break a}}break};case 3:{Y=a[t>>0]|0;_=(Y&1)==0;if(_){aa=(Y&255)>>>1}else{aa=c[m>>2]|0}Z=a[s>>0]|0;$=(Z&1)==0;if($){ba=(Z&255)>>>1}else{ba=c[G>>2]|0}if((aa|0)!=(0-ba|0)){if(_){aa=(Y&255)>>>1}else{aa=c[m>>2]|0}if((aa|0)!=0){if($){$=(Z&255)>>>1}else{$=c[G>>2]|0}if(($|0)!=0){_=c[e>>2]|0;aa=c[_+12>>2]|0;$=c[_+16>>2]|0;if((aa|0)==($|0)){Z=gc[c[(c[_>>2]|0)+36>>2]&127](_)|0;$=c[e>>2]|0;Y=a[t>>0]|0;_=$;aa=c[$+12>>2]|0;$=c[$+16>>2]|0}else{Z=d[aa>>0]|0}ba=_+12|0;$=(aa|0)==($|0);if((Z&255)<<24>>24==(a[((Y&1)==0?H:c[I>>2]|0)>>0]|0)){if($){gc[c[(c[_>>2]|0)+40>>2]&127](_)|0}else{c[ba>>2]=aa+1}Y=a[t>>0]|0;if((Y&1)==0){Y=(Y&255)>>>1}else{Y=c[m>>2]|0}K=Y>>>0>1?t:K;break b}if($){Y=gc[c[(c[_>>2]|0)+36>>2]&127](_)|0}else{Y=d[aa>>0]|0}if(!((Y&255)<<24>>24==(a[((a[s>>0]&1)==0?g:c[h>>2]|0)>>0]|0))){x=112;break a}Y=c[e>>2]|0;Z=Y+12|0;_=c[Z>>2]|0;if((_|0)==(c[Y+16>>2]|0)){gc[c[(c[Y>>2]|0)+40>>2]&127](Y)|0}else{c[Z>>2]=_+1}a[l>>0]=1;Y=a[s>>0]|0;if((Y&1)==0){Y=(Y&255)>>>1}else{Y=c[G>>2]|0}K=Y>>>0>1?s:K;break b}}if(_){_=(Y&255)>>>1}else{_=c[m>>2]|0}$=c[e>>2]|0;aa=c[$+12>>2]|0;ba=(aa|0)==(c[$+16>>2]|0);if((_|0)==0){if(ba){Y=gc[c[(c[$>>2]|0)+36>>2]&127]($)|0;Z=a[s>>0]|0}else{Y=d[aa>>0]|0}if(!((Y&255)<<24>>24==(a[((Z&1)==0?g:c[h>>2]|0)>>0]|0))){break b}_=c[e>>2]|0;Z=_+12|0;Y=c[Z>>2]|0;if((Y|0)==(c[_+16>>2]|0)){gc[c[(c[_>>2]|0)+40>>2]&127](_)|0}else{c[Z>>2]=Y+1}a[l>>0]=1;Y=a[s>>0]|0;if((Y&1)==0){Y=(Y&255)>>>1}else{Y=c[G>>2]|0}K=Y>>>0>1?s:K;break b}if(ba){Z=gc[c[(c[$>>2]|0)+36>>2]&127]($)|0;Y=a[t>>0]|0}else{Z=d[aa>>0]|0}if(!((Z&255)<<24>>24==(a[((Y&1)==0?H:c[I>>2]|0)>>0]|0))){a[l>>0]=1;break b}_=c[e>>2]|0;Z=_+12|0;Y=c[Z>>2]|0;if((Y|0)==(c[_+16>>2]|0)){gc[c[(c[_>>2]|0)+40>>2]&127](_)|0}else{c[Z>>2]=Y+1}Y=a[t>>0]|0;if((Y&1)==0){Y=(Y&255)>>>1}else{Y=c[m>>2]|0}K=Y>>>0>1?t:K}break};default:{}}}while(0);f:do{if((x|0)==26){x=0;if((T|0)==3){z=X;C=U;x=269;break a}else{_=Y;Z=Y}while(1){Y=c[e>>2]|0;do{if((Y|0)!=0){if((c[Y+12>>2]|0)==(c[Y+16>>2]|0)){if((gc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0)==-1){c[e>>2]=0;Y=0;break}else{Y=c[e>>2]|0;break}}}else{Y=0}}while(0);$=(Y|0)==0;do{if((Z|0)!=0){if((c[Z+12>>2]|0)!=(c[Z+16>>2]|0)){if($){Y=_;break}else{break f}}if(!((gc[c[(c[Z>>2]|0)+36>>2]&127](Z)|0)==-1)){if($^(_|0)==0){Y=_;Z=_;break}else{break f}}else{c[f>>2]=0;Y=0;x=37;break}}else{Y=_;x=37}}while(0);if((x|0)==37){x=0;if($){break f}else{Z=0}}$=c[e>>2]|0;_=c[$+12>>2]|0;if((_|0)==(c[$+16>>2]|0)){_=gc[c[(c[$>>2]|0)+36>>2]&127]($)|0}else{_=d[_>>0]|0}if(!((_&255)<<24>>24>-1)){break f}if((b[(c[F>>2]|0)+(_<<24>>24<<1)>>1]&8192)==0){break f}_=c[e>>2]|0;$=_+12|0;aa=c[$>>2]|0;if((aa|0)==(c[_+16>>2]|0)){_=gc[c[(c[_>>2]|0)+40>>2]&127](_)|0}else{c[$>>2]=aa+1;_=d[aa>>0]|0}ik(r,_&255);_=Y}}}while(0);T=T+1|0;if(!(T>>>0<4)){z=X;C=U;x=269;break}}g:switch(x|0){case 25:{c[k>>2]=c[k>>2]|4;y=0;z=X;C=U;break};case 112:{c[k>>2]=c[k>>2]|4;y=0;z=X;C=U;break};case 162:{c[k>>2]=c[k>>2]|4;y=0;z=X;C=U;break};case 182:{bt();break};case 198:{bt();break};case 209:{bt();break};case 229:{c[k>>2]=c[k>>2]|4;y=0;z=X;C=U;break};case 250:{c[k>>2]=c[k>>2]|4;y=0;z=X;C=U;break};case 253:{bt();break};case 267:{c[k>>2]=c[k>>2]|4;y=0;z=X;C=U;break};case 269:{h:do{if((K|0)!=0){A=K+1|0;y=K+8|0;B=K+4|0;n=1;i:while(1){o=a[K>>0]|0;if((o&1)==0){o=(o&255)>>>1}else{o=c[B>>2]|0}if(!(n>>>0<o>>>0)){break h}o=c[e>>2]|0;do{if((o|0)!=0){if((c[o+12>>2]|0)==(c[o+16>>2]|0)){if((gc[c[(c[o>>2]|0)+36>>2]&127](o)|0)==-1){c[e>>2]=0;o=0;break}else{o=c[e>>2]|0;break}}}else{o=0}}while(0);l=(o|0)==0;o=c[f>>2]|0;do{if((o|0)!=0){if((c[o+12>>2]|0)!=(c[o+16>>2]|0)){if(l){break}else{break i}}if(!((gc[c[(c[o>>2]|0)+36>>2]&127](o)|0)==-1)){if(l){break}else{break i}}else{c[f>>2]=0;x=285;break}}else{x=285}}while(0);if((x|0)==285?(x=0,l):0){break}o=c[e>>2]|0;l=c[o+12>>2]|0;if((l|0)==(c[o+16>>2]|0)){o=gc[c[(c[o>>2]|0)+36>>2]&127](o)|0}else{o=d[l>>0]|0}if((a[K>>0]&1)==0){l=A}else{l=c[y>>2]|0}if(!((o&255)<<24>>24==(a[l+n>>0]|0))){break}n=n+1|0;l=c[e>>2]|0;o=l+12|0;D=c[o>>2]|0;if((D|0)==(c[l+16>>2]|0)){gc[c[(c[l>>2]|0)+40>>2]&127](l)|0;continue}else{c[o>>2]=D+1;continue}}c[k>>2]=c[k>>2]|4;y=0;break g}}while(0);if((z|0)!=(W|0)){c[w>>2]=0;dp(q,z,W,w);if((c[w>>2]|0)==0){y=1}else{c[k>>2]=c[k>>2]|4;y=0}}else{y=1;z=W}break}}ck(r);ck(s);ck(t);ck(u);ck(q);if((z|0)==0){i=v;return y|0}dc[C&255](z);i=v;return y|0}function $o(a){a=a|0;var b=0;b=Ta(8)|0;Jj(b,a);Rb(b|0,1079840,104)}function ap(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+144|0;u=m;s=m+36|0;d=m+24|0;q=m+20|0;o=m+16|0;r=m+32|0;t=m+12|0;c[d>>2]=s;n=d+4|0;c[n>>2]=223;s=s+100|0;Bk(o,h);p=c[o>>2]|0;if(!((c[270712]|0)==-1)){c[u>>2]=1082848;c[u+4>>2]=221;c[u+8>>2]=0;Yj(1082848,u,222)}w=(c[1082852>>2]|0)+-1|0;v=c[p+8>>2]|0;if(!((c[p+12>>2]|0)-v>>2>>>0>w>>>0)){w=Ta(4)|0;us(w);Rb(w|0,1090808,189)}v=c[v+(w<<2)>>2]|0;if((v|0)==0){w=Ta(4)|0;us(w);Rb(w|0,1090808,189)}a[r>>0]=0;p=c[f>>2]|0;c[t>>2]=p;w=c[h+4>>2]|0;c[u+0>>2]=c[t+0>>2];if(_o(e,u,g,o,w,j,r,v,d,q,s)|0){if((a[k>>0]&1)==0){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}if((a[r>>0]|0)!=0){ik(k,pc[c[(c[v>>2]|0)+28>>2]&63](v,45)|0)}h=pc[c[(c[v>>2]|0)+28>>2]&63](v,48)|0;r=c[d>>2]|0;q=c[q>>2]|0;g=q+-1|0;a:do{if(r>>>0<g>>>0){s=r;while(1){r=s+1|0;if(!((a[s>>0]|0)==h<<24>>24)){r=s;break a}if(r>>>0<g>>>0){s=r}else{break}}}}while(0);bp(k,r,q)|0}k=c[e>>2]|0;if((k|0)!=0){if((c[k+12>>2]|0)==(c[k+16>>2]|0)?(gc[c[(c[k>>2]|0)+36>>2]&127](k)|0)==-1:0){c[e>>2]=0;k=0}}else{k=0}e=(k|0)==0;do{if((p|0)!=0){if((c[p+12>>2]|0)!=(c[p+16>>2]|0)){if(e){break}else{l=27;break}}if(!((gc[c[(c[p>>2]|0)+36>>2]&127](p)|0)==-1)){if(e^(p|0)==0){break}else{l=27;break}}else{c[f>>2]=0;l=25;break}}else{l=25}}while(0);if((l|0)==25?e:0){l=27}if((l|0)==27){c[j>>2]=c[j>>2]|2}c[b>>2]=k;Dj(c[o>>2]|0)|0;j=c[d>>2]|0;c[d>>2]=0;if((j|0)==0){i=m;return}dc[c[n>>2]&255](j);i=m;return}function bp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;j=d;l=a[b>>0]|0;if((l&1)==0){k=10;g=(l&255)>>>1}else{l=c[b>>2]|0;k=(l&-2)+-1|0;g=c[b+4>>2]|0;l=l&255}h=e-j|0;if((e|0)==(d|0)){i=f;return b|0}if((k-g|0)>>>0<h>>>0){lk(b,k,g+h-k|0,g,g,0,0);l=a[b>>0]|0}if((l&1)==0){k=b+1|0}else{k=c[b+8>>2]|0}j=e+(g-j)|0;l=k+g|0;while(1){a[l>>0]=a[d>>0]|0;d=d+1|0;if((d|0)==(e|0)){break}else{l=l+1|0}}a[k+j>>0]=0;e=g+h|0;if((a[b>>0]&1)==0){a[b>>0]=e<<1;i=f;return b|0}else{c[b+4>>2]=e;i=f;return b|0}return 0}function cp(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;n=i;i=i+128|0;y=n;v=n+112|0;w=n+100|0;x=n+88|0;o=n+76|0;u=n+64|0;r=n+60|0;q=n+48|0;t=n+36|0;p=n+24|0;s=n+12|0;if(b){p=c[d>>2]|0;if(!((c[270572]|0)==-1)){c[y>>2]=1082288;c[y+4>>2]=221;c[y+8>>2]=0;Yj(1082288,y,222)}r=(c[1082292>>2]|0)+-1|0;q=c[p+8>>2]|0;if(!((c[p+12>>2]|0)-q>>2>>>0>r>>>0)){d=Ta(4)|0;us(d);Rb(d|0,1090808,189)}p=c[q+(r<<2)>>2]|0;if((p|0)==0){d=Ta(4)|0;us(d);Rb(d|0,1090808,189)}ec[c[(c[p>>2]|0)+44>>2]&63](v,p);d=c[v>>2]|0;a[e>>0]=d;a[e+1>>0]=d>>8;a[e+2>>0]=d>>16;a[e+3>>0]=d>>24;ec[c[(c[p>>2]|0)+32>>2]&63](w,p);if((a[l>>0]&1)==0){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}hk(l,0);c[l+0>>2]=c[w+0>>2];c[l+4>>2]=c[w+4>>2];c[l+8>>2]=c[w+8>>2];c[w+0>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;ck(w);ec[c[(c[p>>2]|0)+28>>2]&63](x,p);if((a[k>>0]&1)==0){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}hk(k,0);c[k+0>>2]=c[x+0>>2];c[k+4>>2]=c[x+4>>2];c[k+8>>2]=c[x+8>>2];c[x+0>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;ck(x);a[f>>0]=gc[c[(c[p>>2]|0)+12>>2]&127](p)|0;a[g>>0]=gc[c[(c[p>>2]|0)+16>>2]&127](p)|0;ec[c[(c[p>>2]|0)+20>>2]&63](o,p);if((a[h>>0]&1)==0){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}hk(h,0);
+c[h+0>>2]=c[o+0>>2];c[h+4>>2]=c[o+4>>2];c[h+8>>2]=c[o+8>>2];c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;ck(o);ec[c[(c[p>>2]|0)+24>>2]&63](u,p);if((a[j>>0]&1)==0){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}hk(j,0);c[j+0>>2]=c[u+0>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;ck(u);d=gc[c[(c[p>>2]|0)+36>>2]&127](p)|0;c[m>>2]=d;i=n;return}else{o=c[d>>2]|0;if(!((c[270556]|0)==-1)){c[y>>2]=1082224;c[y+4>>2]=221;c[y+8>>2]=0;Yj(1082224,y,222)}u=(c[1082228>>2]|0)+-1|0;v=c[o+8>>2]|0;if(!((c[o+12>>2]|0)-v>>2>>>0>u>>>0)){d=Ta(4)|0;us(d);Rb(d|0,1090808,189)}o=c[v+(u<<2)>>2]|0;if((o|0)==0){d=Ta(4)|0;us(d);Rb(d|0,1090808,189)}ec[c[(c[o>>2]|0)+44>>2]&63](r,o);d=c[r>>2]|0;a[e>>0]=d;a[e+1>>0]=d>>8;a[e+2>>0]=d>>16;a[e+3>>0]=d>>24;ec[c[(c[o>>2]|0)+32>>2]&63](q,o);if((a[l>>0]&1)==0){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}hk(l,0);c[l+0>>2]=c[q+0>>2];c[l+4>>2]=c[q+4>>2];c[l+8>>2]=c[q+8>>2];c[q+0>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;ck(q);ec[c[(c[o>>2]|0)+28>>2]&63](t,o);if((a[k>>0]&1)==0){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}hk(k,0);c[k+0>>2]=c[t+0>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[t+0>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;ck(t);a[f>>0]=gc[c[(c[o>>2]|0)+12>>2]&127](o)|0;a[g>>0]=gc[c[(c[o>>2]|0)+16>>2]&127](o)|0;ec[c[(c[o>>2]|0)+20>>2]&63](p,o);if((a[h>>0]&1)==0){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}hk(h,0);c[h+0>>2]=c[p+0>>2];c[h+4>>2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;ck(p);ec[c[(c[o>>2]|0)+24>>2]&63](s,o);if((a[j>>0]&1)==0){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}hk(j,0);c[j+0>>2]=c[s+0>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;ck(s);d=gc[c[(c[o>>2]|0)+36>>2]&127](o)|0;c[m>>2]=d;i=n;return}}function dp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;k=a[b>>0]|0;if((k&1)==0){j=(k&255)>>>1}else{j=c[b+4>>2]|0}if((j|0)==0){i=g;return}if((d|0)!=(e|0)?(h=e+-4|0,h>>>0>d>>>0):0){j=d;do{k=c[j>>2]|0;c[j>>2]=c[h>>2];c[h>>2]=k;j=j+4|0;h=h+-4|0}while(j>>>0<h>>>0);k=a[b>>0]|0}if((k&1)==0){h=b+1|0;b=(k&255)>>>1}else{h=c[b+8>>2]|0;b=c[b+4>>2]|0}e=e+-4|0;k=a[h>>0]|0;j=k<<24>>24<1|k<<24>>24==127;a:do{if(e>>>0>d>>>0){b=h+b|0;while(1){if(!j?(k<<24>>24|0)!=(c[d>>2]|0):0){break}h=(b-h|0)>1?h+1|0:h;d=d+4|0;k=a[h>>0]|0;j=k<<24>>24<1|k<<24>>24==127;if(!(d>>>0<e>>>0)){break a}}c[f>>2]=4;i=g;return}}while(0);if(j){i=g;return}j=c[e>>2]|0;if(!(k<<24>>24>>>0<j>>>0|(j|0)==0)){i=g;return}c[f>>2]=4;i=g;return}function ep(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function fp(a){a=a|0;return}function gp(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;m=i;i=i+592|0;r=m;x=m+80|0;d=m+72|0;t=m+64|0;o=m+60|0;v=m+580|0;w=m+56|0;s=m+16|0;q=m+480|0;c[d>>2]=x;n=d+4|0;c[n>>2]=223;x=x+400|0;Bk(o,h);z=c[o>>2]|0;if(!((c[270710]|0)==-1)){c[r>>2]=1082840;c[r+4>>2]=221;c[r+8>>2]=0;Yj(1082840,r,222)}y=(c[1082844>>2]|0)+-1|0;A=c[z+8>>2]|0;if(!((c[z+12>>2]|0)-A>>2>>>0>y>>>0)){A=Ta(4)|0;us(A);Rb(A|0,1090808,189)}y=c[A+(y<<2)>>2]|0;if((y|0)==0){A=Ta(4)|0;us(A);Rb(A|0,1090808,189)}a[v>>0]=0;c[w>>2]=c[f>>2];A=c[h+4>>2]|0;c[r+0>>2]=c[w+0>>2];if(hp(e,r,g,o,A,j,v,y,d,t,x)|0){mc[c[(c[y>>2]|0)+48>>2]&7](y,1082544,1082554|0,s)|0;h=c[t>>2]|0;g=c[d>>2]|0;w=h-g|0;if((w|0)>392){w=Ps((w>>2)+2|0)|0;if((w|0)==0){bt()}else{p=w;u=w}}else{p=0;u=q}if((a[v>>0]|0)!=0){a[u>>0]=45;u=u+1|0}if(g>>>0<h>>>0){v=s+40|0;h=s;do{w=c[g>>2]|0;x=s;while(1){if((c[x>>2]|0)==(w|0)){break}x=x+4|0;if((x|0)==(v|0)){x=v;break}}a[u>>0]=a[1082544+(x-h>>2)>>0]|0;g=g+4|0;u=u+1|0}while(g>>>0<(c[t>>2]|0)>>>0)}a[u>>0]=0;c[r>>2]=k;if((ks(q,1082480,r)|0)!=1){A=Ta(8)|0;Jj(A,1082488);Rb(A|0,1079840,104)}if((p|0)!=0){Qs(p)}}p=c[e>>2]|0;do{if((p|0)!=0){k=c[p+12>>2]|0;if((k|0)==(c[p+16>>2]|0)){p=gc[c[(c[p>>2]|0)+36>>2]&127](p)|0}else{p=c[k>>2]|0}if((p|0)==-1){c[e>>2]=0;p=1;break}else{p=(c[e>>2]|0)==0;break}}else{p=1}}while(0);k=c[f>>2]|0;do{if((k|0)!=0){q=c[k+12>>2]|0;if((q|0)==(c[k+16>>2]|0)){k=gc[c[(c[k>>2]|0)+36>>2]&127](k)|0}else{k=c[q>>2]|0}if(!((k|0)==-1)){if(p){break}else{l=37;break}}else{c[f>>2]=0;l=35;break}}else{l=35}}while(0);if((l|0)==35?p:0){l=37}if((l|0)==37){c[j>>2]=c[j>>2]|2}c[b>>2]=c[e>>2];Dj(c[o>>2]|0)|0;e=c[d>>2]|0;c[d>>2]=0;if((e|0)==0){i=m;return}dc[c[n>>2]&255](e);i=m;return}function hp(b,e,f,g,h,j,k,l,m,n,o){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,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;p=i;i=i+480|0;R=p+80|0;z=p+76|0;D=p+72|0;B=p+68|0;v=p+56|0;t=p+44|0;u=p+32|0;r=p+20|0;s=p+8|0;C=p+4|0;q=p;c[z>>2]=0;c[v+0>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[t+0>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;kp(f,g,z,D,B,v,t,u,r,C);c[n>>2]=c[m>>2];F=r+4|0;E=r+8|0;f=u+4|0;g=u+8|0;J=(h&512|0)!=0;I=t+4|0;N=t+8|0;G=s+4|0;M=s+8|0;L=z+3|0;H=m+4|0;K=v+4|0;Q=R+400|0;S=R;O=0;h=0;P=223;a:while(1){U=c[b>>2]|0;do{if((U|0)!=0){T=c[U+12>>2]|0;if((T|0)==(c[U+16>>2]|0)){T=gc[c[(c[U>>2]|0)+36>>2]&127](U)|0}else{T=c[T>>2]|0}if((T|0)==-1){c[b>>2]=0;U=1;break}else{U=(c[b>>2]|0)==0;break}}else{U=1}}while(0);T=c[e>>2]|0;do{if((T|0)!=0){V=c[T+12>>2]|0;if((V|0)==(c[T+16>>2]|0)){V=gc[c[(c[T>>2]|0)+36>>2]&127](T)|0}else{V=c[V>>2]|0}if(!((V|0)==-1)){if(U){break}else{y=R;A=P;w=292;break a}}else{c[e>>2]=0;w=15;break}}else{w=15}}while(0);if((w|0)==15){w=0;if(U){y=R;A=P;w=292;break}else{T=0}}b:do{switch(a[z+O>>0]|0){case 3:{T=a[u>>0]|0;V=(T&1)==0;if(V){Y=(T&255)>>>1}else{Y=c[f>>2]|0}U=a[r>>0]|0;W=(U&1)==0;if(W){X=(U&255)>>>1}else{X=c[F>>2]|0}if((Y|0)!=(0-X|0)){if(V){X=(T&255)>>>1}else{X=c[f>>2]|0}if((X|0)!=0){if(W){W=(U&255)>>>1}else{W=c[F>>2]|0}if((W|0)!=0){V=c[b>>2]|0;U=c[V+12>>2]|0;if((U|0)==(c[V+16>>2]|0)){U=gc[c[(c[V>>2]|0)+36>>2]&127](V)|0;T=a[u>>0]|0}else{U=c[U>>2]|0}V=c[b>>2]|0;X=V+12|0;W=c[X>>2]|0;Y=(W|0)==(c[V+16>>2]|0);if((U|0)==(c[((T&1)==0?f:c[g>>2]|0)>>2]|0)){if(Y){gc[c[(c[V>>2]|0)+40>>2]&127](V)|0}else{c[X>>2]=W+4}T=a[u>>0]|0;if((T&1)==0){T=(T&255)>>>1}else{T=c[f>>2]|0}h=T>>>0>1?u:h;break b}if(Y){T=gc[c[(c[V>>2]|0)+36>>2]&127](V)|0}else{T=c[W>>2]|0}if((T|0)!=(c[((a[r>>0]&1)==0?F:c[E>>2]|0)>>2]|0)){w=116;break a}V=c[b>>2]|0;U=V+12|0;T=c[U>>2]|0;if((T|0)==(c[V+16>>2]|0)){gc[c[(c[V>>2]|0)+40>>2]&127](V)|0}else{c[U>>2]=T+4}a[k>>0]=1;T=a[r>>0]|0;if((T&1)==0){T=(T&255)>>>1}else{T=c[F>>2]|0}h=T>>>0>1?r:h;break b}}if(V){V=(T&255)>>>1}else{V=c[f>>2]|0}W=c[b>>2]|0;X=c[W+12>>2]|0;Y=(X|0)==(c[W+16>>2]|0);if((V|0)==0){if(Y){T=gc[c[(c[W>>2]|0)+36>>2]&127](W)|0;U=a[r>>0]|0}else{T=c[X>>2]|0}if((T|0)!=(c[((U&1)==0?F:c[E>>2]|0)>>2]|0)){break b}T=c[b>>2]|0;U=T+12|0;V=c[U>>2]|0;if((V|0)==(c[T+16>>2]|0)){gc[c[(c[T>>2]|0)+40>>2]&127](T)|0}else{c[U>>2]=V+4}a[k>>0]=1;T=a[r>>0]|0;if((T&1)==0){T=(T&255)>>>1}else{T=c[F>>2]|0}h=T>>>0>1?r:h;break b}if(Y){U=gc[c[(c[W>>2]|0)+36>>2]&127](W)|0;T=a[u>>0]|0}else{U=c[X>>2]|0}if((U|0)!=(c[((T&1)==0?f:c[g>>2]|0)>>2]|0)){a[k>>0]=1;break b}T=c[b>>2]|0;U=T+12|0;V=c[U>>2]|0;if((V|0)==(c[T+16>>2]|0)){gc[c[(c[T>>2]|0)+40>>2]&127](T)|0}else{c[U>>2]=V+4}T=a[u>>0]|0;if((T&1)==0){T=(T&255)>>>1}else{T=c[f>>2]|0}h=T>>>0>1?u:h}break};case 0:{w=28;break};case 2:{if(!((h|0)!=0|O>>>0<2)){if((O|0)==2){U=(a[L>>0]|0)!=0}else{U=0}if(!(J|U)){h=0;break b}}X=a[t>>0]|0;U=(X&1)==0?I:c[N>>2]|0;c:do{if((O|0)!=0?(d[z+(O+-1)>>0]|0)<2:0){while(1){if((X&1)==0){V=I;W=(X&255)>>>1}else{V=c[N>>2]|0;W=c[I>>2]|0}if((U|0)==(V+(W<<2)|0)){break}if(!(ac[c[(c[l>>2]|0)+12>>2]&31](l,8192,c[U>>2]|0)|0)){w=129;break}X=a[t>>0]|0;U=U+4|0}if((w|0)==129){w=0;X=a[t>>0]|0}W=(X&1)==0;Y=U-(W?I:c[N>>2]|0)>>2;V=a[s>>0]|0;Z=(V&1)==0;if(Z){_=(V&255)>>>1}else{_=c[G>>2]|0}d:do{if(!(Y>>>0>_>>>0)){if(Z){_=G;Z=(V&255)>>>1;Y=G+(((V&255)>>>1)-Y<<2)|0}else{$=c[M>>2]|0;V=c[G>>2]|0;_=$;Z=V;Y=$+(V-Y<<2)|0}V=_+(Z<<2)|0;if((Y|0)==(V|0)){V=T;break c}else{Z=W?I:c[N>>2]|0}while(1){if((c[Y>>2]|0)!=(c[Z>>2]|0)){break d}Y=Y+4|0;if((Y|0)==(V|0)){V=T;break c}Z=Z+4|0}}}while(0);V=T;U=W?I:c[N>>2]|0}else{V=T}}while(0);e:while(1){if((X&1)==0){W=I;X=(X&255)>>>1}else{W=c[N>>2]|0;X=c[I>>2]|0}if((U|0)==(W+(X<<2)|0)){break}X=c[b>>2]|0;do{if((X|0)!=0){W=c[X+12>>2]|0;if((W|0)==(c[X+16>>2]|0)){W=gc[c[(c[X>>2]|0)+36>>2]&127](X)|0}else{W=c[W>>2]|0}if((W|0)==-1){c[b>>2]=0;W=1;break}else{W=(c[b>>2]|0)==0;break}}else{W=1}}while(0);do{if((T|0)!=0){X=c[T+12>>2]|0;if((X|0)==(c[T+16>>2]|0)){T=gc[c[(c[T>>2]|0)+36>>2]&127](T)|0}else{T=c[X>>2]|0}if(!((T|0)==-1)){if(W^(V|0)==0){W=V;T=V;break}else{break e}}else{c[e>>2]=0;V=0;w=159;break}}else{w=159}}while(0);if((w|0)==159){w=0;if(W){break}else{W=V;T=0}}V=c[b>>2]|0;X=c[V+12>>2]|0;if((X|0)==(c[V+16>>2]|0)){V=gc[c[(c[V>>2]|0)+36>>2]&127](V)|0}else{V=c[X>>2]|0}if((V|0)!=(c[U>>2]|0)){break}Y=c[b>>2]|0;X=Y+12|0;V=c[X>>2]|0;if((V|0)==(c[Y+16>>2]|0)){gc[c[(c[Y>>2]|0)+40>>2]&127](Y)|0}else{c[X>>2]=V+4}V=W;X=a[t>>0]|0;U=U+4|0}if(J){V=a[t>>0]|0;if((V&1)==0){T=I;V=(V&255)>>>1}else{T=c[N>>2]|0;V=c[I>>2]|0}if((U|0)!=(T+(V<<2)|0)){w=174;break a}}break};case 1:{if((O|0)==3){y=R;A=P;w=292;break a}w=c[b>>2]|0;U=c[w+12>>2]|0;if((U|0)==(c[w+16>>2]|0)){w=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{w=c[U>>2]|0}if(!(ac[c[(c[l>>2]|0)+12>>2]&31](l,8192,w)|0)){w=27;break a}w=c[b>>2]|0;V=w+12|0;U=c[V>>2]|0;if((U|0)==(c[w+16>>2]|0)){w=gc[c[(c[w>>2]|0)+40>>2]&127](w)|0}else{c[V>>2]=U+4;w=c[U>>2]|0}uk(s,w);w=28;break};case 4:{T=0;f:while(1){U=c[b>>2]|0;do{if((U|0)!=0){V=c[U+12>>2]|0;if((V|0)==(c[U+16>>2]|0)){U=gc[c[(c[U>>2]|0)+36>>2]&127](U)|0}else{U=c[V>>2]|0}if((U|0)==-1){c[b>>2]=0;U=1;break}else{U=(c[b>>2]|0)==0;break}}else{U=1}}while(0);V=c[e>>2]|0;do{if((V|0)!=0){W=c[V+12>>2]|0;if((W|0)==(c[V+16>>2]|0)){V=gc[c[(c[V>>2]|0)+36>>2]&127](V)|0}else{V=c[W>>2]|0}if(!((V|0)==-1)){if(U){break}else{break f}}else{c[e>>2]=0;w=188;break}}else{w=188}}while(0);if((w|0)==188?(w=0,U):0){break}V=c[b>>2]|0;U=c[V+12>>2]|0;if((U|0)==(c[V+16>>2]|0)){U=gc[c[(c[V>>2]|0)+36>>2]&127](V)|0}else{U=c[U>>2]|0}if(ac[c[(c[l>>2]|0)+12>>2]&31](l,2048,U)|0){V=c[n>>2]|0;if((V|0)==(o|0)){W=(c[H>>2]|0)!=223;X=c[m>>2]|0;V=o-X|0;o=V>>>0<2147483647?V<<1:-1;V=V>>2;if(!W){X=0}X=Ss(X,o)|0;if((X|0)==0){w=198;break a}if(!W){W=c[m>>2]|0;c[m>>2]=X;if((W|0)!=0){dc[c[H>>2]&255](W);X=c[m>>2]|0}}else{c[m>>2]=X}c[H>>2]=224;V=X+(V<<2)|0;c[n>>2]=V;o=(c[m>>2]|0)+(o>>>2<<2)|0}c[n>>2]=V+4;c[V>>2]=U;T=T+1|0}else{V=a[v>>0]|0;if((V&1)==0){V=(V&255)>>>1}else{V=c[K>>2]|0}if((V|0)==0|(T|0)==0){break}if((U|0)!=(c[B>>2]|0)){break}if((S|0)==(Q|0)){S=S-R|0;Q=S>>>0<2147483647?S<<1:-1;if((P|0)==223){R=0}P=Ss(R,Q)|0;if((P|0)==0){w=214;break a}S=P+(S>>2<<2)|0;R=P;Q=P+(Q>>>2<<2)|0;P=224}c[S>>2]=T;S=S+4|0;T=0}U=c[b>>2]|0;V=U+12|0;W=c[V>>2]|0;if((W|0)==(c[U+16>>2]|0)){gc[c[(c[U>>2]|0)+40>>2]&127](U)|0;continue}else{c[V>>2]=W+4;continue}}if(!((R|0)==(S|0)|(T|0)==0)){if((S|0)==(Q|0)){S=S-R|0;Q=S>>>0<2147483647?S<<1:-1;if((P|0)==223){R=0}P=Ss(R,Q)|0;if((P|0)==0){w=225;break a}S=P+(S>>2<<2)|0;R=P;Q=P+(Q>>>2<<2)|0;P=224}c[S>>2]=T;S=S+4|0}T=c[C>>2]|0;if((T|0)>0){U=c[b>>2]|0;do{if((U|0)!=0){V=c[U+12>>2]|0;if((V|0)==(c[U+16>>2]|0)){U=gc[c[(c[U>>2]|0)+36>>2]&127](U)|0}else{U=c[V>>2]|0}if((U|0)==-1){c[b>>2]=0;V=1;break}else{V=(c[b>>2]|0)==0;break}}else{V=1}}while(0);U=c[e>>2]|0;do{if((U|0)!=0){W=c[U+12>>2]|0;if((W|0)==(c[U+16>>2]|0)){W=gc[c[(c[U>>2]|0)+36>>2]&127](U)|0}else{W=c[W>>2]|0}if(!((W|0)==-1)){if(V){break}else{w=248;break a}}else{c[e>>2]=0;w=242;break}}else{w=242}}while(0);if((w|0)==242){w=0;if(V){w=248;break a}else{U=0}}V=c[b>>2]|0;W=c[V+12>>2]|0;if((W|0)==(c[V+16>>2]|0)){V=gc[c[(c[V>>2]|0)+36>>2]&127](V)|0}else{V=c[W>>2]|0}if((V|0)!=(c[D>>2]|0)){w=248;break a}X=c[b>>2]|0;W=X+12|0;V=c[W>>2]|0;if((V|0)==(c[X+16>>2]|0)){gc[c[(c[X>>2]|0)+40>>2]&127](X)|0;W=U}else{c[W>>2]=V+4;W=U}while(1){X=c[b>>2]|0;do{if((X|0)!=0){V=c[X+12>>2]|0;if((V|0)==(c[X+16>>2]|0)){V=gc[c[(c[X>>2]|0)+36>>2]&127](X)|0}else{V=c[V>>2]|0}if((V|0)==-1){c[b>>2]=0;X=1;break}else{X=(c[b>>2]|0)==0;break}}else{X=1}}while(0);do{if((U|0)!=0){V=c[U+12>>2]|0;if((V|0)==(c[U+16>>2]|0)){U=gc[c[(c[U>>2]|0)+36>>2]&127](U)|0}else{U=c[V>>2]|0}if(!((U|0)==-1)){if(X^(W|0)==0){V=W;U=W;break}else{w=271;break a}}else{c[e>>2]=0;V=0;w=265;break}}else{V=W;w=265}}while(0);if((w|0)==265){w=0;if(X){w=271;break a}else{U=0}}X=c[b>>2]|0;W=c[X+12>>2]|0;if((W|0)==(c[X+16>>2]|0)){W=gc[c[(c[X>>2]|0)+36>>2]&127](X)|0}else{W=c[W>>2]|0}if(!(ac[c[(c[l>>2]|0)+12>>2]&31](l,2048,W)|0)){w=271;break a}W=c[n>>2]|0;if((W|0)==(o|0)){X=(c[H>>2]|0)!=223;Y=c[m>>2]|0;W=o-Y|0;o=W>>>0<2147483647?W<<1:-1;W=W>>2;if(!X){Y=0}Y=Ss(Y,o)|0;if((Y|0)==0){w=276;break a}do{if(X){c[m>>2]=Y}else{X=c[m>>2]|0;c[m>>2]=Y;if((X|0)==0){break}dc[c[H>>2]&255](X);Y=c[m>>2]|0}}while(0);c[H>>2]=224;W=Y+(W<<2)|0;c[n>>2]=W;o=(c[m>>2]|0)+(o>>>2<<2)|0}Y=c[b>>2]|0;X=c[Y+12>>2]|0;if((X|0)==(c[Y+16>>2]|0)){X=gc[c[(c[Y>>2]|0)+36>>2]&127](Y)|0;W=c[n>>2]|0}else{X=c[X>>2]|0}c[n>>2]=W+4;c[W>>2]=X;T=T+-1|0;c[C>>2]=T;Y=c[b>>2]|0;X=Y+12|0;W=c[X>>2]|0;if((W|0)==(c[Y+16>>2]|0)){gc[c[(c[Y>>2]|0)+40>>2]&127](Y)|0}else{c[X>>2]=W+4}if((T|0)<=0){break}else{W=V}}}if((c[n>>2]|0)==(c[m>>2]|0)){w=290;break a}break};default:{}}}while(0);g:do{if((w|0)==28){w=0;if((O|0)==3){y=R;A=P;w=292;break a}else{U=T}while(1){W=c[b>>2]|0;do{if((W|0)!=0){V=c[W+12>>2]|0;if((V|0)==(c[W+16>>2]|0)){V=gc[c[(c[W>>2]|0)+36>>2]&127](W)|0}else{V=c[V>>2]|0}if((V|0)==-1){c[b>>2]=0;V=1;break}else{V=(c[b>>2]|0)==0;break}}else{V=1}}while(0);do{if((T|0)!=0){W=c[T+12>>2]|0;if((W|0)==(c[T+16>>2]|0)){T=gc[c[(c[T>>2]|0)+36>>2]&127](T)|0}else{T=c[W>>2]|0}if(!((T|0)==-1)){if(V^(U|0)==0){V=U;T=U;break}else{break g}}else{c[e>>2]=0;U=0;w=42;break}}else{w=42}}while(0);if((w|0)==42){w=0;if(V){break g}else{V=U;T=0}}W=c[b>>2]|0;U=c[W+12>>2]|0;if((U|0)==(c[W+16>>2]|0)){U=gc[c[(c[W>>2]|0)+36>>2]&127](W)|0}else{U=c[U>>2]|0}if(!(ac[c[(c[l>>2]|0)+12>>2]&31](l,8192,U)|0)){break g}W=c[b>>2]|0;X=W+12|0;U=c[X>>2]|0;if((U|0)==(c[W+16>>2]|0)){U=gc[c[(c[W>>2]|0)+40>>2]&127](W)|0}else{c[X>>2]=U+4;U=c[U>>2]|0}uk(s,U);U=V}}}while(0);O=O+1|0;if(!(O>>>0<4)){y=R;A=P;w=292;break}}h:switch(w|0){case 27:{c[j>>2]=c[j>>2]|4;x=0;y=R;A=P;break};case 116:{c[j>>2]=c[j>>2]|4;x=0;y=R;A=P;break};case 174:{c[j>>2]=c[j>>2]|4;x=0;y=R;A=P;break};case 198:{bt();break};case 214:{bt();break};case 225:{bt();break};case 248:{c[j>>2]=c[j>>2]|4;x=0;y=R;A=P;break};case 271:{c[j>>2]=c[j>>2]|4;x=0;y=R;A=P;break};case 276:{bt();break};case 290:{c[j>>2]=c[j>>2]|4;x=0;y=R;A=P;break};case 292:{i:do{if((h|0)!=0){z=h+4|0;x=h+8|0;n=1;j:while(1){m=a[h>>0]|0;if((m&1)==0){m=(m&255)>>>1}else{m=c[z>>2]|0}if(!(n>>>0<m>>>0)){break i}k=c[b>>2]|0;do{if((k|0)!=0){m=c[k+12>>2]|0;if((m|0)==(c[k+16>>2]|0)){m=gc[c[(c[k>>2]|0)+36>>2]&127](k)|0}else{m=c[m>>2]|0}if((m|0)==-1){c[b>>2]=0;m=1;break}else{m=(c[b>>2]|0)==0;break}}else{m=1}}while(0);k=c[e>>2]|0;do{if((k|0)!=0){B=c[k+12>>2]|0;if((B|0)==(c[k+16>>2]|0)){k=gc[c[(c[k>>2]|0)+36>>2]&127](k)|0}else{k=c[B>>2]|0}if(!((k|0)==-1)){if(m){break}else{break j}}else{c[e>>2]=0;w=311;break}}else{w=311}}while(0);if((w|0)==311?(w=0,m):0){break}m=c[b>>2]|0;k=c[m+12>>2]|0;if((k|0)==(c[m+16>>2]|0)){m=gc[c[(c[m>>2]|0)+36>>2]&127](m)|0}else{m=c[k>>2]|0}if((a[h>>0]&1)==0){k=z}else{k=c[x>>2]|0}if((m|0)!=(c[k+(n<<2)>>2]|0)){break}n=n+1|0;m=c[b>>2]|0;B=m+12|0;k=c[B>>2]|0;if((k|0)==(c[m+16>>2]|0)){gc[c[(c[m>>2]|0)+40>>2]&127](m)|0;continue}else{c[B>>2]=k+4;continue}}c[j>>2]=c[j>>2]|4;x=0;break h}}while(0);if((y|0)!=(S|0)){c[q>>2]=0;dp(v,y,S,q);if((c[q>>2]|0)==0){x=1}else{c[j>>2]=c[j>>2]|4;x=0}}else{x=1;y=S}break}}qk(s);qk(r);qk(u);qk(t);ck(v);if((y|0)==0){i=p;return x|0}dc[A&255](y);i=p;return x|0}function ip(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;d=i;i=i+448|0;u=d;t=d+32|0;m=d+24|0;q=d+20|0;o=d+16|0;r=d+432|0;s=d+12|0;c[m>>2]=t;n=m+4|0;c[n>>2]=223;t=t+400|0;Bk(o,h);w=c[o>>2]|0;if(!((c[270710]|0)==-1)){c[u>>2]=1082840;c[u+4>>2]=221;c[u+8>>2]=0;Yj(1082840,u,222)}p=(c[1082844>>2]|0)+-1|0;v=c[w+8>>2]|0;if(!((c[w+12>>2]|0)-v>>2>>>0>p>>>0)){w=Ta(4)|0;us(w);Rb(w|0,1090808,189)}v=c[v+(p<<2)>>2]|0;if((v|0)==0){w=Ta(4)|0;us(w);Rb(w|0,1090808,189)}a[r>>0]=0;p=c[f>>2]|0;c[s>>2]=p;w=c[h+4>>2]|0;c[u+0>>2]=c[s+0>>2];if(hp(e,u,g,o,w,j,r,v,m,q,t)|0){if((a[k>>0]&1)==0){c[k+4>>2]=0;a[k>>0]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}if((a[r>>0]|0)!=0){uk(k,pc[c[(c[v>>2]|0)+44>>2]&63](v,45)|0)}h=pc[c[(c[v>>2]|0)+44>>2]&63](v,48)|0;r=c[m>>2]|0;q=c[q>>2]|0;g=q+-4|0;a:do{if(r>>>0<g>>>0){while(1){s=r+4|0;if((c[r>>2]|0)!=(h|0)){break a}if(s>>>0<g>>>0){r=s}else{r=s;break}}}}while(0);jp(k,r,q)|0}k=c[e>>2]|0;do{if((k|0)!=0){q=c[k+12>>2]|0;if((q|0)==(c[k+16>>2]|0)){k=gc[c[(c[k>>2]|0)+36>>2]&127](k)|0}else{k=c[q>>2]|0}if((k|0)==-1){c[e>>2]=0;k=1;break}else{k=(c[e>>2]|0)==0;break}}else{k=1}}while(0);do{if((p|0)!=0){q=c[p+12>>2]|0;if((q|0)==(c[p+16>>2]|0)){p=gc[c[(c[p>>2]|0)+36>>2]&127](p)|0}else{p=c[q>>2]|0}if(!((p|0)==-1)){if(k){break}else{l=31;break}}else{c[f>>2]=0;l=29;break}}else{l=29}}while(0);if((l|0)==29?k:0){l=31}if((l|0)==31){c[j>>2]=c[j>>2]|2}c[b>>2]=c[e>>2];Dj(c[o>>2]|0)|0;l=c[m>>2]|0;c[m>>2]=0;if((l|0)==0){i=d;return}dc[c[n>>2]&255](l);i=d;return}function jp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;j=d;l=a[b>>0]|0;if((l&1)==0){k=1;g=(l&255)>>>1}else{l=c[b>>2]|0;k=(l&-2)+-1|0;g=c[b+4>>2]|0;l=l&255}h=e-j>>2;if((h|0)==0){i=f;return b|0}if((k-g|0)>>>0<h>>>0){wk(b,k,g+h-k|0,g,g,0,0);l=a[b>>0]|0}if((l&1)==0){k=b+4|0}else{k=c[b+8>>2]|0}l=k+(g<<2)|0;if((d|0)!=(e|0)){j=g+((e+-4+(0-j)|0)>>>2)+1|0;while(1){c[l>>2]=c[d>>2];d=d+4|0;if((d|0)==(e|0)){break}else{l=l+4|0}}l=k+(j<<2)|0}c[l>>2]=0;g=g+h|0;if((a[b>>0]&1)==0){a[b>>0]=g<<1;i=f;return b|0}else{c[b+4>>2]=g;i=f;return b|0}return 0}function kp(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;n=i;i=i+128|0;y=n;v=n+112|0;w=n+100|0;x=n+88|0;o=n+76|0;u=n+64|0;r=n+60|0;q=n+48|0;t=n+36|0;p=n+24|0;s=n+12|0;if(b){p=c[d>>2]|0;if(!((c[270604]|0)==-1)){c[y>>2]=1082416;c[y+4>>2]=221;c[y+8>>2]=0;Yj(1082416,y,222)}r=(c[1082420>>2]|0)+-1|0;q=c[p+8>>2]|0;if(!((c[p+12>>2]|0)-q>>2>>>0>r>>>0)){d=Ta(4)|0;us(d);Rb(d|0,1090808,189)}p=c[q+(r<<2)>>2]|0;if((p|0)==0){d=Ta(4)|0;us(d);Rb(d|0,1090808,189)}ec[c[(c[p>>2]|0)+44>>2]&63](v,p);d=c[v>>2]|0;a[e>>0]=d;a[e+1>>0]=d>>8;a[e+2>>0]=d>>16;a[e+3>>0]=d>>24;ec[c[(c[p>>2]|0)+32>>2]&63](w,p);if((a[l>>0]&1)==0){c[l+4>>2]=0;a[l>>0]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}tk(l,0);c[l+0>>2]=c[w+0>>2];c[l+4>>2]=c[w+4>>2];c[l+8>>2]=c[w+8>>2];c[w+0>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;qk(w);ec[c[(c[p>>2]|0)+28>>2]&63](x,p);if((a[k>>0]&1)==0){c[k+4>>2]=0;a[k>>0]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}tk(k,0);c[k+0>>2]=c[x+0>>2];c[k+4>>2]=c[x+4>>2];c[k+8>>2]=c[x+8>>2];c[x+0>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;qk(x);c[f>>2]=gc[c[(c[p>>2]|0)+12>>2]&127](p)|0;c[g>>2]=gc[c[(c[p>>2]|0)+16>>2]&127](p)|0;ec[c[(c[p>>2]|0)+20>>2]&63](o,p);if((a[h>>0]&1)==0){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}hk(h,0);c[h+0>>2]=c[o+0>>2];c[h+4>>2]=c[o+4>>2];c[h+8>>2]=c[o+8>>2];c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;ck(o);ec[c[(c[p>>2]|0)+24>>2]&63](u,p);if((a[j>>0]&1)==0){c[j+4>>2]=0;a[j>>0]=0}else{c[c[j+8>>2]>>2]=0;c[j+4>>2]=0}tk(j,0);c[j+0>>2]=c[u+0>>2];c[j+4>>2]=c[u+4>>2];c[j+8>>2]=c[u+8>>2];c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;qk(u);d=gc[c[(c[p>>2]|0)+36>>2]&127](p)|0;c[m>>2]=d;i=n;return}else{o=c[d>>2]|0;if(!((c[270588]|0)==-1)){c[y>>2]=1082352;c[y+4>>2]=221;c[y+8>>2]=0;Yj(1082352,y,222)}u=(c[1082356>>2]|0)+-1|0;v=c[o+8>>2]|0;if(!((c[o+12>>2]|0)-v>>2>>>0>u>>>0)){d=Ta(4)|0;us(d);Rb(d|0,1090808,189)}o=c[v+(u<<2)>>2]|0;if((o|0)==0){d=Ta(4)|0;us(d);Rb(d|0,1090808,189)}ec[c[(c[o>>2]|0)+44>>2]&63](r,o);d=c[r>>2]|0;a[e>>0]=d;a[e+1>>0]=d>>8;a[e+2>>0]=d>>16;a[e+3>>0]=d>>24;ec[c[(c[o>>2]|0)+32>>2]&63](q,o);if((a[l>>0]&1)==0){c[l+4>>2]=0;a[l>>0]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}tk(l,0);c[l+0>>2]=c[q+0>>2];c[l+4>>2]=c[q+4>>2];c[l+8>>2]=c[q+8>>2];c[q+0>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;qk(q);ec[c[(c[o>>2]|0)+28>>2]&63](t,o);if((a[k>>0]&1)==0){c[k+4>>2]=0;a[k>>0]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}tk(k,0);c[k+0>>2]=c[t+0>>2];c[k+4>>2]=c[t+4>>2];c[k+8>>2]=c[t+8>>2];c[t+0>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;qk(t);c[f>>2]=gc[c[(c[o>>2]|0)+12>>2]&127](o)|0;c[g>>2]=gc[c[(c[o>>2]|0)+16>>2]&127](o)|0;ec[c[(c[o>>2]|0)+20>>2]&63](p,o);if((a[h>>0]&1)==0){a[h+1>>0]=0;a[h>>0]=0}else{a[c[h+8>>2]>>0]=0;c[h+4>>2]=0}hk(h,0);c[h+0>>2]=c[p+0>>2];c[h+4>>2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;ck(p);ec[c[(c[o>>2]|0)+24>>2]&63](s,o);if((a[j>>0]&1)==0){c[j+4>>2]=0;a[j>>0]=0}else{c[c[j+8>>2]>>2]=0;c[j+4>>2]=0}tk(j,0);c[j+0>>2]=c[s+0>>2];c[j+4>>2]=c[s+4>>2];c[j+8>>2]=c[s+8>>2];c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;qk(s);d=gc[c[(c[o>>2]|0)+36>>2]&127](o)|0;c[m>>2]=d;i=n;return}}function lp(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function mp(a){a=a|0;return}function np(b,d,e,f,g,j,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;l=+l;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;t=i;i=i+384|0;u=t;H=t+280|0;F=t+72|0;E=t+180|0;d=t+68|0;y=t+64|0;x=t+177|0;w=t+176|0;C=t+52|0;v=t+40|0;B=t+28|0;G=t+24|0;D=t+76|0;A=t+20|0;z=t+16|0;s=t+12|0;c[F>>2]=H;h[k>>3]=l;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];H=vt(H,100,1082600,u)|0;if(H>>>0>99){if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}H=c[270684]|0;h[k>>3]=l;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];H=gn(F,H,1082600,u)|0;E=c[F>>2]|0;if((E|0)==0){bt()}I=Ps(H)|0;if((I|0)==0){bt()}else{m=I;n=E;p=I;o=H}}else{m=0;n=0;p=E;o=H}Bk(d,g);I=c[d>>2]|0;if(!((c[270712]|0)==-1)){c[u>>2]=1082848;c[u+4>>2]=221;c[u+8>>2]=0;Yj(1082848,u,222)}H=(c[1082852>>2]|0)+-1|0;E=c[I+8>>2]|0;if(!((c[I+12>>2]|0)-E>>2>>>0>H>>>0)){I=Ta(4)|0;us(I);Rb(I|0,1090808,189)}E=c[E+(H<<2)>>2]|0;if((E|0)==0){I=Ta(4)|0;us(I);Rb(I|0,1090808,189)}I=c[F>>2]|0;mc[c[(c[E>>2]|0)+32>>2]&7](E,I,I+o|0,p)|0;if((o|0)==0){F=0}else{F=(a[c[F>>2]>>0]|0)==45}c[y>>2]=0;c[C+0>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[v+0>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[B+0>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;op(f,F,d,y,x,w,C,v,B,G);f=c[G>>2]|0;if((o|0)>(f|0)){G=a[B>>0]|0;if((G&1)==0){G=(G&255)>>>1}else{G=c[B+4>>2]|0}H=a[v>>0]|0;if((H&1)==0){H=(H&255)>>>1}else{H=c[v+4>>2]|0}G=G+(o-f<<1|1)+H|0}else{G=a[B>>0]|0;if((G&1)==0){G=(G&255)>>>1}else{G=c[B+4>>2]|0}H=a[v>>0]|0;if((H&1)==0){H=(H&255)>>>1}else{H=c[v+4>>2]|0}G=G+2+H|0}G=G+f|0;if(G>>>0>100){D=Ps(G)|0;if((D|0)==0){bt()}else{r=D;q=D}}else{r=0;q=D}pp(q,A,z,c[g+4>>2]|0,p,p+o|0,E,F,y,a[x>>0]|0,a[w>>0]|0,C,v,B,f);c[s>>2]=c[e>>2];H=c[A>>2]|0;I=c[z>>2]|0;c[u+0>>2]=c[s+0>>2];Ic(b,u,q,H,I,g,j);if((r|0)!=0){Qs(r)}ck(B);ck(v);ck(C);Dj(c[d>>2]|0)|0;if((m|0)!=0){Qs(m)}if((n|0)==0){i=t;return}Qs(n);i=t;return}function op(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;n=i;i=i+128|0;A=n;y=n+120|0;p=n+108|0;w=n+104|0;x=n+92|0;o=n+80|0;z=n+68|0;r=n+64|0;q=n+52|0;t=n+48|0;s=n+36|0;v=n+24|0;u=n+12|0;e=c[e>>2]|0;if(b){if(!((c[270572]|0)==-1)){c[A>>2]=1082288;c[A+4>>2]=221;c[A+8>>2]=0;Yj(1082288,A,222)}r=(c[1082292>>2]|0)+-1|0;q=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-q>>2>>>0>r>>>0)){b=Ta(4)|0;us(b);Rb(b|0,1090808,189)}q=c[q+(r<<2)>>2]|0;if((q|0)==0){b=Ta(4)|0;us(b);Rb(b|0,1090808,189)}r=c[q>>2]|0;if(d){ec[c[r+44>>2]&63](y,q);b=c[y>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;ec[c[(c[q>>2]|0)+32>>2]&63](p,q);if((a[l>>0]&1)==0){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}hk(l,0);c[l+0>>2]=c[p+0>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;ck(p)}else{ec[c[r+40>>2]&63](w,q);b=c[w>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;ec[c[(c[q>>2]|0)+28>>2]&63](x,q);if((a[l>>0]&1)==0){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}hk(l,0);c[l+0>>2]=c[x+0>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[x+0>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;ck(x)}a[g>>0]=gc[c[(c[q>>2]|0)+12>>2]&127](q)|0;a[h>>0]=gc[c[(c[q>>2]|0)+16>>2]&127](q)|0;ec[c[(c[q>>2]|0)+20>>2]&63](o,q);if((a[j>>0]&1)==0){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}hk(j,0);c[j+0>>2]=c[o+0>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;ck(o);ec[c[(c[q>>2]|0)+24>>2]&63](z,q);if((a[k>>0]&1)==0){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}hk(k,0);c[k+0>>2]=c[z+0>>2];c[k+4>>2]=c[z+4>>2];c[k+8>>2]=c[z+8>>2];c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;ck(z);b=gc[c[(c[q>>2]|0)+36>>2]&127](q)|0;c[m>>2]=b;i=n;return}else{if(!((c[270556]|0)==-1)){c[A>>2]=1082224;c[A+4>>2]=221;c[A+8>>2]=0;Yj(1082224,A,222)}p=(c[1082228>>2]|0)+-1|0;o=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-o>>2>>>0>p>>>0)){b=Ta(4)|0;us(b);Rb(b|0,1090808,189)}o=c[o+(p<<2)>>2]|0;if((o|0)==0){b=Ta(4)|0;us(b);Rb(b|0,1090808,189)}p=c[o>>2]|0;if(d){ec[c[p+44>>2]&63](r,o);b=c[r>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;ec[c[(c[o>>2]|0)+32>>2]&63](q,o);if((a[l>>0]&1)==0){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}hk(l,0);c[l+0>>2]=c[q+0>>2];c[l+4>>2]=c[q+4>>2];c[l+8>>2]=c[q+8>>2];c[q+0>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;ck(q)}else{ec[c[p+40>>2]&63](t,o);b=c[t>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;ec[c[(c[o>>2]|0)+28>>2]&63](s,o);if((a[l>>0]&1)==0){a[l+1>>0]=0;a[l>>0]=0}else{a[c[l+8>>2]>>0]=0;c[l+4>>2]=0}hk(l,0);c[l+0>>2]=c[s+0>>2];c[l+4>>2]=c[s+4>>2];c[l+8>>2]=c[s+8>>2];c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;ck(s)}a[g>>0]=gc[c[(c[o>>2]|0)+12>>2]&127](o)|0;a[h>>0]=gc[c[(c[o>>2]|0)+16>>2]&127](o)|0;ec[c[(c[o>>2]|0)+20>>2]&63](v,o);if((a[j>>0]&1)==0){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}hk(j,0);c[j+0>>2]=c[v+0>>2];c[j+4>>2]=c[v+4>>2];c[j+8>>2]=c[v+8>>2];c[v+0>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;ck(v);ec[c[(c[o>>2]|0)+24>>2]&63](u,o);if((a[k>>0]&1)==0){a[k+1>>0]=0;a[k>>0]=0}else{a[c[k+8>>2]>>0]=0;c[k+4>>2]=0}hk(k,0);c[k+0>>2]=c[u+0>>2];c[k+4>>2]=c[u+4>>2];c[k+8>>2]=c[u+8>>2];c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;ck(u);b=gc[c[(c[o>>2]|0)+36>>2]&127](o)|0;c[m>>2]=b;i=n;return}}function pp(d,e,f,g,h,j,k,l,m,n,o,p,q,r,s){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;var t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;t=i;c[f>>2]=d;v=r+1|0;w=r+8|0;u=r+4|0;A=(g&512|0)==0;x=q+1|0;y=q+8|0;z=q+4|0;B=(s|0)>0;C=p+1|0;E=p+8|0;H=p+4|0;D=k+8|0;I=0-s|0;J=0;do{switch(a[m+J>>0]|0){case 1:{c[e>>2]=c[f>>2];P=pc[c[(c[k>>2]|0)+28>>2]&63](k,32)|0;Q=c[f>>2]|0;c[f>>2]=Q+1;a[Q>>0]=P;break};case 4:{K=c[f>>2]|0;h=l?h+1|0:h;a:do{if(h>>>0<j>>>0){L=h;while(1){M=a[L>>0]|0;if(!(M<<24>>24>-1)){break a}N=L+1|0;if((b[(c[D>>2]|0)+(M<<24>>24<<1)>>1]&2048)==0){break a}if(N>>>0<j>>>0){L=N}else{L=N;break}}}else{L=h}}while(0);M=L;if(B){if(L>>>0>h>>>0){N=h+(0-M)|0;N=N>>>0<I>>>0?I:N;M=N+s|0;Q=K;P=L;O=s;while(1){P=P+-1|0;R=a[P>>0]|0;c[f>>2]=Q+1;a[Q>>0]=R;O=O+-1|0;Q=(O|0)>0;if(!(P>>>0>h>>>0&Q)){break}Q=c[f>>2]|0}L=L+N|0;if(Q){G=32}else{N=0}}else{M=s;G=32}if((G|0)==32){G=0;N=pc[c[(c[k>>2]|0)+28>>2]&63](k,48)|0}O=c[f>>2]|0;c[f>>2]=O+1;if((M|0)>0){do{a[O>>0]=N;M=M+-1|0;O=c[f>>2]|0;c[f>>2]=O+1}while((M|0)>0)}a[O>>0]=n}if((L|0)==(h|0)){Q=pc[c[(c[k>>2]|0)+28>>2]&63](k,48)|0;R=c[f>>2]|0;c[f>>2]=R+1;a[R>>0]=Q}else{N=a[p>>0]|0;M=(N&1)==0;if(M){N=(N&255)>>>1}else{N=c[H>>2]|0}if((N|0)==0){M=-1;N=0;O=0}else{if(M){M=C}else{M=c[E>>2]|0}M=a[M>>0]|0;N=0;O=0}while(1){if((O|0)==(M|0)){P=c[f>>2]|0;c[f>>2]=P+1;a[P>>0]=o;N=N+1|0;P=a[p>>0]|0;O=(P&1)==0;if(O){P=(P&255)>>>1}else{P=c[H>>2]|0}if(N>>>0<P>>>0){if(O){M=C}else{M=c[E>>2]|0}if((a[M+N>>0]|0)==127){M=-1;O=0}else{if(O){M=C}else{M=c[E>>2]|0}M=a[M+N>>0]|0;O=0}}else{O=0}}L=L+-1|0;Q=a[L>>0]|0;R=c[f>>2]|0;c[f>>2]=R+1;a[R>>0]=Q;if((L|0)==(h|0)){break}else{O=O+1|0}}}L=c[f>>2]|0;if((K|0)!=(L|0)?(F=L+-1|0,F>>>0>K>>>0):0){L=F;do{R=a[K>>0]|0;a[K>>0]=a[L>>0]|0;a[L>>0]=R;K=K+1|0;L=L+-1|0}while(K>>>0<L>>>0)}break};case 3:{L=a[r>>0]|0;K=(L&1)==0;if(K){L=(L&255)>>>1}else{L=c[u>>2]|0}if((L|0)!=0){if(K){K=v}else{K=c[w>>2]|0}Q=a[K>>0]|0;R=c[f>>2]|0;c[f>>2]=R+1;a[R>>0]=Q}break};case 0:{c[e>>2]=c[f>>2];break};case 2:{L=a[q>>0]|0;K=(L&1)==0;if(K){M=(L&255)>>>1}else{M=c[z>>2]|0}if(!((M|0)==0|A)){if(K){K=x;L=(L&255)>>>1}else{K=c[y>>2]|0;L=c[z>>2]|0}L=K+L|0;M=c[f>>2]|0;if((K|0)!=(L|0)){do{a[M>>0]=a[K>>0]|0;K=K+1|0;M=M+1|0}while((K|0)!=(L|0))}c[f>>2]=M}break};default:{}}J=J+1|0}while((J|0)!=4);k=a[r>>0]|0;x=(k&1)==0;if(x){y=(k&255)>>>1}else{y=c[u>>2]|0}if(y>>>0>1){if(x){u=(k&255)>>>1}else{v=c[w>>2]|0;u=c[u>>2]|0}w=v+1|0;u=v+u|0;v=c[f>>2]|0;if((w|0)!=(u|0)){do{a[v>>0]=a[w>>0]|0;w=w+1|0;v=v+1|0}while((w|0)!=(u|0))}c[f>>2]=v}g=g&176;if((g|0)==32){c[e>>2]=c[f>>2];i=t;return}else if((g|0)==16){i=t;return}else{c[e>>2]=d;i=t;return}}function qp(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;q=i;i=i+176|0;n=q;p=q+68|0;v=q+64|0;u=q+173|0;t=q+172|0;s=q+52|0;m=q+40|0;r=q+28|0;A=q+24|0;x=q+72|0;o=q+20|0;d=q+16|0;w=q+12|0;Bk(p,g);y=c[p>>2]|0;if(!((c[270712]|0)==-1)){c[n>>2]=1082848;c[n+4>>2]=221;c[n+8>>2]=0;Yj(1082848,n,222)}B=(c[1082852>>2]|0)+-1|0;z=c[y+8>>2]|0;if(!((c[y+12>>2]|0)-z>>2>>>0>B>>>0)){D=Ta(4)|0;us(D);Rb(D|0,1090808,189)}y=c[z+(B<<2)>>2]|0;if((y|0)==0){D=Ta(4)|0;us(D);Rb(D|0,1090808,189)}B=a[j>>0]|0;z=(B&1)==0;if(z){B=(B&255)>>>1}else{B=c[j+4>>2]|0}if((B|0)==0){z=0}else{if(z){z=j+1|0}else{z=c[j+8>>2]|0}z=a[z>>0]|0;z=z<<24>>24==(pc[c[(c[y>>2]|0)+28>>2]&63](y,45)|0)<<24>>24}c[v>>2]=0;c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;op(f,z,p,v,u,t,s,m,r,A);f=a[j>>0]|0;C=(f&1)==0;if(C){B=(f&255)>>>1}else{B=c[j+4>>2]|0}A=c[A>>2]|0;if((B|0)>(A|0)){if(C){B=(f&255)>>>1}else{B=c[j+4>>2]|0}C=a[r>>0]|0;if((C&1)==0){C=(C&255)>>>1}else{C=c[r+4>>2]|0}D=a[m>>0]|0;if((D&1)==0){D=(D&255)>>>1}else{D=c[m+4>>2]|0}B=C+(B-A<<1|1)+D|0}else{B=a[r>>0]|0;if((B&1)==0){B=(B&255)>>>1}else{B=c[r+4>>2]|0}C=a[m>>0]|0;if((C&1)==0){C=(C&255)>>>1}else{C=c[m+4>>2]|0}B=B+2+C|0}B=B+A|0;if(B>>>0>100){x=Ps(B)|0;if((x|0)==0){bt()}else{k=x;l=x}}else{k=0;l=x}if((f&1)==0){x=j+1|0;j=(f&255)>>>1}else{x=c[j+8>>2]|0;j=c[j+4>>2]|0}pp(l,o,d,c[g+4>>2]|0,x,x+j|0,y,z,v,a[u>>0]|0,a[t>>0]|0,s,m,r,A);c[w>>2]=c[e>>2];C=c[o>>2]|0;D=c[d>>2]|0;c[n+0>>2]=c[w+0>>2];Ic(b,n,l,C,D,g,h);if((k|0)==0){ck(r);ck(m);ck(s);D=c[p>>2]|0;Dj(D)|0;i=q;return}Qs(k);ck(r);ck(m);ck(s);D=c[p>>2]|0;Dj(D)|0;i=q;return}function rp(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function sp(a){a=a|0;return}function tp(b,d,e,f,g,j,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;l=+l;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;t=i;i=i+992|0;u=t;H=t+884|0;F=t+880|0;E=t+480|0;d=t+476|0;y=t+472|0;x=t+468|0;w=t+464|0;C=t+452|0;v=t+440|0;B=t+428|0;G=t+424|0;D=t+24|0;A=t+20|0;z=t+16|0;s=t+12|0;c[F>>2]=H;h[k>>3]=l;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];H=vt(H,100,1082600,u)|0;if(H>>>0>99){if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}H=c[270684]|0;h[k>>3]=l;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];H=gn(F,H,1082600,u)|0;E=c[F>>2]|0;if((E|0)==0){bt()}I=Ps(H<<2)|0;if((I|0)==0){bt()}else{m=I;n=E;p=I;o=H}}else{m=0;n=0;p=E;o=H}Bk(d,g);I=c[d>>2]|0;if(!((c[270710]|0)==-1)){c[u>>2]=1082840;c[u+4>>2]=221;c[u+8>>2]=0;Yj(1082840,u,222)}H=(c[1082844>>2]|0)+-1|0;E=c[I+8>>2]|0;if(!((c[I+12>>2]|0)-E>>2>>>0>H>>>0)){I=Ta(4)|0;us(I);Rb(I|0,1090808,189)}E=c[E+(H<<2)>>2]|0;if((E|0)==0){I=Ta(4)|0;us(I);Rb(I|0,1090808,189)}I=c[F>>2]|0;mc[c[(c[E>>2]|0)+48>>2]&7](E,I,I+o|0,p)|0;if((o|0)==0){F=0}else{F=(a[c[F>>2]>>0]|0)==45}c[y>>2]=0;c[C+0>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[v+0>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[B+0>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;up(f,F,d,y,x,w,C,v,B,G);f=c[G>>2]|0;if((o|0)>(f|0)){G=a[B>>0]|0;if((G&1)==0){G=(G&255)>>>1}else{G=c[B+4>>2]|0}H=a[v>>0]|0;if((H&1)==0){H=(H&255)>>>1}else{H=c[v+4>>2]|0}G=G+(o-f<<1|1)+H|0}else{G=a[B>>0]|0;if((G&1)==0){G=(G&255)>>>1}else{G=c[B+4>>2]|0}H=a[v>>0]|0;if((H&1)==0){H=(H&255)>>>1}else{H=c[v+4>>2]|0}G=G+2+H|0}G=G+f|0;if(G>>>0>100){D=Ps(G<<2)|0;if((D|0)==0){bt()}else{r=D;q=D}}else{r=0;q=D}vp(q,A,z,c[g+4>>2]|0,p,p+(o<<2)|0,E,F,y,c[x>>2]|0,c[w>>2]|0,C,v,B,f);c[s>>2]=c[e>>2];H=c[A>>2]|0;I=c[z>>2]|0;c[u+0>>2]=c[s+0>>2];
+qn(b,u,q,H,I,g,j);if((r|0)!=0){Qs(r)}qk(B);qk(v);ck(C);Dj(c[d>>2]|0)|0;if((m|0)!=0){Qs(m)}if((n|0)==0){i=t;return}Qs(n);i=t;return}function up(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;n=i;i=i+128|0;A=n;y=n+120|0;p=n+108|0;w=n+104|0;x=n+92|0;o=n+80|0;z=n+68|0;r=n+64|0;q=n+52|0;t=n+48|0;s=n+36|0;v=n+24|0;u=n+12|0;e=c[e>>2]|0;if(b){if(!((c[270604]|0)==-1)){c[A>>2]=1082416;c[A+4>>2]=221;c[A+8>>2]=0;Yj(1082416,A,222)}r=(c[1082420>>2]|0)+-1|0;q=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-q>>2>>>0>r>>>0)){b=Ta(4)|0;us(b);Rb(b|0,1090808,189)}q=c[q+(r<<2)>>2]|0;if((q|0)==0){b=Ta(4)|0;us(b);Rb(b|0,1090808,189)}r=c[q>>2]|0;if(d){ec[c[r+44>>2]&63](y,q);b=c[y>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;ec[c[(c[q>>2]|0)+32>>2]&63](p,q);if((a[l>>0]&1)==0){c[l+4>>2]=0;a[l>>0]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}tk(l,0);c[l+0>>2]=c[p+0>>2];c[l+4>>2]=c[p+4>>2];c[l+8>>2]=c[p+8>>2];c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;qk(p)}else{ec[c[r+40>>2]&63](w,q);b=c[w>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;ec[c[(c[q>>2]|0)+28>>2]&63](x,q);if((a[l>>0]&1)==0){c[l+4>>2]=0;a[l>>0]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}tk(l,0);c[l+0>>2]=c[x+0>>2];c[l+4>>2]=c[x+4>>2];c[l+8>>2]=c[x+8>>2];c[x+0>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;qk(x)}c[g>>2]=gc[c[(c[q>>2]|0)+12>>2]&127](q)|0;c[h>>2]=gc[c[(c[q>>2]|0)+16>>2]&127](q)|0;ec[c[(c[q>>2]|0)+20>>2]&63](o,q);if((a[j>>0]&1)==0){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}hk(j,0);c[j+0>>2]=c[o+0>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;ck(o);ec[c[(c[q>>2]|0)+24>>2]&63](z,q);if((a[k>>0]&1)==0){c[k+4>>2]=0;a[k>>0]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}tk(k,0);c[k+0>>2]=c[z+0>>2];c[k+4>>2]=c[z+4>>2];c[k+8>>2]=c[z+8>>2];c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;qk(z);b=gc[c[(c[q>>2]|0)+36>>2]&127](q)|0;c[m>>2]=b;i=n;return}else{if(!((c[270588]|0)==-1)){c[A>>2]=1082352;c[A+4>>2]=221;c[A+8>>2]=0;Yj(1082352,A,222)}p=(c[1082356>>2]|0)+-1|0;o=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-o>>2>>>0>p>>>0)){b=Ta(4)|0;us(b);Rb(b|0,1090808,189)}o=c[o+(p<<2)>>2]|0;if((o|0)==0){b=Ta(4)|0;us(b);Rb(b|0,1090808,189)}p=c[o>>2]|0;if(d){ec[c[p+44>>2]&63](r,o);b=c[r>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;ec[c[(c[o>>2]|0)+32>>2]&63](q,o);if((a[l>>0]&1)==0){c[l+4>>2]=0;a[l>>0]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}tk(l,0);c[l+0>>2]=c[q+0>>2];c[l+4>>2]=c[q+4>>2];c[l+8>>2]=c[q+8>>2];c[q+0>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;qk(q)}else{ec[c[p+40>>2]&63](t,o);b=c[t>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;ec[c[(c[o>>2]|0)+28>>2]&63](s,o);if((a[l>>0]&1)==0){c[l+4>>2]=0;a[l>>0]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}tk(l,0);c[l+0>>2]=c[s+0>>2];c[l+4>>2]=c[s+4>>2];c[l+8>>2]=c[s+8>>2];c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;qk(s)}c[g>>2]=gc[c[(c[o>>2]|0)+12>>2]&127](o)|0;c[h>>2]=gc[c[(c[o>>2]|0)+16>>2]&127](o)|0;ec[c[(c[o>>2]|0)+20>>2]&63](v,o);if((a[j>>0]&1)==0){a[j+1>>0]=0;a[j>>0]=0}else{a[c[j+8>>2]>>0]=0;c[j+4>>2]=0}hk(j,0);c[j+0>>2]=c[v+0>>2];c[j+4>>2]=c[v+4>>2];c[j+8>>2]=c[v+8>>2];c[v+0>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;ck(v);ec[c[(c[o>>2]|0)+24>>2]&63](u,o);if((a[k>>0]&1)==0){c[k+4>>2]=0;a[k>>0]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}tk(k,0);c[k+0>>2]=c[u+0>>2];c[k+4>>2]=c[u+4>>2];c[k+8>>2]=c[u+8>>2];c[u+0>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;qk(u);b=gc[c[(c[o>>2]|0)+36>>2]&127](o)|0;c[m>>2]=b;i=n;return}}function vp(b,d,e,f,g,h,j,k,l,m,n,o,p,q,r){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;s=i;c[e>>2]=b;t=q+4|0;u=q+8|0;v=(f&512|0)==0;x=p+4|0;B=p+8|0;D=(r|0)>0;w=o+1|0;y=o+8|0;z=o+4|0;E=0;do{switch(a[l+E>>0]|0){case 1:{c[d>>2]=c[e>>2];L=pc[c[(c[j>>2]|0)+44>>2]&63](j,32)|0;M=c[e>>2]|0;c[e>>2]=M+4;c[M>>2]=L;break};case 2:{F=a[p>>0]|0;H=(F&1)==0;if(H){G=(F&255)>>>1}else{G=c[x>>2]|0}if(!((G|0)==0|v)){if(H){H=x;I=(F&255)>>>1}else{H=c[B>>2]|0;I=c[x>>2]|0}F=H+(I<<2)|0;G=c[e>>2]|0;if((H|0)!=(F|0)){J=(H+(I+-1<<2)+(0-H)|0)>>>2;I=G;while(1){c[I>>2]=c[H>>2];H=H+4|0;if((H|0)==(F|0)){break}I=I+4|0}G=G+(J+1<<2)|0}c[e>>2]=G}break};case 0:{c[d>>2]=c[e>>2];break};case 4:{F=c[e>>2]|0;g=k?g+4|0:g;a:do{if(g>>>0<h>>>0){G=g;while(1){H=G+4|0;if(!(ac[c[(c[j>>2]|0)+12>>2]&31](j,2048,c[G>>2]|0)|0)){break a}if(H>>>0<h>>>0){G=H}else{G=H;break}}}else{G=g}}while(0);if(D){if(G>>>0>g>>>0){H=c[e>>2]|0;K=r;do{G=G+-4|0;I=H;H=H+4|0;c[I>>2]=c[G>>2];K=K+-1|0;I=(K|0)>0}while(G>>>0>g>>>0&I);c[e>>2]=H;if(I){C=34}else{J=c[e>>2]|0;c[e>>2]=J+4}}else{K=r;C=34}if((C|0)==34){C=0;I=pc[c[(c[j>>2]|0)+44>>2]&63](j,48)|0;J=c[e>>2]|0;L=J+4|0;c[e>>2]=L;if((K|0)>0){H=J;M=K;while(1){c[H>>2]=I;M=M+-1|0;if((M|0)<=0){break}else{H=L;L=L+4|0}}c[e>>2]=J+(K+1<<2);J=J+(K<<2)|0}}c[J>>2]=m}if((G|0)==(g|0)){K=pc[c[(c[j>>2]|0)+44>>2]&63](j,48)|0;M=c[e>>2]|0;L=M+4|0;c[e>>2]=L;c[M>>2]=K}else{I=a[o>>0]|0;H=(I&1)==0;if(H){I=(I&255)>>>1}else{I=c[z>>2]|0}if((I|0)==0){H=-1;K=0;J=0}else{if(H){H=w}else{H=c[y>>2]|0}H=a[H>>0]|0;K=0;J=0}while(1){I=c[e>>2]|0;if((J|0)==(H|0)){J=I+4|0;c[e>>2]=J;c[I>>2]=n;K=K+1|0;L=a[o>>0]|0;I=(L&1)==0;if(I){L=(L&255)>>>1}else{L=c[z>>2]|0}if(K>>>0<L>>>0){if(I){H=w}else{H=c[y>>2]|0}if((a[H+K>>0]|0)==127){I=J;H=-1;J=0}else{if(I){H=w}else{H=c[y>>2]|0}I=J;H=a[H+K>>0]|0;J=0}}else{I=J;J=0}}G=G+-4|0;M=c[G>>2]|0;L=I+4|0;c[e>>2]=L;c[I>>2]=M;if((G|0)==(g|0)){break}else{J=J+1|0}}}if((F|0)!=(L|0)?(A=L+-4|0,A>>>0>F>>>0):0){G=A;do{M=c[F>>2]|0;c[F>>2]=c[G>>2];c[G>>2]=M;F=F+4|0;G=G+-4|0}while(F>>>0<G>>>0)}break};case 3:{G=a[q>>0]|0;F=(G&1)==0;if(F){G=(G&255)>>>1}else{G=c[t>>2]|0}if((G|0)!=0){if(F){F=t}else{F=c[u>>2]|0}L=c[F>>2]|0;M=c[e>>2]|0;c[e>>2]=M+4;c[M>>2]=L}break};default:{}}E=E+1|0}while((E|0)!=4);v=a[q>>0]|0;w=(v&1)==0;if(w){n=(v&255)>>>1}else{n=c[t>>2]|0}if(n>>>0>1){if(w){n=t;w=(v&255)>>>1}else{n=c[u>>2]|0;w=c[t>>2]|0}v=n+4|0;t=n+(w<<2)|0;u=c[e>>2]|0;if((v|0)!=(t|0)){n=(n+(w+-1<<2)+(0-v)|0)>>>2;w=u;while(1){c[w>>2]=c[v>>2];v=v+4|0;if((v|0)==(t|0)){break}else{w=w+4|0}}u=u+(n+1<<2)|0}c[e>>2]=u}f=f&176;if((f|0)==32){c[d>>2]=c[e>>2];i=s;return}else if((f|0)==16){i=s;return}else{c[d>>2]=b;i=s;return}}function wp(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;q=i;i=i+480|0;n=q;p=q+476|0;v=q+472|0;u=q+468|0;t=q+464|0;s=q+452|0;m=q+440|0;r=q+428|0;A=q+424|0;x=q+24|0;o=q+20|0;d=q+16|0;w=q+12|0;Bk(p,g);y=c[p>>2]|0;if(!((c[270710]|0)==-1)){c[n>>2]=1082840;c[n+4>>2]=221;c[n+8>>2]=0;Yj(1082840,n,222)}B=(c[1082844>>2]|0)+-1|0;z=c[y+8>>2]|0;if(!((c[y+12>>2]|0)-z>>2>>>0>B>>>0)){D=Ta(4)|0;us(D);Rb(D|0,1090808,189)}y=c[z+(B<<2)>>2]|0;if((y|0)==0){D=Ta(4)|0;us(D);Rb(D|0,1090808,189)}B=a[j>>0]|0;z=(B&1)==0;if(z){B=(B&255)>>>1}else{B=c[j+4>>2]|0}if((B|0)==0){z=0}else{if(z){z=j+4|0}else{z=c[j+8>>2]|0}z=c[z>>2]|0;z=(z|0)==(pc[c[(c[y>>2]|0)+44>>2]&63](y,45)|0)}c[v>>2]=0;c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;up(f,z,p,v,u,t,s,m,r,A);f=a[j>>0]|0;C=(f&1)==0;if(C){B=(f&255)>>>1}else{B=c[j+4>>2]|0}A=c[A>>2]|0;if((B|0)>(A|0)){if(C){B=(f&255)>>>1}else{B=c[j+4>>2]|0}C=a[r>>0]|0;if((C&1)==0){C=(C&255)>>>1}else{C=c[r+4>>2]|0}D=a[m>>0]|0;if((D&1)==0){D=(D&255)>>>1}else{D=c[m+4>>2]|0}B=C+(B-A<<1|1)+D|0}else{B=a[r>>0]|0;if((B&1)==0){B=(B&255)>>>1}else{B=c[r+4>>2]|0}C=a[m>>0]|0;if((C&1)==0){C=(C&255)>>>1}else{C=c[m+4>>2]|0}B=B+2+C|0}B=B+A|0;if(B>>>0>100){x=Ps(B<<2)|0;if((x|0)==0){bt()}else{k=x;l=x}}else{k=0;l=x}if((f&1)==0){x=j+4|0;j=(f&255)>>>1}else{x=c[j+8>>2]|0;j=c[j+4>>2]|0}vp(l,o,d,c[g+4>>2]|0,x,x+(j<<2)|0,y,z,v,c[u>>2]|0,c[t>>2]|0,s,m,r,A);c[w>>2]=c[e>>2];C=c[o>>2]|0;D=c[d>>2]|0;c[n+0>>2]=c[w+0>>2];qn(b,n,l,C,D,g,h);if((k|0)==0){qk(r);qk(m);ck(s);D=c[p>>2]|0;Dj(D)|0;i=q;return}Qs(k);qk(r);qk(m);ck(s);D=c[p>>2]|0;Dj(D)|0;i=q;return}function xp(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function yp(a){a=a|0;return}function zp(b,d,e){b=b|0;d=d|0;e=e|0;b=i;if((a[d>>0]&1)==0){d=d+1|0}else{d=c[d+8>>2]|0}e=Ra(d|0,1)|0;i=b;return e>>>((e|0)!=(-1|0)&1)|0}function Ap(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;d=i;i=i+16|0;j=d;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;m=a[h>>0]|0;if((m&1)==0){l=h+1|0;m=(m&255)>>>1;h=h+1|0}else{n=c[h+8>>2]|0;l=n;m=c[h+4>>2]|0;h=n}l=l+m|0;if(h>>>0<l>>>0){do{ik(j,a[h>>0]|0);h=h+1|0}while((h|0)!=(l|0));e=(e|0)==-1?-1:e<<1;if((a[j>>0]&1)==0){k=9}else{l=c[j+8>>2]|0}}else{e=(e|0)==-1?-1:e<<1;k=9}if((k|0)==9){l=j+1|0}g=db(e|0,f|0,g|0,l|0)|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;n=It(g|0)|0;f=g+n|0;if((n|0)<=0){ck(j);i=d;return}do{ik(b,a[g>>0]|0);g=g+1|0}while((g|0)!=(f|0));ck(j);i=d;return}function Bp(a,b){a=a|0;b=b|0;a=i;Pb(((b|0)==-1?-1:b<<1)|0)|0;i=a;return}function Cp(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Dp(a){a=a|0;return}function Ep(b,d,e){b=b|0;d=d|0;e=e|0;b=i;if((a[d>>0]&1)==0){d=d+1|0}else{d=c[d+8>>2]|0}e=Ra(d|0,1)|0;i=b;return e>>>((e|0)!=(-1|0)&1)|0}function Fp(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+176|0;o=j;n=j+48|0;m=j+40|0;l=j+36|0;d=j+24|0;p=j+16|0;k=j+8|0;c[d+0>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[p+4>>2]=0;c[p>>2]=1084504;r=a[h>>0]|0;if((r&1)==0){q=h+4|0;s=(r&255)>>>1;r=h+4|0}else{r=c[h+8>>2]|0;q=r;s=c[h+4>>2]|0}h=q+(s<<2)|0;s=o;c[s>>2]=0;c[s+4>>2]=0;a:do{if(r>>>0<h>>>0){q=n+32|0;s=1084504|0;while(1){c[l>>2]=r;t=(lc[c[s+12>>2]&15](p,o,r,h,l,n,q,m)|0)==2;s=c[l>>2]|0;if(t|(s|0)==(r|0)){break}if(n>>>0<(c[m>>2]|0)>>>0){r=n;do{ik(d,a[r>>0]|0);r=r+1|0}while(r>>>0<(c[m>>2]|0)>>>0);r=c[l>>2]|0}else{r=s}if(!(r>>>0<h>>>0)){break a}s=c[p>>2]|0}$o(1083728)}}while(0);if((a[d>>0]&1)==0){p=d+1|0}else{p=c[d+8>>2]|0}p=db(((e|0)==-1?-1:e<<1)|0,f|0,g|0,p|0)|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[k+4>>2]=0;c[k>>2]=1084608;t=It(p|0)|0;f=p+t|0;s=o;c[s>>2]=0;c[s+4>>2]=0;if((t|0)<=0){ck(d);i=j;return}g=f;e=n+128|0;h=1084608|0;while(1){c[l>>2]=p;t=(lc[c[h+16>>2]&15](k,o,p,(g-p|0)>32?p+32|0:f,l,n,e,m)|0)==2;h=c[l>>2]|0;if(t|(h|0)==(p|0)){b=20;break}if(n>>>0<(c[m>>2]|0)>>>0){p=n;do{uk(b,c[p>>2]|0);p=p+4|0}while(p>>>0<(c[m>>2]|0)>>>0);p=c[l>>2]|0}else{p=h}if(!(p>>>0<f>>>0)){b=25;break}h=c[k>>2]|0}if((b|0)==20){$o(1083728)}else if((b|0)==25){ck(d);i=j;return}}function Gp(a,b){a=a|0;b=b|0;a=i;Pb(((b|0)==-1?-1:b<<1)|0)|0;i=a;return}function Hp(b){b=b|0;var d=0,e=0;d=i;c[b>>2]=1082936;b=b+8|0;e=c[b>>2]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}if((e|0)==(c[270684]|0)){i=d;return}Kb(c[b>>2]|0);i=d;return}function Ip(a){a=a|0;a=Ta(8)|0;Ej(a,1082728);c[a>>2]=1079696;Rb(a|0,1079736,102)}function Jp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e;c[b+4>>2]=d+-1;c[b>>2]=1082768;g=b+8|0;d=b+12|0;h=b+136|0;j=b+24|0;a[h>>0]=1;c[d>>2]=j;c[g>>2]=j;c[b+16>>2]=h;h=28;do{if((j|0)==0){j=0}else{c[j>>2]=0;j=c[d>>2]|0}j=j+4|0;c[d>>2]=j;h=h+-1|0}while((h|0)!=0);ak(b+144|0,1082752,1);g=c[g>>2]|0;h=c[d>>2]|0;if((h|0)!=(g|0)){c[d>>2]=h+(~((h+-4+(0-g)|0)>>>2)<<2)}c[1087660>>2]=0;c[271914]=1081248;if(!((c[270318]|0)==-1)){c[f>>2]=1081272;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1081272,f,222)}Kp(b,1087656,(c[1081276>>2]|0)+-1|0);c[1087652>>2]=0;c[271912]=1081288;if(!((c[270328]|0)==-1)){c[f>>2]=1081312;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1081312,f,222)}Kp(b,1087648,(c[1081316>>2]|0)+-1|0);c[1087636>>2]=0;c[271908]=1082864;c[1087640>>2]=0;a[1087644>>0]=0;c[1087640>>2]=c[(Ia()|0)>>2];if(!((c[270712]|0)==-1)){c[f>>2]=1082848;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082848,f,222)}Kp(b,1087632,(c[1082852>>2]|0)+-1|0);c[1087628>>2]=0;c[271906]=1083824;if(!((c[270710]|0)==-1)){c[f>>2]=1082840;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082840,f,222)}Kp(b,1087624,(c[1082844>>2]|0)+-1|0);c[1087620>>2]=0;c[271904]=1084040;if(!((c[270728]|0)==-1)){c[f>>2]=1082912;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082912,f,222)}Kp(b,1087616,(c[1082916>>2]|0)+-1|0);c[1087604>>2]=0;c[271900]=1082936;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}c[1087608>>2]=c[270684];if(!((c[270730]|0)==-1)){c[f>>2]=1082920;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082920,f,222)}Kp(b,1087600,(c[1082924>>2]|0)+-1|0);c[1087596>>2]=0;c[271898]=1084264;if(!((c[270744]|0)==-1)){c[f>>2]=1082976;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082976,f,222)}Kp(b,1087592,(c[1082980>>2]|0)+-1|0);c[1087588>>2]=0;c[271896]=1084384;if(!((c[270746]|0)==-1)){c[f>>2]=1082984;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082984,f,222)}Kp(b,1087584,(c[1082988>>2]|0)+-1|0);c[1087564>>2]=0;c[271890]=1083016;a[1087568>>0]=46;a[1087569>>0]=44;c[1087572>>2]=0;c[1087576>>2]=0;c[1087580>>2]=0;if(!((c[270748]|0)==-1)){c[f>>2]=1082992;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082992,f,222)}Kp(b,1087560,(c[1082996>>2]|0)+-1|0);c[1087532>>2]=0;c[271882]=1083056;c[1087536>>2]=46;c[1087540>>2]=44;c[1087544>>2]=0;c[1087548>>2]=0;c[1087552>>2]=0;if(!((c[270750]|0)==-1)){c[f>>2]=1083e3;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1083e3,f,222)}Kp(b,1087528,(c[1083004>>2]|0)+-1|0);c[1087524>>2]=0;c[271880]=1081328;if(!((c[270346]|0)==-1)){c[f>>2]=1081384;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1081384,f,222)}Kp(b,1087520,(c[1081388>>2]|0)+-1|0);c[1087516>>2]=0;c[271878]=1081448;if(!((c[270376]|0)==-1)){c[f>>2]=1081504;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1081504,f,222)}Kp(b,1087512,(c[1081508>>2]|0)+-1|0);c[1087508>>2]=0;c[271876]=1081520;if(!((c[270392]|0)==-1)){c[f>>2]=1081568;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1081568,f,222)}Kp(b,1087504,(c[1081572>>2]|0)+-1|0);c[1087500>>2]=0;c[271874]=1081584;if(!((c[270408]|0)==-1)){c[f>>2]=1081632;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1081632,f,222)}Kp(b,1087496,(c[1081636>>2]|0)+-1|0);c[1087492>>2]=0;c[271872]=1082176;if(!((c[270556]|0)==-1)){c[f>>2]=1082224;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082224,f,222)}Kp(b,1087488,(c[1082228>>2]|0)+-1|0);c[1087484>>2]=0;c[271870]=1082240;if(!((c[270572]|0)==-1)){c[f>>2]=1082288;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082288,f,222)}Kp(b,1087480,(c[1082292>>2]|0)+-1|0);c[1087476>>2]=0;c[271868]=1082304;if(!((c[270588]|0)==-1)){c[f>>2]=1082352;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082352,f,222)}Kp(b,1087472,(c[1082356>>2]|0)+-1|0);c[1087468>>2]=0;c[271866]=1082368;if(!((c[270604]|0)==-1)){c[f>>2]=1082416;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082416,f,222)}Kp(b,1087464,(c[1082420>>2]|0)+-1|0);c[1087460>>2]=0;c[271864]=1082432;if(!((c[270614]|0)==-1)){c[f>>2]=1082456;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082456,f,222)}Kp(b,1087456,(c[1082460>>2]|0)+-1|0);c[1087452>>2]=0;c[271862]=1082512;if(!((c[270634]|0)==-1)){c[f>>2]=1082536;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082536,f,222)}Kp(b,1087448,(c[1082540>>2]|0)+-1|0);c[1087444>>2]=0;c[271860]=1082568;if(!((c[270648]|0)==-1)){c[f>>2]=1082592;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082592,f,222)}Kp(b,1087440,(c[1082596>>2]|0)+-1|0);c[1087436>>2]=0;c[271858]=1082616;if(!((c[270660]|0)==-1)){c[f>>2]=1082640;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082640,f,222)}Kp(b,1087432,(c[1082644>>2]|0)+-1|0);c[1087420>>2]=0;c[271854]=1081664;c[1087424>>2]=1081712;if(!((c[270436]|0)==-1)){c[f>>2]=1081744;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1081744,f,222)}Kp(b,1087416,(c[1081748>>2]|0)+-1|0);c[1087404>>2]=0;c[271850]=1081816;c[1087408>>2]=1081864;if(!((c[270474]|0)==-1)){c[f>>2]=1081896;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1081896,f,222)}Kp(b,1087400,(c[1081900>>2]|0)+-1|0);c[1087388>>2]=0;c[271846]=1083760;do{if((a[1082744]|0)==0){if((Ma(1082744)|0)==0){break}c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}}while(0);c[1087392>>2]=c[270684];c[271846]=1082112;if(!((c[270532]|0)==-1)){c[f>>2]=1082128;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082128,f,222)}Kp(b,1087384,(c[1082132>>2]|0)+-1|0);c[1087372>>2]=0;c[271842]=1083760;do{if((a[1082744]|0)==0){if((Ma(1082744)|0)==0){break}c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}}while(0);c[1087376>>2]=c[270684];c[271842]=1082144;if(!((c[270540]|0)==-1)){c[f>>2]=1082160;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082160,f,222)}Kp(b,1087368,(c[1082164>>2]|0)+-1|0);c[1087364>>2]=0;c[271840]=1082656;if(!((c[270670]|0)==-1)){c[f>>2]=1082680;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082680,f,222)}Kp(b,1087360,(c[1082684>>2]|0)+-1|0);c[1087356>>2]=0;c[271838]=1082696;if((c[270680]|0)==-1){j=c[1082724>>2]|0;j=j+-1|0;Kp(b,1087352,j);i=e;return}c[f>>2]=1082720;c[f+4>>2]=221;c[f+8>>2]=0;Yj(1082720,f,222);j=c[1082724>>2]|0;j=j+-1|0;Kp(b,1087352,j);i=e;return}function Kp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;Cj(b);e=a+8|0;a=a+12|0;k=c[a>>2]|0;l=c[e>>2]|0;j=k-l>>2;do{if(!(j>>>0>d>>>0)){h=d+1|0;if(j>>>0<h>>>0){Pr(e,h-j|0);l=c[e>>2]|0;break}if(j>>>0>h>>>0?(g=l+(h<<2)|0,(k|0)!=(g|0)):0){c[a>>2]=k+(~((k+-4+(0-g)|0)>>>2)<<2)}}}while(0);g=c[l+(d<<2)>>2]|0;if((g|0)==0){l=l+(d<<2)|0;c[l>>2]=b;i=f;return}Dj(g)|0;l=c[e>>2]|0;l=l+(d<<2)|0;c[l>>2]=b;i=f;return}function Lp(a){a=a|0;var b=0;b=i;Mp(a);Ys(a);i=b;return}function Mp(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i;c[b>>2]=1082768;d=b+12|0;g=c[d>>2]|0;f=b+8|0;j=c[f>>2]|0;if((g|0)!=(j|0)){h=0;do{k=c[j+(h<<2)>>2]|0;if((k|0)!=0){Dj(k)|0;g=c[d>>2]|0;j=c[f>>2]|0}h=h+1|0}while(h>>>0<g-j>>2>>>0)}ck(b+144|0);f=c[f>>2]|0;if((f|0)==0){i=e;return}g=c[d>>2]|0;if((g|0)!=(f|0)){c[d>>2]=g+(~((g+-4+(0-f)|0)>>>2)<<2)}if((b+24|0)==(f|0)){a[b+136>>0]=0;i=e;return}else{Ys(f);i=e;return}}function Np(){var b=0,d=0;b=i;if((a[1082824]|0)!=0){d=c[270704]|0;i=b;return d|0}if((Ma(1082824)|0)==0){d=c[270704]|0;i=b;return d|0}if((a[1082800]|0)==0?(Ma(1082800)|0)!=0:0){Jp(1087192,1);c[270696]=1087192;c[270698]=1082784;Xa(1082800)}d=c[c[270698]>>2]|0;c[270702]=d;Cj(d);c[270704]=1082808;Xa(1082824);d=c[270704]|0;i=b;return d|0}function Op(a){a=a|0;var b=0,d=0;b=i;d=c[(Np()|0)>>2]|0;c[a>>2]=d;Cj(d);i=b;return}function Pp(a,b){a=a|0;b=b|0;var d=0;d=i;b=c[b>>2]|0;c[a>>2]=b;Cj(b);i=d;return}function Qp(a){a=a|0;var b=0;b=i;Dj(c[a>>2]|0)|0;i=b;return}function Rp(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;a=c[a>>2]|0;if(!((c[b>>2]|0)==-1)){c[e>>2]=b;c[e+4>>2]=221;c[e+8>>2]=0;Yj(b,e,222)}e=(c[b+4>>2]|0)+-1|0;b=c[a+8>>2]|0;if(!((c[a+12>>2]|0)-b>>2>>>0>e>>>0)){e=0;i=d;return e|0}e=(c[b+(e<<2)>>2]|0)!=0;i=d;return e|0}function Sp(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;a=c[a>>2]|0;if(!((c[b>>2]|0)==-1)){c[e>>2]=b;c[e+4>>2]=221;c[e+8>>2]=0;Yj(b,e,222)}e=(c[b+4>>2]|0)+-1|0;b=c[a+8>>2]|0;if(!((c[a+12>>2]|0)-b>>2>>>0>e>>>0)){e=Ta(4)|0;us(e);Rb(e|0,1090808,189)}a=c[b+(e<<2)>>2]|0;if((a|0)==0){e=Ta(4)|0;us(e);Rb(e|0,1090808,189)}else{i=d;return a|0}return 0}function Tp(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Up(a){a=a|0;var b=0;b=i;if((a|0)==0){i=b;return}dc[c[(c[a>>2]|0)+4>>2]&255](a);i=b;return}function Vp(a){a=a|0;var b=0;b=c[270708]|0;c[270708]=b+1;c[a+4>>2]=b+1;return}function Wp(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Xp(a,d,e){a=a|0;d=d|0;e=e|0;a=i;if(!(e>>>0<128)){d=0;i=a;return d|0}d=(b[(c[(Ia()|0)>>2]|0)+(e<<1)>>1]&d)<<16>>16!=0;i=a;return d|0}function Yp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;a=i;if((d|0)==(e|0)){g=d;i=a;return g|0}while(1){g=c[d>>2]|0;if(g>>>0<128){g=b[(c[(Ia()|0)>>2]|0)+(g<<1)>>1]|0}else{g=0}b[f>>1]=g;d=d+4|0;if((d|0)==(e|0)){break}else{f=f+2|0}}i=a;return e|0}function Zp(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;a=i;a:do{if((e|0)==(f|0)){f=e}else{do{g=c[e>>2]|0;if(g>>>0<128?!((b[(c[(Ia()|0)>>2]|0)+(g<<1)>>1]&d)<<16>>16==0):0){f=e;break a}e=e+4|0}while((e|0)!=(f|0))}}while(0);i=a;return f|0}function _p(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;a=i;a:do{if((e|0)==(f|0)){f=e}else{do{g=c[e>>2]|0;if(!(g>>>0<128)){f=e;break a}if((b[(c[(Ia()|0)>>2]|0)+(g<<1)>>1]&d)<<16>>16==0){f=e;break a}e=e+4|0}while((e|0)!=(f|0))}}while(0);i=a;return f|0}function $p(a,b){a=a|0;b=b|0;a=i;if(!(b>>>0<128)){i=a;return b|0}b=c[(c[(Va()|0)>>2]|0)+(b<<2)>>2]|0;i=a;return b|0}function aq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=i;if((b|0)==(d|0)){e=b;i=a;return e|0}do{e=c[b>>2]|0;if(e>>>0<128){e=c[(c[(Va()|0)>>2]|0)+(e<<2)>>2]|0}c[b>>2]=e;b=b+4|0}while((b|0)!=(d|0));i=a;return d|0}function bq(a,b){a=a|0;b=b|0;a=i;if(!(b>>>0<128)){i=a;return b|0}b=c[(c[(rb()|0)>>2]|0)+(b<<2)>>2]|0;i=a;return b|0}function cq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=i;if((b|0)==(d|0)){e=b;i=a;return e|0}do{e=c[b>>2]|0;if(e>>>0<128){e=c[(c[(rb()|0)>>2]|0)+(e<<2)>>2]|0}c[b>>2]=e;b=b+4|0}while((b|0)!=(d|0));i=a;return d|0}function dq(a,b){a=a|0;b=b|0;return b<<24>>24|0}function eq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;b=i;if((d|0)==(e|0)){i=b;return d|0}while(1){c[f>>2]=a[d>>0]|0;d=d+1|0;if((d|0)==(e|0)){break}else{f=f+4|0}}i=b;return e|0}function fq(a,b,c){a=a|0;b=b|0;c=c|0;return(b>>>0<128?b&255:c)|0}function gq(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0;b=i;if((d|0)==(e|0)){j=d;i=b;return j|0}h=((e+-4+(0-d)|0)>>>2)+1|0;j=d;while(1){k=c[j>>2]|0;a[g>>0]=k>>>0<128?k&255:f;j=j+4|0;if((j|0)==(e|0)){break}else{g=g+1|0}}k=d+(h<<2)|0;i=b;return k|0}function hq(b){b=b|0;var d=0,e=0;d=i;c[b>>2]=1082864;e=c[b+8>>2]|0;if((e|0)!=0?(a[b+12>>0]|0)!=0:0){Zs(e)}Ys(b);i=d;return}function iq(b){b=b|0;var d=0,e=0;d=i;c[b>>2]=1082864;e=c[b+8>>2]|0;if((e|0)!=0?(a[b+12>>0]|0)!=0:0){Zs(e)}i=d;return}function jq(a,b){a=a|0;b=b|0;a=i;if(!(b<<24>>24>-1)){i=a;return b|0}b=c[(c[(Va()|0)>>2]|0)+((b&255)<<2)>>2]&255;i=a;return b|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;b=i;if((d|0)==(e|0)){f=d;i=b;return f|0}do{f=a[d>>0]|0;if(f<<24>>24>-1){f=c[(c[(Va()|0)>>2]|0)+(f<<24>>24<<2)>>2]&255}a[d>>0]=f;d=d+1|0}while((d|0)!=(e|0));i=b;return e|0}function lq(a,b){a=a|0;b=b|0;a=i;if(!(b<<24>>24>-1)){i=a;return b|0}b=c[(c[(rb()|0)>>2]|0)+(b<<24>>24<<2)>>2]&255;i=a;return b|0}function mq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;b=i;if((d|0)==(e|0)){f=d;i=b;return f|0}do{f=a[d>>0]|0;if(f<<24>>24>-1){f=c[(c[(rb()|0)>>2]|0)+(f<<24>>24<<2)>>2]&255}a[d>>0]=f;d=d+1|0}while((d|0)!=(e|0));i=b;return e|0}function nq(a,b){a=a|0;b=b|0;return b|0}function oq(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;b=i;if((c|0)==(d|0)){d=c}else{while(1){a[e>>0]=a[c>>0]|0;c=c+1|0;if((c|0)==(d|0)){break}else{e=e+1|0}}}i=b;return d|0}function pq(a,b,c){a=a|0;b=b|0;c=c|0;return(b<<24>>24>-1?b:c)|0}function qq(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0;b=i;if((c|0)==(d|0)){i=b;return c|0}while(1){g=a[c>>0]|0;a[f>>0]=g<<24>>24>-1?g:e;c=c+1|0;if((c|0)==(d|0)){break}else{f=f+1|0}}i=b;return d|0}function rq(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function sq(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function tq(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function uq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function vq(a){a=a|0;return 1}function wq(a){a=a|0;return 1}function xq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;b=d-c|0;return(b>>>0<e>>>0?b:e)|0}function yq(a){a=a|0;return 1}function zq(a){a=a|0;var b=0;b=i;Hp(a);Ys(a);i=b;return}function Aq(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;l=i;i=i+16|0;m=l;n=l+8|0;o=(e|0)==(f|0);a:do{if(!o){p=e;while(1){if((c[p>>2]|0)==0){break}p=p+4|0;if((p|0)==(f|0)){p=f;break}}c[k>>2]=h;c[g>>2]=e;if(!(o|(h|0)==(j|0))){o=j;b=b+8|0;while(1){s=d;r=c[s+4>>2]|0;q=m;c[q>>2]=c[s>>2];c[q+4>>2]=r;q=cb(c[b>>2]|0)|0;r=hs(h,g,p-e>>2,o-h|0,d)|0;if((q|0)!=0){cb(q|0)|0}if((r|0)==-1){n=10;break}else if((r|0)==0){g=1;n=33;break}h=(c[k>>2]|0)+r|0;c[k>>2]=h;if((h|0)==(j|0)){n=31;break}if((p|0)==(f|0)){e=c[g>>2]|0;p=f}else{e=cb(c[b>>2]|0)|0;h=qt(n,0,d)|0;if((e|0)!=0){cb(e|0)|0}if((h|0)==-1){g=2;n=33;break}e=c[k>>2]|0;if(h>>>0>(o-e|0)>>>0){g=1;n=33;break}b:do{if((h|0)!=0){p=n;while(1){s=a[p>>0]|0;c[k>>2]=e+1;a[e>>0]=s;h=h+-1|0;if((h|0)==0){break b}e=c[k>>2]|0;p=p+1|0}}}while(0);e=(c[g>>2]|0)+4|0;c[g>>2]=e;c:do{if((e|0)==(f|0)){p=f}else{p=e;while(1){if((c[p>>2]|0)==0){break c}p=p+4|0;if((p|0)==(f|0)){p=f;break}}}}while(0);h=c[k>>2]|0}if((e|0)==(f|0)|(h|0)==(j|0)){break a}}if((n|0)==10){c[k>>2]=h;d:do{if((e|0)!=(c[g>>2]|0)){do{n=c[e>>2]|0;f=cb(c[b>>2]|0)|0;n=qt(h,n,m)|0;if((f|0)!=0){cb(f|0)|0}if((n|0)==-1){break d}h=(c[k>>2]|0)+n|0;c[k>>2]=h;e=e+4|0}while((e|0)!=(c[g>>2]|0))}}while(0);c[g>>2]=e;s=2;i=l;return s|0}else if((n|0)==31){e=c[g>>2]|0;break}else if((n|0)==33){i=l;return g|0}}}else{c[k>>2]=h;c[g>>2]=e}}while(0);s=(e|0)!=(f|0)&1;i=l;return s|0}function Bq(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=i;i=i+16|0;m=l;n=(e|0)==(f|0);a:do{if(!n){p=e;while(1){if((a[p>>0]|0)==0){break}p=p+1|0;if((p|0)==(f|0)){p=f;break}}c[k>>2]=h;c[g>>2]=e;if(!(n|(h|0)==(j|0))){n=j;b=b+8|0;while(1){q=d;r=c[q+4>>2]|0;o=m;c[o>>2]=c[q>>2];c[o+4>>2]=r;o=p;r=cb(c[b>>2]|0)|0;q=es(h,g,o-e|0,n-h>>2,d)|0;if((r|0)!=0){cb(r|0)|0}if((q|0)==0){f=2;d=32;break}else if((q|0)==-1){d=10;break}h=(c[k>>2]|0)+(q<<2)|0;c[k>>2]=h;if((h|0)==(j|0)){d=30;break}e=c[g>>2]|0;if((p|0)==(f|0)){p=f}else{o=cb(c[b>>2]|0)|0;e=cs(h,e,1,d)|0;if((o|0)!=0){cb(o|0)|0}if((e|0)!=0){f=2;d=32;break}c[k>>2]=(c[k>>2]|0)+4;e=(c[g>>2]|0)+1|0;c[g>>2]=e;b:do{if((e|0)==(f|0)){p=f}else{p=e;while(1){if((a[p>>0]|0)==0){break b}p=p+1|0;if((p|0)==(f|0)){p=f;break}}}}while(0);h=c[k>>2]|0}if((e|0)==(f|0)|(h|0)==(j|0)){break a}}if((d|0)==10){c[k>>2]=h;c:do{if((e|0)!=(c[g>>2]|0)){while(1){d=cb(c[b>>2]|0)|0;j=cs(h,e,o-e|0,m)|0;if((d|0)!=0){cb(d|0)|0}if((j|0)==-1){d=15;break}else if((j|0)==-2){d=16;break}else if((j|0)==0){e=e+1|0}else{e=e+j|0}h=(c[k>>2]|0)+4|0;c[k>>2]=h;if((e|0)==(c[g>>2]|0)){break c}}if((d|0)==15){c[g>>2]=e;r=2;i=l;return r|0}else if((d|0)==16){c[g>>2]=e;r=1;i=l;return r|0}}}while(0);c[g>>2]=e;r=(e|0)!=(f|0)&1;i=l;return r|0}else if((d|0)==30){e=c[g>>2]|0;break}else if((d|0)==32){i=l;return f|0}}}else{c[k>>2]=h;c[g>>2]=e}}while(0);r=(e|0)!=(f|0)&1;i=l;return r|0}function Cq(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0;h=i;i=i+16|0;j=h;c[g>>2]=e;b=cb(c[b+8>>2]|0)|0;d=qt(j,0,d)|0;if((b|0)!=0){cb(b|0)|0}if((d|0)==0|(d|0)==-1){e=2;i=h;return e|0}d=d+-1|0;b=c[g>>2]|0;if(d>>>0>(f-b|0)>>>0){e=1;i=h;return e|0}if((d|0)==0){e=0;i=h;return e|0}else{f=b}while(1){e=a[j>>0]|0;c[g>>2]=f+1;a[f>>0]=e;d=d+-1|0;if((d|0)==0){g=0;break}f=c[g>>2]|0;j=j+1|0}i=h;return g|0}function Dq(a){a=a|0;var b=0,d=0,e=0;b=i;a=a+8|0;e=cb(c[a>>2]|0)|0;d=gs(0,0,4)|0;if((e|0)!=0){cb(e|0)|0}if((d|0)==0){a=c[a>>2]|0;if((a|0)!=0){a=cb(a|0)|0;if((a|0)==0){a=0}else{cb(a|0)|0;a=0}}else{a=1}}else{a=-1}i=b;return a|0}function Eq(a){a=a|0;return 0}function Fq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;if((f|0)==0|(d|0)==(e|0)){m=0;i=g;return m|0}h=e;a=a+8|0;k=0;j=0;while(1){m=cb(c[a>>2]|0)|0;l=bs(d,h-d|0,b)|0;if((m|0)!=0){cb(m|0)|0}if((l|0)==-2|(l|0)==-1){f=9;break}else if((l|0)==0){d=d+1|0;l=1}else{d=d+l|0}k=l+k|0;j=j+1|0;if(j>>>0>=f>>>0|(d|0)==(e|0)){f=9;break}}if((f|0)==9){i=g;return k|0}return 0}function Gq(a){a=a|0;var b=0;b=i;a=c[a+8>>2]|0;if((a|0)!=0){a=cb(a|0)|0;if((a|0)==0){a=4}else{cb(a|0)|0;a=4}}else{a=1}i=b;return a|0}function Hq(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function zj(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,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=i;i=i+32|0;h=f+16|0;j=f+8|0;n=f+4|0;m=f;o=b+52|0;if((a[o>>0]|0)!=0){g=b+48|0;h=c[g>>2]|0;if(!e){w=h;i=f;return w|0}c[g>>2]=-1;a[o>>0]=0;w=h;i=f;return w|0}p=c[b+44>>2]|0;p=(p|0)>1?p:1;a:do{if((p|0)>0){r=b+32|0;o=0;while(1){q=Ab(c[r>>2]|0)|0;if((q|0)==-1){k=-1;break}a[h+o>>0]=q;o=o+1|0;if((o|0)>=(p|0)){break a}}i=f;return k|0}}while(0);b:do{if((a[b+53>>0]|0)==0){r=b+40|0;s=b+36|0;o=j+1|0;q=b+32|0;while(1){w=c[r>>2]|0;v=w;u=c[v>>2]|0;v=c[v+4>>2]|0;x=c[s>>2]|0;t=h+p|0;w=lc[c[(c[x>>2]|0)+16>>2]&15](x,w,h,t,n,j,o,m)|0;if((w|0)==3){m=14;break}else if((w|0)==2){k=-1;m=23;break}else if((w|0)!=1){l=p;break b}x=c[r>>2]|0;c[x>>2]=u;c[x+4>>2]=v;if((p|0)==8){k=-1;m=23;break}u=Ab(c[q>>2]|0)|0;if((u|0)==-1){k=-1;m=23;break}a[t>>0]=u;p=p+1|0}if((m|0)==14){a[j>>0]=a[h>>0]|0;l=p;break}else if((m|0)==23){i=f;return k|0}}else{a[j>>0]=a[h>>0]|0;l=p}}while(0);do{if(!e){e=b+32|0;while(1){if((l|0)<=0){m=21;break}l=l+-1|0;if((Qa(d[h+l>>0]|0,c[e>>2]|0)|0)==-1){k=-1;m=23;break}}if((m|0)==21){g=a[j>>0]|0;break}else if((m|0)==23){i=f;return k|0}}else{g=a[j>>0]|0;c[b+48>>2]=g&255}}while(0);x=g&255;i=f;return x|0}function Aj(){var a=0;a=i;Yi(0);Sa(220,1078736,p|0)|0;i=a;return}function Bj(a){a=a|0;return}function Cj(a){a=a|0;a=a+4|0;c[a>>2]=(c[a>>2]|0)+1;return}function Dj(a){a=a|0;var b=0,d=0,e=0;b=i;e=a+4|0;d=c[e>>2]|0;c[e>>2]=d+-1;if((d|0)!=0){e=0;i=b;return e|0}dc[c[(c[a>>2]|0)+8>>2]&255](a);e=1;i=b;return e|0}function Ej(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;c[a>>2]=1079616;e=It(b|0)|0;g=Xs(e+13|0)|0;c[g+4>>2]=e;c[g>>2]=e;f=g+12|0;c[a+4>>2]=f;c[g+8>>2]=0;Nt(f|0,b|0,e+1|0)|0;i=d;return}function Fj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1079616;d=a+4|0;f=(c[d>>2]|0)+-4|0;e=c[f>>2]|0;c[f>>2]=e+-1;if((e+-1|0)<0){Zs((c[d>>2]|0)+-12|0)}Gb(a|0);Ys(a);i=b;return}function Gj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1079616;d=a+4|0;f=(c[d>>2]|0)+-4|0;e=c[f>>2]|0;c[f>>2]=e+-1;if((e+-1|0)>=0){Gb(a|0);i=b;return}Zs((c[d>>2]|0)+-12|0);Gb(a|0);i=b;return}function Hj(a){a=a|0;return c[a+4>>2]|0}function Ij(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;c[b>>2]=1079640;if((a[d>>0]&1)==0){d=d+1|0}else{d=c[d+8>>2]|0}f=It(d|0)|0;h=Xs(f+13|0)|0;c[h+4>>2]=f;c[h>>2]=f;g=h+12|0;c[b+4>>2]=g;c[h+8>>2]=0;Nt(g|0,d|0,f+1|0)|0;i=e;return}function Jj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;c[a>>2]=1079640;e=It(b|0)|0;g=Xs(e+13|0)|0;c[g+4>>2]=e;c[g>>2]=e;f=g+12|0;c[a+4>>2]=f;c[g+8>>2]=0;Nt(f|0,b|0,e+1|0)|0;i=d;return}function Kj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1079640;d=a+4|0;f=(c[d>>2]|0)+-4|0;e=c[f>>2]|0;c[f>>2]=e+-1;if((e+-1|0)<0){Zs((c[d>>2]|0)+-12|0)}Gb(a|0);Ys(a);i=b;return}function Lj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1079640;d=a+4|0;f=(c[d>>2]|0)+-4|0;e=c[f>>2]|0;c[f>>2]=e+-1;if((e+-1|0)>=0){Gb(a|0);i=b;return}Zs((c[d>>2]|0)+-12|0);Gb(a|0);i=b;return}function Mj(a){a=a|0;return c[a+4>>2]|0}function Nj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1079616;d=a+4|0;f=(c[d>>2]|0)+-4|0;e=c[f>>2]|0;c[f>>2]=e+-1;if((e+-1|0)<0){Zs((c[d>>2]|0)+-12|0)}Gb(a|0);Ys(a);i=b;return}function Oj(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1079616;d=a+4|0;f=(c[d>>2]|0)+-4|0;e=c[f>>2]|0;c[f>>2]=e+-1;if((e+-1|0)<0){Zs((c[d>>2]|0)+-12|0)}Gb(a|0);Ys(a);i=b;return}function Pj(a){a=a|0;return}function Qj(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=d;c[a+4>>2]=b;return}function Rj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;ic[c[(c[a>>2]|0)+12>>2]&3](f,a,b);if((c[f+4>>2]|0)!=(c[d+4>>2]|0)){a=0;i=e;return a|0}a=(c[f>>2]|0)==(c[d>>2]|0);i=e;return a|0}function Sj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;if((c[b+4>>2]|0)!=(a|0)){a=0;i=e;return a|0}a=(c[b>>2]|0)==(d|0);i=e;return a|0}function Tj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;d=i;f=Tb(e|0)|0;e=It(f|0)|0;if(e>>>0>4294967279){Zj(0)}if(e>>>0<11){a[b>>0]=e<<1;b=b+1|0;Nt(b|0,f|0,e|0)|0;f=b+e|0;a[f>>0]=0;i=d;return}else{h=e+16&-16;g=Vs(h)|0;c[b+8>>2]=g;c[b>>2]=h|1;c[b+4>>2]=e;b=g;Nt(b|0,f|0,e|0)|0;f=b+e|0;a[f>>0]=0;i=d;return}}function Uj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g;h=c[d>>2]|0;if((h|0)!=0){j=a[e>>0]|0;if((j&1)==0){j=(j&255)>>>1}else{j=c[e+4>>2]|0}if((j|0)!=0){jk(e,1079856,2)|0;h=c[d>>2]|0}j=c[d+4>>2]|0;ic[c[(c[j>>2]|0)+24>>2]&3](f,j,h);h=a[f>>0]|0;if((h&1)==0){d=f+1|0;h=(h&255)>>>1}else{d=c[f+8>>2]|0;h=c[f+4>>2]|0}jk(e,d,h)|0;if(!((a[f>>0]&1)==0)){Ys(c[f+8>>2]|0)}}c[b+0>>2]=c[e+0>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;i=g;return}function Vj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;h=f+12|0;g=f;j=It(e|0)|0;if(j>>>0>4294967279){Zj(0)}if(j>>>0<11){a[g>>0]=j<<1;k=g+1|0}else{l=j+16&-16;k=Vs(l)|0;c[g+8>>2]=k;c[g>>2]=l|1;c[g+4>>2]=j}Nt(k|0,e|0,j|0)|0;a[k+j>>0]=0;Uj(h,d,g);Ij(b,h);if(!((a[h>>0]&1)==0)){Ys(c[h+8>>2]|0)}if(!((a[g>>0]&1)==0)){Ys(c[g+8>>2]|0)}c[b>>2]=1079872;e=d;k=c[e+4>>2]|0;l=b+8|0;c[l>>2]=c[e>>2];c[l+4>>2]=k;i=f;return}function Wj(a){a=a|0;var b=0;b=i;Lj(a);Ys(a);i=b;return}function Xj(a){a=a|0;var b=0;b=i;Lj(a);i=b;return}function Yj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;Sb(1080008)|0;if((c[a>>2]|0)==1){do{Da(1080032,1080008)|0}while((c[a>>2]|0)==1)}if((c[a>>2]|0)==0){c[a>>2]=1;tb(1080008)|0;dc[d&255](b);Sb(1080008)|0;c[a>>2]=-1;tb(1080008)|0;Lb(1080032)|0;i=e;return}else{tb(1080008)|0;i=e;return}}function Zj(a){a=a|0;a=Ta(8)|0;Ej(a,1080080);c[a>>2]=1079696;Rb(a|0,1079736,102)}function _j(a){a=a|0;a=Ta(8)|0;Ej(a,1080080);c[a>>2]=1079760;Rb(a|0,1079800,102)}function $j(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;
+e=i;if((a[d>>0]&1)==0){c[b+0>>2]=c[d+0>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];i=e;return}f=c[d+8>>2]|0;d=c[d+4>>2]|0;if(d>>>0>4294967279){Zj(0)}if(d>>>0<11){a[b>>0]=d<<1;b=b+1|0}else{h=d+16&-16;g=Vs(h)|0;c[b+8>>2]=g;c[b>>2]=h|1;c[b+4>>2]=d;b=g}Nt(b|0,f|0,d|0)|0;a[b+d>>0]=0;i=e;return}function ak(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;if(e>>>0>4294967279){Zj(0)}if(e>>>0<11){a[b>>0]=e<<1;b=b+1|0}else{h=e+16&-16;g=Vs(h)|0;c[b+8>>2]=g;c[b>>2]=h|1;c[b+4>>2]=e;b=g}Nt(b|0,d|0,e|0)|0;a[b+e>>0]=0;i=f;return}function bk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;if(d>>>0>4294967279){Zj(0)}if(d>>>0<11){a[b>>0]=d<<1;b=b+1|0}else{h=d+16&-16;g=Vs(h)|0;c[b+8>>2]=g;c[b>>2]=h|1;c[b+4>>2]=d;b=g}Lt(b|0,e|0,d|0)|0;a[b+d>>0]=0;i=f;return}function ck(b){b=b|0;var d=0;d=i;if((a[b>>0]&1)==0){i=d;return}Ys(c[b+8>>2]|0);i=d;return}function dk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;e=It(d|0)|0;h=a[b>>0]|0;if((h&1)==0){g=10}else{g=c[b>>2]|0;h=g&255;g=(g&-2)+-1|0}j=(h&1)==0;if(g>>>0<e>>>0){if(j){h=(h&255)>>>1}else{h=c[b+4>>2]|0}kk(b,g,e-g|0,h,0,h,e,d);i=f;return b|0}if(j){g=b+1|0}else{g=c[b+8>>2]|0}Ot(g|0,d|0,e|0)|0;a[g+e>>0]=0;if((a[b>>0]&1)==0){a[b>>0]=e<<1;i=f;return b|0}else{c[b+4>>2]=e;i=f;return b|0}return 0}function ek(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;h=a[b>>0]|0;if((h&1)==0){g=10}else{h=c[b>>2]|0;g=(h&-2)+-1|0;h=h&255}j=(h&1)==0;if(g>>>0<e>>>0){if(j){h=(h&255)>>>1}else{h=c[b+4>>2]|0}kk(b,g,e-g|0,h,0,h,e,d);i=f;return b|0}if(j){g=b+1|0}else{g=c[b+8>>2]|0}Ot(g|0,d|0,e|0)|0;a[g+e>>0]=0;if((a[b>>0]&1)==0){a[b>>0]=e<<1;i=f;return b|0}else{c[b+4>>2]=e;i=f;return b|0}return 0}function fk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;h=a[b>>0]|0;g=(h&1)==0;if(g){h=(h&255)>>>1}else{h=c[b+4>>2]|0}if(h>>>0<d>>>0){gk(b,d-h|0,e)|0;i=f;return}if(g){a[b+d+1>>0]=0;a[b>>0]=d<<1;i=f;return}else{a[(c[b+8>>2]|0)+d>>0]=0;c[b+4>>2]=d;i=f;return}}function gk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;if((d|0)==0){i=f;return b|0}j=a[b>>0]|0;if((j&1)==0){h=10}else{j=c[b>>2]|0;h=(j&-2)+-1|0;j=j&255}if((j&1)==0){g=(j&255)>>>1}else{g=c[b+4>>2]|0}if((h-g|0)>>>0<d>>>0){lk(b,h,d-h+g|0,g,g,0,0);j=a[b>>0]|0}if((j&1)==0){h=b+1|0}else{h=c[b+8>>2]|0}Lt(h+g|0,e|0,d|0)|0;e=g+d|0;if((a[b>>0]&1)==0){a[b>>0]=e<<1}else{c[b+4>>2]=e}a[h+e>>0]=0;i=f;return b|0}function hk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;if(d>>>0>4294967279){Zj(0)}g=a[b>>0]|0;if((g&1)==0){h=10}else{g=c[b>>2]|0;h=(g&-2)+-1|0;g=g&255}if((g&1)==0){f=(g&255)>>>1}else{f=c[b+4>>2]|0}d=f>>>0>d>>>0?f:d;if(d>>>0<11){d=10}else{d=(d+16&-16)+-1|0}if((d|0)==(h|0)){i=e;return}do{if((d|0)!=10){j=d+1|0;if(d>>>0>h>>>0){k=Vs(j)|0}else{k=Vs(j)|0}if((g&1)==0){l=1;j=b+1|0;h=0;break}else{l=1;j=c[b+8>>2]|0;h=1;break}}else{k=b+1|0;l=0;j=c[b+8>>2]|0;h=1}}while(0);if((g&1)==0){g=(g&255)>>>1}else{g=c[b+4>>2]|0}Nt(k|0,j|0,g+1|0)|0;if(h){Ys(j)}if(l){c[b>>2]=d+1|1;c[b+4>>2]=f;c[b+8>>2]=k;i=e;return}else{a[b>>0]=f<<1;i=e;return}}function ik(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;g=a[b>>0]|0;f=(g&1)!=0;if(f){h=(c[b>>2]&-2)+-1|0;g=c[b+4>>2]|0}else{h=10;g=(g&255)>>>1}if((g|0)==(h|0)){lk(b,h,1,h,h,0,0);if((a[b>>0]&1)==0){f=7}else{f=8}}else{if(f){f=8}else{f=7}}if((f|0)==7){a[b>>0]=(g<<1)+2;f=b+1|0;h=g+1|0;g=f+g|0;a[g>>0]=d;h=f+h|0;a[h>>0]=0;i=e;return}else if((f|0)==8){f=c[b+8>>2]|0;h=g+1|0;c[b+4>>2]=h;g=f+g|0;a[g>>0]=d;h=f+h|0;a[h>>0]=0;i=e;return}}function jk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;j=a[b>>0]|0;if((j&1)==0){g=10}else{j=c[b>>2]|0;g=(j&-2)+-1|0;j=j&255}if((j&1)==0){h=(j&255)>>>1}else{h=c[b+4>>2]|0}if((g-h|0)>>>0<e>>>0){kk(b,g,e-g+h|0,h,h,0,e,d);i=f;return b|0}if((e|0)==0){i=f;return b|0}if((j&1)==0){g=b+1|0}else{g=c[b+8>>2]|0}Nt(g+h|0,d|0,e|0)|0;e=h+e|0;if((a[b>>0]&1)==0){a[b>>0]=e<<1}else{c[b+4>>2]=e}a[g+e>>0]=0;i=f;return b|0}function kk(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0;l=i;if((-18-d|0)>>>0<e>>>0){Zj(0)}if((a[b>>0]&1)==0){m=b+1|0}else{m=c[b+8>>2]|0}if(d>>>0<2147483623){e=e+d|0;n=d<<1;e=e>>>0<n>>>0?n:e;if(e>>>0<11){e=11}else{e=e+16&-16}}else{e=-17}n=Vs(e)|0;if((g|0)!=0){Nt(n|0,m|0,g|0)|0}if((j|0)!=0){Nt(n+g|0,k|0,j|0)|0}k=f-h|0;if((k|0)!=(g|0)){Nt(n+(j+g)|0,m+(h+g)|0,k-g|0)|0}if((d|0)==10){f=b+8|0;c[f>>2]=n;e=e|1;c[b>>2]=e;e=k+j|0;f=b+4|0;c[f>>2]=e;n=n+e|0;a[n>>0]=0;i=l;return}Ys(m);f=b+8|0;c[f>>2]=n;e=e|1;c[b>>2]=e;e=k+j|0;f=b+4|0;c[f>>2]=e;n=n+e|0;a[n>>0]=0;i=l;return}function lk(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0;k=i;if((-17-d|0)>>>0<e>>>0){Zj(0)}if((a[b>>0]&1)==0){l=b+1|0}else{l=c[b+8>>2]|0}if(d>>>0<2147483623){e=e+d|0;m=d<<1;e=e>>>0<m>>>0?m:e;if(e>>>0<11){m=11}else{m=e+16&-16}}else{m=-17}e=Vs(m)|0;if((g|0)!=0){Nt(e|0,l|0,g|0)|0}f=f-h|0;if((f|0)!=(g|0)){Nt(e+(j+g)|0,l+(h+g)|0,f-g|0)|0}if((d|0)==10){f=b+8|0;c[f>>2]=e;m=m|1;c[b>>2]=m;i=k;return}Ys(l);f=b+8|0;c[f>>2]=e;m=m|1;c[b>>2]=m;i=k;return}function mk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;j=a[b>>0]|0;k=(j&1)==0;if(k){h=(j&255)>>>1}else{h=c[b+4>>2]|0}if(h>>>0<d>>>0){_j(0)}if(k){k=10}else{j=c[b>>2]|0;k=(j&-2)+-1|0;j=j&255}if((k-h|0)>>>0<f>>>0){kk(b,k,h+f-k|0,h,d,0,f,e);i=g;return b|0}if((f|0)==0){i=g;return b|0}if((j&1)==0){j=b+1|0}else{j=c[b+8>>2]|0}l=h-d|0;k=j+d|0;if((h|0)!=(d|0)){if(!(k>>>0>e>>>0)?(j+h|0)>>>0>e>>>0:0){e=e+f|0}Ot(j+(f+d)|0,k|0,l|0)|0}Ot(k|0,e|0,f|0)|0;f=h+f|0;if((a[b>>0]&1)==0){a[b>>0]=f<<1}else{c[b+4>>2]=f}a[j+f>>0]=0;i=g;return b|0}function nk(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;k=a[b>>0]|0;n=(k&1)==0;if(n){j=(k&255)>>>1}else{j=c[b+4>>2]|0}if(j>>>0<d>>>0){_j(0)}m=j-d|0;e=m>>>0<e>>>0?m:e;if(n){n=10}else{k=c[b>>2]|0;n=(k&-2)+-1|0;k=k&255}if((e-j+n|0)>>>0<g>>>0){kk(b,n,j+g-e-n|0,j,d,e,g,f);i=h;return b|0}if((k&1)==0){k=b+1|0}else{k=c[b+8>>2]|0}do{if((e|0)!=(g|0)){n=m-e|0;if((m|0)==(e|0)){n=g;e=m;l=22}else{m=k+d|0;if(e>>>0>g>>>0){Ot(m|0,f|0,g|0)|0;Ot(k+(g+d)|0,k+(e+d)|0,n|0)|0;break}do{if(m>>>0<f>>>0?(k+j|0)>>>0>f>>>0:0){l=e+d|0;if((k+l|0)>>>0>f>>>0){Ot(m|0,f|0,e|0)|0;d=l;f=f+g|0;g=g-e|0;e=0;break}else{f=f+(g-e)|0;break}}}while(0);Ot(k+(d+g)|0,k+(d+e)|0,n|0)|0;n=g;l=22}}else{n=g;e=g;l=22}}while(0);if((l|0)==22){Ot(k+d|0,f|0,n|0)|0;g=n}j=g-e+j|0;if((a[b>>0]&1)==0){a[b>>0]=j<<1}else{c[b+4>>2]=j}a[k+j>>0]=0;i=h;return b|0}function ok(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;if(e>>>0>1073741807){Zj(0)}if(e>>>0<2){a[b>>0]=e<<1;b=b+4|0}else{h=e+4&-4;g=Vs(h<<2)|0;c[b+8>>2]=g;c[b>>2]=h|1;c[b+4>>2]=e;b=g}qs(b,d,e)|0;c[b+(e<<2)>>2]=0;i=f;return}function pk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;if(d>>>0>1073741807){Zj(0)}if(d>>>0<2){a[b>>0]=d<<1;b=b+4|0}else{h=d+4&-4;g=Vs(h<<2)|0;c[b+8>>2]=g;c[b>>2]=h|1;c[b+4>>2]=d;b=g}ss(b,e,d)|0;c[b+(d<<2)>>2]=0;i=f;return}function qk(b){b=b|0;var d=0;d=i;if((a[b>>0]&1)==0){i=d;return}Ys(c[b+8>>2]|0);i=d;return}function rk(a,b){a=a|0;b=b|0;var c=0;c=i;a=sk(a,b,ps(b)|0)|0;i=c;return a|0}function sk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;h=a[b>>0]|0;if((h&1)==0){g=1}else{h=c[b>>2]|0;g=(h&-2)+-1|0;h=h&255}j=(h&1)==0;if(g>>>0<e>>>0){if(j){h=(h&255)>>>1}else{h=c[b+4>>2]|0}vk(b,g,e-g|0,h,0,h,e,d);i=f;return b|0}if(j){g=b+4|0}else{g=c[b+8>>2]|0}rs(g,d,e)|0;c[g+(e<<2)>>2]=0;if((a[b>>0]&1)==0){a[b>>0]=e<<1;i=f;return b|0}else{c[b+4>>2]=e;i=f;return b|0}return 0}function tk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;if(d>>>0>1073741807){Zj(0)}g=a[b>>0]|0;if((g&1)==0){h=1}else{g=c[b>>2]|0;h=(g&-2)+-1|0;g=g&255}if((g&1)==0){f=(g&255)>>>1}else{f=c[b+4>>2]|0}d=f>>>0>d>>>0?f:d;if(d>>>0<2){d=1}else{d=(d+4&-4)+-1|0}if((d|0)==(h|0)){i=e;return}do{if((d|0)!=1){j=(d<<2)+4|0;if(d>>>0>h>>>0){k=Vs(j)|0}else{k=Vs(j)|0}if((g&1)==0){l=1;j=b+4|0;h=0;break}else{l=1;j=c[b+8>>2]|0;h=1;break}}else{k=b+4|0;l=0;j=c[b+8>>2]|0;h=1}}while(0);if((g&1)==0){g=(g&255)>>>1}else{g=c[b+4>>2]|0}qs(k,j,g+1|0)|0;if(h){Ys(j)}if(l){c[b>>2]=d+1|1;c[b+4>>2]=f;c[b+8>>2]=k;i=e;return}else{a[b>>0]=f<<1;i=e;return}}function uk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;g=a[b>>0]|0;f=(g&1)!=0;if(f){h=(c[b>>2]&-2)+-1|0;g=c[b+4>>2]|0}else{h=1;g=(g&255)>>>1}if((g|0)==(h|0)){wk(b,h,1,h,h,0,0);if((a[b>>0]&1)==0){f=7}else{f=8}}else{if(f){f=8}else{f=7}}if((f|0)==7){a[b>>0]=(g<<1)+2;f=b+4|0;h=g+1|0;g=f+(g<<2)|0;c[g>>2]=d;h=f+(h<<2)|0;c[h>>2]=0;i=e;return}else if((f|0)==8){f=c[b+8>>2]|0;h=g+1|0;c[b+4>>2]=h;g=f+(g<<2)|0;c[g>>2]=d;h=f+(h<<2)|0;c[h>>2]=0;i=e;return}}function vk(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0;l=i;if((1073741806-d|0)>>>0<e>>>0){Zj(0)}if((a[b>>0]&1)==0){m=b+4|0}else{m=c[b+8>>2]|0}if(d>>>0<536870887){e=e+d|0;n=d<<1;e=e>>>0<n>>>0?n:e;if(e>>>0<2){e=2}else{e=e+4&-4}}else{e=1073741807}n=Vs(e<<2)|0;if((g|0)!=0){qs(n,m,g)|0}if((j|0)!=0){qs(n+(g<<2)|0,k,j)|0}k=f-h|0;if((k|0)!=(g|0)){qs(n+(j+g<<2)|0,m+(h+g<<2)|0,k-g|0)|0}if((d|0)==1){f=b+8|0;c[f>>2]=n;e=e|1;c[b>>2]=e;e=k+j|0;f=b+4|0;c[f>>2]=e;n=n+(e<<2)|0;c[n>>2]=0;i=l;return}Ys(m);f=b+8|0;c[f>>2]=n;e=e|1;c[b>>2]=e;e=k+j|0;f=b+4|0;c[f>>2]=e;n=n+(e<<2)|0;c[n>>2]=0;i=l;return}function wk(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0;k=i;if((1073741807-d|0)>>>0<e>>>0){Zj(0)}if((a[b>>0]&1)==0){l=b+4|0}else{l=c[b+8>>2]|0}if(d>>>0<536870887){e=e+d|0;m=d<<1;e=e>>>0<m>>>0?m:e;if(e>>>0<2){m=2}else{m=e+4&-4}}else{m=1073741807}e=Vs(m<<2)|0;if((g|0)!=0){qs(e,l,g)|0}f=f-h|0;if((f|0)!=(g|0)){qs(e+(j+g<<2)|0,l+(h+g<<2)|0,f-g|0)|0}if((d|0)==1){f=b+8|0;c[f>>2]=e;m=m|1;c[b>>2]=m;i=k;return}Ys(l);f=b+8|0;c[f>>2]=e;m=m|1;c[b>>2]=m;i=k;return}function xk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g+8|0;e=g;h=(c[b+24>>2]|0)==0;if(h){c[b+16>>2]=d|1}else{c[b+16>>2]=d}if(((h&1|d)&c[b+20>>2]|0)==0){i=g;return}d=Ta(16)|0;if((a[1080464]|0)==0?(Ma(1080464)|0)!=0:0){c[270114]=1081160;Sa(128,1080456,p|0)|0;Xa(1080464)}b=e;c[b>>2]=1;c[b+4>>2]=1080456;c[f+0>>2]=c[e+0>>2];c[f+4>>2]=c[e+4>>2];Vj(d,f,1080512);c[d>>2]=1080480;Rb(d|0,1080560,124)}function yk(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;c[a>>2]=1080504;f=c[a+40>>2]|0;b=a+32|0;d=a+36|0;if((f|0)!=0){do{f=f+-1|0;ic[c[(c[b>>2]|0)+(f<<2)>>2]&3](0,a,c[(c[d>>2]|0)+(f<<2)>>2]|0)}while((f|0)!=0)}Qp(a+28|0);Qs(c[b>>2]|0);Qs(c[d>>2]|0);Qs(c[a+48>>2]|0);Qs(c[a+60>>2]|0);i=e;return}function zk(a){a=a|0;var b=0;b=i;yk(a);Ys(a);i=b;return}function Ak(a){a=a|0;var b=0;b=i;yk(a);i=b;return}function Bk(a,b){a=a|0;b=b|0;var c=0;c=i;Pp(a,b+28|0);i=c;return}function Ck(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;c[a+24>>2]=b;c[a+16>>2]=(b|0)==0&1;c[a+20>>2]=0;c[a+4>>2]=4098;c[a+12>>2]=0;c[a+8>>2]=6;b=a+28|0;e=a+32|0;a=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(a|0));Op(b);i=d;return}function Dk(a){a=a|0;var b=0;b=i;c[a>>2]=1080120;Qp(a+4|0);Ys(a);i=b;return}function Ek(a){a=a|0;var b=0;b=i;c[a>>2]=1080120;Qp(a+4|0);i=b;return}function Fk(a,b){a=a|0;b=b|0;return}function Gk(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function Hk(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function Ik(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a;c[e>>2]=0;c[e+4>>2]=0;e=a+8|0;c[e>>2]=-1;c[e+4>>2]=-1;return}function Jk(a){a=a|0;return 0}function Kk(a){a=a|0;return 0}function Lk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;if((e|0)<=0){k=0;i=f;return k|0}g=b+12|0;h=b+16|0;j=0;while(1){k=c[g>>2]|0;if(k>>>0<(c[h>>2]|0)>>>0){c[g>>2]=k+1;k=a[k>>0]|0}else{k=gc[c[(c[b>>2]|0)+40>>2]&127](b)|0;if((k|0)==-1){e=8;break}k=k&255}a[d>>0]=k;j=j+1|0;if((j|0)<(e|0)){d=d+1|0}else{e=8;break}}if((e|0)==8){i=f;return j|0}return 0}function Mk(a){a=a|0;return-1}function Nk(a){a=a|0;var b=0,e=0;b=i;if((gc[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){a=-1;i=b;return a|0}e=a+12|0;a=c[e>>2]|0;c[e>>2]=a+1;a=d[a>>0]|0;i=b;return a|0}function Ok(a,b){a=a|0;b=b|0;return-1}function Pk(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;if((f|0)<=0){l=0;i=g;return l|0}j=b+24|0;h=b+28|0;k=0;while(1){l=c[j>>2]|0;if(!(l>>>0<(c[h>>2]|0)>>>0)){if((pc[c[(c[b>>2]|0)+52>>2]&63](b,d[e>>0]|0)|0)==-1){h=7;break}}else{m=a[e>>0]|0;c[j>>2]=l+1;a[l>>0]=m}k=k+1|0;if((k|0)<(f|0)){e=e+1|0}else{h=7;break}}if((h|0)==7){i=g;return k|0}return 0}function Qk(a,b){a=a|0;b=b|0;return-1}function Rk(a){a=a|0;var b=0;b=i;c[a>>2]=1080184;Qp(a+4|0);Ys(a);i=b;return}function Sk(a){a=a|0;var b=0;b=i;c[a>>2]=1080184;Qp(a+4|0);i=b;return}function Tk(a,b){a=a|0;b=b|0;return}function Uk(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function Vk(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function Wk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a;c[e>>2]=0;c[e+4>>2]=0;e=a+8|0;c[e>>2]=-1;c[e+4>>2]=-1;return}function Xk(a){a=a|0;return 0}function Yk(a){a=a|0;return 0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;if((d|0)<=0){j=0;i=e;return j|0}g=a+12|0;f=a+16|0;h=0;while(1){j=c[g>>2]|0;if(!(j>>>0<(c[f>>2]|0)>>>0)){j=gc[c[(c[a>>2]|0)+40>>2]&127](a)|0;if((j|0)==-1){a=8;break}}else{c[g>>2]=j+4;j=c[j>>2]|0}c[b>>2]=j;h=h+1|0;if((h|0)>=(d|0)){a=8;break}b=b+4|0}if((a|0)==8){i=e;return h|0}return 0}function _k(a){a=a|0;return-1}function $k(a){a=a|0;var b=0,d=0;b=i;if((gc[c[(c[a>>2]|0)+36>>2]&127](a)|0)==-1){a=-1;i=b;return a|0}d=a+12|0;a=c[d>>2]|0;c[d>>2]=a+4;a=c[a>>2]|0;i=b;return a|0}function al(a,b){a=a|0;b=b|0;return-1}function bl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;if((d|0)<=0){j=0;i=e;return j|0}g=a+24|0;f=a+28|0;h=0;while(1){j=c[g>>2]|0;if(!(j>>>0<(c[f>>2]|0)>>>0)){if((pc[c[(c[a>>2]|0)+52>>2]&63](a,c[b>>2]|0)|0)==-1){f=8;break}}else{k=c[b>>2]|0;c[g>>2]=j+4;c[j>>2]=k}h=h+1|0;if((h|0)>=(d|0)){f=8;break}b=b+4|0}if((f|0)==8){i=e;return h|0}return 0}function cl(a,b){a=a|0;b=b|0;return-1}function dl(a){a=a|0;var b=0;b=i;yk(a+8|0);Ys(a);i=b;return}function el(a){a=a|0;var b=0;b=i;yk(a+8|0);i=b;return}function fl(a){a=a|0;var b=0,d=0;b=i;d=c[(c[a>>2]|0)+-12>>2]|0;yk(a+(d+8)|0);Ys(a+d|0);i=b;return}function gl(a){a=a|0;var b=0;b=i;yk(a+((c[(c[a>>2]|0)+-12>>2]|0)+8)|0);i=b;return}function hl(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+16|0;m=k;a[e>>0]=0;n=c[(c[f>>2]|0)+-12>>2]|0;o=c[f+(n+16)>>2]|0;if((o|0)!=0){xk(f+n|0,o|4);i=k;return}n=c[f+(n+72)>>2]|0;if((n|0)!=0){il(n)|0}do{if(!g?(l=c[(c[f>>2]|0)+-12>>2]|0,(c[f+(l+4)>>2]&4096|0)!=0):0){Pp(m,f+(l+28)|0);l=Sp(m,1082848)|0;Qp(m);l=l+8|0;m=c[f+((c[(c[f>>2]|0)+-12>>2]|0)+24)>>2]|0;while(1){if((m|0)==0){break}if((c[m+12>>2]|0)==(c[m+16>>2]|0)){o=(gc[c[(c[m>>2]|0)+36>>2]&127](m)|0)==-1;m=o?0:m;if((m|0)==0){break}else{j=m}}else{j=m}g=j+12|0;n=c[g>>2]|0;m=j+16|0;if((n|0)==(c[m>>2]|0)){n=gc[c[(c[j>>2]|0)+36>>2]&127](j)|0}else{n=d[n>>0]|0}if(!((n&255)<<24>>24>-1)){h=18;break}if((b[(c[l>>2]|0)+(n<<24>>24<<1)>>1]&8192)==0){h=18;break}n=c[g>>2]|0;if((n|0)==(c[m>>2]|0)){gc[c[(c[j>>2]|0)+40>>2]&127](j)|0;m=j;continue}else{c[g>>2]=n+1;m=j;continue}}if((h|0)==18?(j|0)!=0:0){if((c[j+12>>2]|0)!=(c[j+16>>2]|0)){break}if(!((gc[c[(c[j>>2]|0)+36>>2]&127](j)|0)==-1|(j|0)==0)){break}}o=c[(c[f>>2]|0)+-12>>2]|0;xk(f+o|0,c[f+(o+16)>>2]|6)}}while(0);a[e>>0]=(c[f+((c[(c[f>>2]|0)+-12>>2]|0)+16)>>2]|0)==0&1;i=k;return}function il(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d;f=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(f+24)>>2]|0)==0){i=d;return b|0}a[e>>0]=0;c[e+4>>2]=b;if((c[b+(f+16)>>2]|0)==0){g=c[b+(f+72)>>2]|0;if((g|0)!=0){il(g)|0;f=c[(c[b>>2]|0)+-12>>2]|0}a[e>>0]=1;g=c[b+(f+24)>>2]|0;if((gc[c[(c[g>>2]|0)+24>>2]&127](g)|0)==-1){g=c[(c[b>>2]|0)+-12>>2]|0;xk(b+g|0,c[b+(g+16)>>2]|1)}}tl(e);i=d;return b|0}function jl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+48|0;l=j+28|0;k=j+24|0;h=j+20|0;e=j+16|0;o=j+32|0;f=j+12|0;n=j+8|0;g=j+4|0;m=j;hl(o,b,0);if((a[o>>0]|0)==0){i=j;return b|0}c[f>>2]=0;Pp(g,b+((c[(c[b>>2]|0)+-12>>2]|0)+28)|0);p=Sp(g,1081384)|0;r=c[(c[b>>2]|0)+-12>>2]|0;o=b+r|0;q=c[(c[p>>2]|0)+16>>2]|0;c[h>>2]=c[b+(r+24)>>2];c[e>>2]=0;c[k+0>>2]=c[h+0>>2];c[l+0>>2]=c[e+0>>2];bc[q&63](m,p,k,l,o,f,n);Qp(g);c[d>>2]=c[n>>2];o=c[(c[b>>2]|0)+-12>>2]|0;xk(b+o|0,c[b+(o+16)>>2]|c[f>>2]);i=j;return b|0}function kl(a){a=a|0;var b=0;b=i;yk(a+8|0);Ys(a);i=b;return}function ll(a){a=a|0;var b=0;b=i;yk(a+8|0);i=b;return}function ml(a){a=a|0;var b=0,d=0;b=i;d=c[(c[a>>2]|0)+-12>>2]|0;yk(a+(d+8)|0);Ys(a+d|0);i=b;return}function nl(a){a=a|0;var b=0;b=i;yk(a+((c[(c[a>>2]|0)+-12>>2]|0)+8)|0);i=b;return}function ol(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d;f=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(f+24)>>2]|0)==0){i=d;return b|0}a[e>>0]=0;c[e+4>>2]=b;if((c[b+(f+16)>>2]|0)==0){g=c[b+(f+72)>>2]|0;if((g|0)!=0){ol(g)|0;f=c[(c[b>>2]|0)+-12>>2]|0}a[e>>0]=1;g=c[b+(f+24)>>2]|0;if((gc[c[(c[g>>2]|0)+24>>2]&127](g)|0)==-1){g=c[(c[b>>2]|0)+-12>>2]|0;xk(b+g|0,c[b+(g+16)>>2]|1)}}El(e);i=d;return b|0}function pl(a){a=a|0;var b=0;b=i;yk(a+4|0);Ys(a);i=b;return}function ql(a){a=a|0;var b=0;b=i;yk(a+4|0);i=b;return}function rl(a){a=a|0;var b=0,d=0;b=i;d=c[(c[a>>2]|0)+-12>>2]|0;yk(a+(d+4)|0);Ys(a+d|0);i=b;return}function sl(a){a=a|0;var b=0;b=i;yk(a+((c[(c[a>>2]|0)+-12>>2]|0)+4)|0);i=b;return}function tl(a){a=a|0;var b=0,d=0,e=0;b=i;a=a+4|0;d=c[a>>2]|0;e=c[(c[d>>2]|0)+-12>>2]|0;if((c[d+(e+24)>>2]|0)==0){i=b;return}if((c[d+(e+16)>>2]|0)!=0){i=b;return}if((c[d+(e+4)>>2]&8192|0)==0){i=b;return}if(Ua()|0){i=b;return}e=c[a>>2]|0;e=c[e+((c[(c[e>>2]|0)+-12>>2]|0)+24)>>2]|0;if(!((gc[c[(c[e>>2]|0)+24>>2]&127](e)|0)==-1)){i=b;return}d=c[a>>2]|0;e=c[(c[d>>2]|0)+-12>>2]|0;xk(d+e|0,c[d+(e+16)>>2]|1);i=b;return}function ul(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;f=h+20|0;e=h+16|0;j=h+8|0;l=h+4|0;g=h;a[j>>0]=0;c[j+4>>2]=b;k=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(k+16)>>2]|0)!=0){tl(j);i=h;return b|0}m=c[b+(k+72)>>2]|0;if((m|0)!=0){il(m)|0;k=c[(c[b>>2]|0)+-12>>2]|0}a[j>>0]=1;Pp(l,b+(k+28)|0);k=Sp(l,1081568)|0;Qp(l);o=c[(c[b>>2]|0)+-12>>2]|0;l=c[b+(o+24)>>2]|0;m=b+o|0;p=b+(o+76)|0;n=c[p>>2]|0;if((n|0)==-1){Pp(f,b+(o+28)|0);n=Sp(f,1082848)|0;n=pc[c[(c[n>>2]|0)+28>>2]&63](n,32)|0;Qp(f);n=n<<24>>24;c[p>>2]=n}p=n&255;o=c[(c[k>>2]|0)+16>>2]|0;c[e>>2]=l;c[f+0>>2]=c[e+0>>2];oc[o&31](g,k,f,m,p,d);if((c[g>>2]|0)!=0){tl(j);i=h;return b|0}p=c[(c[b>>2]|0)+-12>>2]|0;xk(b+p|0,c[b+(p+16)>>2]|5);tl(j);i=h;return b|0}function vl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;f=h+20|0;e=h+16|0;j=h+8|0;l=h+4|0;g=h;a[j>>0]=0;c[j+4>>2]=b;k=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(k+16)>>2]|0)!=0){tl(j);i=h;return b|0}m=c[b+(k+72)>>2]|0;if((m|0)!=0){il(m)|0;k=c[(c[b>>2]|0)+-12>>2]|0}a[j>>0]=1;Pp(l,b+(k+28)|0);k=Sp(l,1081568)|0;Qp(l);o=c[(c[b>>2]|0)+-12>>2]|0;l=c[b+(o+24)>>2]|0;m=b+o|0;p=b+(o+76)|0;n=c[p>>2]|0;if((n|0)==-1){Pp(f,b+(o+28)|0);n=Sp(f,1082848)|0;n=pc[c[(c[n>>2]|0)+28>>2]&63](n,32)|0;Qp(f);n=n<<24>>24;c[p>>2]=n}p=n&255;o=c[(c[k>>2]|0)+24>>2]|0;c[e>>2]=l;c[f+0>>2]=c[e+0>>2];oc[o&31](g,k,f,m,p,d);if((c[g>>2]|0)!=0){tl(j);i=h;return b|0}p=c[(c[b>>2]|0)+-12>>2]|0;xk(b+p|0,c[b+(p+16)>>2]|5);tl(j);i=h;return b|0}function wl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+32|0;h=k+20|0;g=k+16|0;f=k+8|0;m=k+4|0;j=k;a[f>>0]=0;c[f+4>>2]=b;n=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(n+16)>>2]|0)!=0){tl(f);i=k;return b|0}l=c[b+(n+72)>>2]|0;if((l|0)!=0){il(l)|0;n=c[(c[b>>2]|0)+-12>>2]|0}a[f>>0]=1;Pp(m,b+(n+28)|0);l=Sp(m,1081568)|0;Qp(m);p=c[(c[b>>2]|0)+-12>>2]|0;m=c[b+(p+24)>>2]|0;n=b+p|0;q=b+(p+76)|0;o=c[q>>2]|0;if((o|0)==-1){Pp(h,b+(p+28)|0);o=Sp(h,1082848)|0;o=pc[c[(c[o>>2]|0)+28>>2]&63](o,32)|0;Qp(h);o=o<<24>>24;c[q>>2]=o}q=o&255;p=c[(c[l>>2]|0)+20>>2]|0;c[g>>2]=m;c[h+0>>2]=c[g+0>>2];bc[p&63](j,l,h,n,q,d,e);if((c[j>>2]|0)!=0){tl(f);i=k;return b|0}q=c[(c[b>>2]|0)+-12>>2]|0;xk(b+q|0,c[b+(q+16)>>2]|5);tl(f);i=k;return b|0}function xl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+32|0;h=k+20|0;g=k+16|0;f=k+8|0;m=k+4|0;j=k;a[f>>0]=0;c[f+4>>2]=b;n=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(n+16)>>2]|0)!=0){tl(f);i=k;return b|0}l=c[b+(n+72)>>2]|0;if((l|0)!=0){il(l)|0;n=c[(c[b>>2]|0)+-12>>2]|0}a[f>>0]=1;Pp(m,b+(n+28)|0);l=Sp(m,1081568)|0;Qp(m);p=c[(c[b>>2]|0)+-12>>2]|0;m=c[b+(p+24)>>2]|0;n=b+p|0;q=b+(p+76)|0;o=c[q>>2]|0;if((o|0)==-1){Pp(h,b+(p+28)|0);o=Sp(h,1082848)|0;o=pc[c[(c[o>>2]|0)+28>>2]&63](o,32)|0;Qp(h);o=o<<24>>24;c[q>>2]=o}q=o&255;p=c[(c[l>>2]|0)+28>>2]|0;c[g>>2]=m;c[h+0>>2]=c[g+0>>2];bc[p&63](j,l,h,n,q,d,e);if((c[j>>2]|0)!=0){tl(f);i=k;return b|0}q=c[(c[b>>2]|0)+-12>>2]|0;xk(b+q|0,c[b+(q+16)>>2]|5);tl(f);i=k;return b|0}function yl(b,d){b=b|0;d=+d;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+32|0;f=h+20|0;e=h+16|0;j=h+8|0;l=h+4|0;g=h;a[j>>0]=0;c[j+4>>2]=b;k=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(k+16)>>2]|0)!=0){tl(j);i=h;return b|0}m=c[b+(k+72)>>2]|0;if((m|0)!=0){il(m)|0;k=c[(c[b>>2]|0)+-12>>2]|0}a[j>>0]=1;Pp(l,b+(k+28)|0);k=Sp(l,1081568)|0;Qp(l);o=c[(c[b>>2]|0)+-12>>2]|0;l=c[b+(o+24)>>2]|0;m=b+o|0;p=b+(o+76)|0;n=c[p>>2]|0;if((n|0)==-1){Pp(f,b+(o+28)|0);n=Sp(f,1082848)|0;n=pc[c[(c[n>>2]|0)+28>>2]&63](n,32)|0;Qp(f);n=n<<24>>24;c[p>>2]=n}p=n&255;o=c[(c[k>>2]|0)+32>>2]|0;c[e>>2]=l;c[f+0>>2]=c[e+0>>2];jc[o&7](g,k,f,m,p,d);if((c[g>>2]|0)!=0){tl(j);i=h;return b|0}p=c[(c[b>>2]|0)+-12>>2]|0;xk(b+p|0,c[b+(p+16)>>2]|5);tl(j);i=h;return b|0}function zl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e;a[f>>0]=0;c[f+4>>2]=b;h=c[b>>2]|0;g=c[h+-12>>2]|0;do{if((c[b+(g+16)>>2]|0)==0){j=c[b+(g+72)>>2]|0;if((j|0)!=0){il(j)|0;g=c[b>>2]|0;h=g;g=c[g+-12>>2]|0}a[f>>0]=1;g=c[b+(g+24)>>2]|0;if((g|0)!=0){j=g+24|0;h=c[j>>2]|0;if((h|0)!=(c[g+28>>2]|0)){c[j>>2]=h+1;a[h>>0]=d;break}if(!((pc[c[(c[g>>2]|0)+52>>2]&63](g,d&255)|0)==-1)){break}h=c[b>>2]|0}j=c[h+-12>>2]|0;xk(b+j|0,c[b+(j+16)>>2]|1)}}while(0);tl(f);i=e;return b|0}function Al(a){a=a|0;var b=0;b=i;yk(a+4|0);Ys(a);i=b;return}function Bl(a){a=a|0;var b=0;b=i;yk(a+4|0);i=b;return}function Cl(a){a=a|0;var b=0,d=0;b=i;d=c[(c[a>>2]|0)+-12>>2]|0;yk(a+(d+4)|0);Ys(a+d|0);i=b;return}function Dl(a){a=a|0;var b=0;b=i;yk(a+((c[(c[a>>2]|0)+-12>>2]|0)+4)|0);i=b;return}function El(a){a=a|0;var b=0,d=0,e=0;b=i;a=a+4|0;d=c[a>>2]|0;e=c[(c[d>>2]|0)+-12>>2]|0;if((c[d+(e+24)>>2]|0)==0){i=b;return}if((c[d+(e+16)>>2]|0)!=0){i=b;return}if((c[d+(e+4)>>2]&8192|0)==0){i=b;return}if(Ua()|0){i=b;return}e=c[a>>2]|0;e=c[e+((c[(c[e>>2]|0)+-12>>2]|0)+24)>>2]|0;if(!((gc[c[(c[e>>2]|0)+24>>2]&127](e)|0)==-1)){i=b;return}d=c[a>>2]|0;e=c[(c[d>>2]|0)+-12>>2]|0;xk(d+e|0,c[d+(e+16)>>2]|1);i=b;return}function Fl(a){a=a|0;return 1080400}function Gl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=i;if((c|0)==1){ak(a,1080416,35);i=d;return}else{Tj(a,b,c);i=d;return}}function Hl(a){a=a|0;return}function Il(a){a=a|0;var b=0;b=i;Xj(a);Ys(a);i=b;return}function Jl(a){a=a|0;var b=0;b=i;Xj(a);i=b;return}function Kl(a){a=a|0;var b=0;b=i;yk(a);Ys(a);i=b;return}function Ll(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Ml(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Nl(a){a=a|0;return}function Ol(a){a=a|0;return}function Pl(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;b=i;a:do{if((e|0)==(f|0)){g=6}else{while(1){if((c|0)==(d|0)){d=-1;break a}h=a[c>>0]|0;j=a[e>>0]|0;if(h<<24>>24<j<<24>>24){d=-1;break a}if(j<<24>>24<h<<24>>24){d=1;break a}c=c+1|0;e=e+1|0;if((e|0)==(f|0)){g=6;break}}}}while(0);if((g|0)==6){d=(c|0)!=(d|0)&1}i=b;return d|0}function Ql(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;d=i;g=e;h=f-g|0;if(h>>>0>4294967279){Zj(b)}if(h>>>0<11){a[b>>0]=h<<1;b=b+1|0}else{k=h+16&-16;j=Vs(k)|0;c[b+8>>2]=j;c[b>>2]=k|1;c[b+4>>2]=h;b=j}if((e|0)==(f|0)){k=b;a[k>>0]=0;i=d;return}else{h=b}while(1){a[h>>0]=a[e>>0]|0;e=e+1|0;if((e|0)==(f|0)){break}else{h=h+1|0}}k=b+(f+(0-g))|0;a[k>>0]=0;i=d;return}function Rl(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;b=i;if((c|0)==(d|0)){e=0;i=b;return e|0}else{e=0}do{e=(a[c>>0]|0)+(e<<4)|0;f=e&-268435456;e=(f>>>24|f)^e;c=c+1|0}while((c|0)!=(d|0));i=b;return e|0}function Sl(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Tl(a){a=a|0;return}function Ul(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;a=i;a:do{if((e|0)==(f|0)){g=6}else{while(1){if((b|0)==(d|0)){d=-1;break a}h=c[b>>2]|0;j=c[e>>2]|0;if((h|0)<(j|0)){d=-1;break a}if((j|0)<(h|0)){d=1;break a}b=b+4|0;e=e+4|0;if((e|0)==(f|0)){g=6;break}}}}while(0);if((g|0)==6){d=(b|0)!=(d|0)&1}i=a;return d|0}function Vl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;d=i;g=e;j=f-g|0;h=j>>2;if(h>>>0>1073741807){Zj(b)}if(h>>>0<2){a[b>>0]=j>>>1;b=b+4|0}else{k=h+4&-4;j=Vs(k<<2)|0;c[b+8>>2]=j;c[b>>2]=k|1;c[b+4>>2]=h;b=j}if((e|0)==(f|0)){k=b;c[k>>2]=0;i=d;return}g=f+-4+(0-g)|0;h=b;while(1){c[h>>2]=c[e>>2];e=e+4|0;if((e|0)==(f|0)){break}else{h=h+4|0}}k=b+((g>>>2)+1<<2)|0;c[k>>2]=0;i=d;return}function Wl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a=i;if((b|0)==(d|0)){e=0;i=a;return e|0}else{e=0}do{e=(c[b>>2]|0)+(e<<4)|0;f=e&-268435456;e=(f>>>24|f)^e;b=b+4|0}while((b|0)!=(d|0));i=a;return e|0}function Xl(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Yl(a){a=a|0;return}function Zl(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=i;i=i+80|0;l=k;s=k+64|0;q=k+60|0;r=k+56|0;u=k+52|0;t=k+48|0;p=k+44|0;m=k+40|0;n=k+16|0;o=k+12|0;if((c[g+4>>2]&1|0)==0){c[q>>2]=-1;p=c[(c[d>>2]|0)+16>>2]|0;c[u>>2]=c[e>>2];c[t>>2]=c[f>>2];c[s+0>>2]=c[u+0>>2];c[l+0>>2]=c[t+0>>2];bc[p&63](r,d,s,l,g,h,q);l=c[r>>2]|0;c[e>>2]=l;e=c[q>>2]|0;if((e|0)==1){a[j>>0]=1}else if((e|0)==0){a[j>>0]=0}else{a[j>>0]=1;c[h>>2]=4}c[b>>2]=l;i=k;return}Bk(p,g);q=c[p>>2]|0;if(!((c[270712]|0)==-1)){c[l>>2]=1082848;c[l+4>>2]=221;c[l+8>>2]=0;Yj(1082848,l,222)}d=(c[1082852>>2]|0)+-1|0;r=c[q+8>>2]|0;if(!((c[q+12>>2]|0)-r>>2>>>0>d>>>0)){u=Ta(4)|0;us(u);Rb(u|0,1090808,189)}q=c[r+(d<<2)>>2]|0;if((q|0)==0){u=Ta(4)|0;us(u);Rb(u|0,1090808,189)}Dj(c[p>>2]|0)|0;Bk(m,g);g=c[m>>2]|0;if(!((c[270748]|0)==-1)){c[l>>2]=1082992;c[l+4>>2]=221;c[l+8>>2]=0;Yj(1082992,l,222)}r=(c[1082996>>2]|0)+-1|0;p=c[g+8>>2]|0;if(!((c[g+12>>2]|0)-p>>2>>>0>r>>>0)){u=Ta(4)|0;us(u);Rb(u|0,1090808,189)}g=c[p+(r<<2)>>2]|0;if((g|0)==0){u=Ta(4)|0;us(u);Rb(u|0,1090808,189)}Dj(c[m>>2]|0)|0;ec[c[(c[g>>2]|0)+24>>2]&63](n,g);ec[c[(c[g>>2]|0)+28>>2]&63](n+12|0,g);c[o>>2]=c[f>>2];u=n+24|0;c[l+0>>2]=c[o+0>>2];a[j>>0]=(_l(e,l,n,u,q,h,1)|0)==(n|0)&1;c[b>>2]=c[e>>2];ck(n+12|0);ck(n);i=k;return}function _l(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;n=i;i=i+112|0;p=n;u=(g-f|0)/12|0;if(u>>>0>100){p=Ps(u)|0;if((p|0)==0){bt()}else{m=p;o=p}}else{m=0;o=p}p=(f|0)==(g|0);if(p){t=0}else{q=f;t=0;r=o;while(1){s=a[q>>0]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[q+4>>2]|0}if((s|0)==0){a[r>>0]=2;t=t+1|0;u=u+-1|0}else{a[r>>0]=1}q=q+12|0;if((q|0)==(g|0)){break}else{r=r+1|0}}}q=0;a:while(1){r=c[b>>2]|0;do{if((r|0)!=0){if((c[r+12>>2]|0)==(c[r+16>>2]|0)){if((gc[c[(c[r>>2]|0)+36>>2]&127](r)|0)==-1){c[b>>2]=0;r=0;break}else{r=c[b>>2]|0;break}}}else{r=0}}while(0);w=(r|0)==0;s=c[e>>2]|0;if((s|0)!=0){if((c[s+12>>2]|0)==(c[s+16>>2]|0)?(gc[c[(c[s>>2]|0)+36>>2]&127](s)|0)==-1:0){c[e>>2]=0;s=0}}else{s=0}r=(s|0)==0;v=c[b>>2]|0;if(!((w^r)&(u|0)!=0)){break}r=c[v+12>>2]|0;if((r|0)==(c[v+16>>2]|0)){r=gc[c[(c[v>>2]|0)+36>>2]&127](v)|0}else{r=d[r>>0]|0}s=r&255;if(!k){s=pc[c[(c[h>>2]|0)+12>>2]&63](h,s)|0}r=q+1|0;if(p){q=r;continue}b:do{if(k){w=0;v=f;x=o;while(1){do{if((a[x>>0]|0)==1){A=a[v>>0]|0;y=(A&1)==0;if(y){z=v+1|0}else{z=c[v+8>>2]|0}if(!(s<<24>>24==(a[z+q>>0]|0))){a[x>>0]=0;u=u+-1|0;break}if(y){w=(A&255)>>>1}else{w=c[v+4>>2]|0}if((w|0)==(r|0)){a[x>>0]=2;w=1;t=t+1|0;u=u+-1|0}else{w=1}}}while(0);v=v+12|0;if((v|0)==(g|0)){break b}x=x+1|0}}else{w=0;v=f;x=o;while(1){do{if((a[x>>0]|0)==1){if((a[v>>0]&1)==0){y=v+1|0}else{y=c[v+8>>2]|0}if(!(s<<24>>24==(pc[c[(c[h>>2]|0)+12>>2]&63](h,a[y+q>>0]|0)|0)<<24>>24)){a[x>>0]=0;u=u+-1|0;break}w=a[v>>0]|0;if((w&1)==0){w=(w&255)>>>1}else{w=c[v+4>>2]|0}if((w|0)==(r|0)){a[x>>0]=2;w=1;t=t+1|0;u=u+-1|0}else{w=1}}}while(0);v=v+12|0;if((v|0)==(g|0)){break b}x=x+1|0}}}while(0);if(!w){q=r;continue}v=c[b>>2]|0;q=v+12|0;s=c[q>>2]|0;if((s|0)==(c[v+16>>2]|0)){gc[c[(c[v>>2]|0)+40>>2]&127](v)|0}else{c[q>>2]=s+1}if((u+t|0)>>>0<2){q=r;continue}else{s=f;q=o}while(1){if((a[q>>0]|0)==2){v=a[s>>0]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[s+4>>2]|0}if((v|0)!=(r|0)){a[q>>0]=0;t=t+-1|0}}s=s+12|0;if((s|0)==(g|0)){q=r;continue a}else{q=q+1|0}}}do{if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)){if((gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1){c[b>>2]=0;v=0;break}else{v=c[b>>2]|0;break}}}else{v=0}}while(0);k=(v|0)==0;do{if(!r){if((c[s+12>>2]|0)!=(c[s+16>>2]|0)){if(k){break}else{l=80;break}}if(!((gc[c[(c[s>>2]|0)+36>>2]&127](s)|0)==-1)){if(k){break}else{l=80;break}}else{c[e>>2]=0;l=78;break}}else{l=78}}while(0);if((l|0)==78?k:0){l=80}if((l|0)==80){c[j>>2]=c[j>>2]|2}c:do{if(!p){if((a[o>>0]|0)==2){g=f}else{while(1){f=f+12|0;o=o+1|0;if((f|0)==(g|0)){l=85;break c}if((a[o>>0]|0)==2){g=f;break}}}}else{l=85}}while(0);if((l|0)==85){c[j>>2]=c[j>>2]|4}if((m|0)==0){i=n;return g|0}Qs(m);i=n;return g|0}function $l(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];am(a,0,k,j,f,g,h);i=b;return}function am(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;n=i;i=i+224|0;u=n+198|0;v=n+196|0;m=n+184|0;e=n+172|0;s=n+168|0;r=n+8|0;q=n+4|0;p=n;t=c[h+4>>2]&74;if((t|0)==0){t=0}else if((t|0)==8){t=16}else if((t|0)==64){t=8}else{t=10}Sm(m,h,u,v);c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;fk(e,10,0);if((a[e>>0]&1)==0){A=e+1|0;w=A;x=e+8|0}else{A=e+8|0;w=e+1|0;x=A;A=c[A>>2]|0}c[s>>2]=A;c[q>>2]=r;c[p>>2]=0;h=e+4|0;y=a[v>>0]|0;v=c[f>>2]|0;a:while(1){if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}B=(v|0)==0;z=c[g>>2]|0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(B){break}else{break a}}if(!((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1)){if(B){break}else{break a}}else{c[g>>2]=0;l=18;break}}else{l=18}}while(0);if((l|0)==18){l=0;if(B){z=0;break}else{z=0}}B=a[e>>0]|0;C=(B&1)==0;if(C){D=(B&255)>>>1}else{D=c[h>>2]|0}if(((c[s>>2]|0)-A|0)==(D|0)){if(C){A=(B&255)>>>1;B=(B&255)>>>1}else{B=c[h>>2]|0;A=B}fk(e,A<<1,0);if((a[e>>0]&1)==0){A=10}else{A=(c[e>>2]&-2)+-1|0}fk(e,A,0);if((a[e>>0]&1)==0){A=w}else{A=c[x>>2]|0}c[s>>2]=A+B}B=v+12|0;D=c[B>>2]|0;C=v+16|0;if((D|0)==(c[C>>2]|0)){D=gc[c[(c[v>>2]|0)+36>>2]&127](v)|0}else{D=d[D>>0]|0}if((sm(D&255,t,A,s,p,y,m,r,q,u)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){gc[c[(c[v>>2]|0)+40>>2]&127](v)|0;continue}else{c[B>>2]=z+1;continue}}u=a[m>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[m+4>>2]|0}if((u|0)!=0?(o=c[q>>2]|0,(o-r|0)<160):0){D=c[p>>2]|0;c[q>>2]=o+4;c[o>>2]=D}c[k>>2]=Nr(A,c[s>>2]|0,j,t)|0;dp(m,r,c[q>>2]|0,j);if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}k=(v|0)==0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(!k){break}c[b>>2]=v;ck(e);ck(m);i=n;return}if((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1){c[g>>2]=0;l=54;break}if(k^(z|0)==0){c[b>>2]=v;ck(e);ck(m);i=n;return}}else{l=54}}while(0);if((l|0)==54?!k:0){c[b>>2]=v;ck(e);ck(m);i=n;return}c[j>>2]=c[j>>2]|2;c[b>>2]=v;ck(e);ck(m);i=n;return}function bm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];cm(a,0,k,j,f,g,h);i=b;return}function cm(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;n=i;i=i+224|0;u=n+198|0;v=n+196|0;m=n+184|0;e=n+172|0;s=n+168|0;r=n+8|0;q=n+4|0;p=n;t=c[h+4>>2]&74;if((t|0)==64){t=8}else if((t|0)==0){t=0}else if((t|0)==8){t=16}else{t=10}Sm(m,h,u,v);c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;fk(e,10,0);if((a[e>>0]&1)==0){A=e+1|0;w=A;x=e+8|0}else{A=e+8|0;w=e+1|0;x=A;A=c[A>>2]|0}c[s>>2]=A;c[q>>2]=r;c[p>>2]=0;h=e+4|0;y=a[v>>0]|0;v=c[f>>2]|0;a:while(1){if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}B=(v|0)==0;z=c[g>>2]|0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(B){break}else{break a}}if(!((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1)){if(B){break}else{break a}}else{c[g>>2]=0;l=18;break}}else{l=18}}while(0);if((l|0)==18){l=0;if(B){z=0;break}else{z=0}}B=a[e>>0]|0;C=(B&1)==0;if(C){D=(B&255)>>>1}else{D=c[h>>2]|0
+}if(((c[s>>2]|0)-A|0)==(D|0)){if(C){A=(B&255)>>>1;B=(B&255)>>>1}else{B=c[h>>2]|0;A=B}fk(e,A<<1,0);if((a[e>>0]&1)==0){A=10}else{A=(c[e>>2]&-2)+-1|0}fk(e,A,0);if((a[e>>0]&1)==0){A=w}else{A=c[x>>2]|0}c[s>>2]=A+B}B=v+12|0;D=c[B>>2]|0;C=v+16|0;if((D|0)==(c[C>>2]|0)){D=gc[c[(c[v>>2]|0)+36>>2]&127](v)|0}else{D=d[D>>0]|0}if((sm(D&255,t,A,s,p,y,m,r,q,u)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){gc[c[(c[v>>2]|0)+40>>2]&127](v)|0;continue}else{c[B>>2]=z+1;continue}}u=a[m>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[m+4>>2]|0}if((u|0)!=0?(o=c[q>>2]|0,(o-r|0)<160):0){D=c[p>>2]|0;c[q>>2]=o+4;c[o>>2]=D}C=Mr(A,c[s>>2]|0,j,t)|0;D=k;c[D>>2]=C;c[D+4>>2]=I;dp(m,r,c[q>>2]|0,j);if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}k=(v|0)==0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(!k){break}c[b>>2]=v;ck(e);ck(m);i=n;return}if((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1){c[g>>2]=0;l=54;break}if(k^(z|0)==0){c[b>>2]=v;ck(e);ck(m);i=n;return}}else{l=54}}while(0);if((l|0)==54?!k:0){c[b>>2]=v;ck(e);ck(m);i=n;return}c[j>>2]=c[j>>2]|2;c[b>>2]=v;ck(e);ck(m);i=n;return}function dm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];em(a,0,k,j,f,g,h);i=b;return}function em(e,f,g,h,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;o=i;i=i+224|0;v=o+198|0;w=o+196|0;n=o+184|0;f=o+172|0;t=o+168|0;s=o+8|0;r=o+4|0;q=o;u=c[j+4>>2]&74;if((u|0)==64){u=8}else if((u|0)==0){u=0}else if((u|0)==8){u=16}else{u=10}Sm(n,j,v,w);c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;fk(f,10,0);if((a[f>>0]&1)==0){B=f+1|0;x=B;y=f+8|0}else{B=f+8|0;x=f+1|0;y=B;B=c[B>>2]|0}c[t>>2]=B;c[r>>2]=s;c[q>>2]=0;j=f+4|0;z=a[w>>0]|0;w=c[g>>2]|0;a:while(1){if((w|0)!=0){if((c[w+12>>2]|0)==(c[w+16>>2]|0)?(gc[c[(c[w>>2]|0)+36>>2]&127](w)|0)==-1:0){c[g>>2]=0;w=0}}else{w=0}C=(w|0)==0;A=c[h>>2]|0;do{if((A|0)!=0){if((c[A+12>>2]|0)!=(c[A+16>>2]|0)){if(C){break}else{break a}}if(!((gc[c[(c[A>>2]|0)+36>>2]&127](A)|0)==-1)){if(C){break}else{break a}}else{c[h>>2]=0;m=18;break}}else{m=18}}while(0);if((m|0)==18){m=0;if(C){A=0;break}else{A=0}}C=a[f>>0]|0;D=(C&1)==0;if(D){E=(C&255)>>>1}else{E=c[j>>2]|0}if(((c[t>>2]|0)-B|0)==(E|0)){if(D){B=(C&255)>>>1;C=(C&255)>>>1}else{C=c[j>>2]|0;B=C}fk(f,B<<1,0);if((a[f>>0]&1)==0){B=10}else{B=(c[f>>2]&-2)+-1|0}fk(f,B,0);if((a[f>>0]&1)==0){B=x}else{B=c[y>>2]|0}c[t>>2]=B+C}C=w+12|0;E=c[C>>2]|0;D=w+16|0;if((E|0)==(c[D>>2]|0)){E=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{E=d[E>>0]|0}if((sm(E&255,u,B,t,q,z,n,s,r,v)|0)!=0){break}A=c[C>>2]|0;if((A|0)==(c[D>>2]|0)){gc[c[(c[w>>2]|0)+40>>2]&127](w)|0;continue}else{c[C>>2]=A+1;continue}}v=a[n>>0]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[n+4>>2]|0}if((v|0)!=0?(p=c[r>>2]|0,(p-s|0)<160):0){E=c[q>>2]|0;c[r>>2]=p+4;c[p>>2]=E}b[l>>1]=Lr(B,c[t>>2]|0,k,u)|0;dp(n,s,c[r>>2]|0,k);if((w|0)!=0){if((c[w+12>>2]|0)==(c[w+16>>2]|0)?(gc[c[(c[w>>2]|0)+36>>2]&127](w)|0)==-1:0){c[g>>2]=0;w=0}}else{w=0}l=(w|0)==0;do{if((A|0)!=0){if((c[A+12>>2]|0)!=(c[A+16>>2]|0)){if(!l){break}c[e>>2]=w;ck(f);ck(n);i=o;return}if((gc[c[(c[A>>2]|0)+36>>2]&127](A)|0)==-1){c[h>>2]=0;m=54;break}if(l^(A|0)==0){c[e>>2]=w;ck(f);ck(n);i=o;return}}else{m=54}}while(0);if((m|0)==54?!l:0){c[e>>2]=w;ck(f);ck(n);i=o;return}c[k>>2]=c[k>>2]|2;c[e>>2]=w;ck(f);ck(n);i=o;return}function fm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];gm(a,0,k,j,f,g,h);i=b;return}function gm(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;n=i;i=i+224|0;u=n+198|0;v=n+196|0;m=n+184|0;e=n+172|0;s=n+168|0;r=n+8|0;q=n+4|0;p=n;t=c[h+4>>2]&74;if((t|0)==8){t=16}else if((t|0)==0){t=0}else if((t|0)==64){t=8}else{t=10}Sm(m,h,u,v);c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;fk(e,10,0);if((a[e>>0]&1)==0){A=e+1|0;w=A;x=e+8|0}else{A=e+8|0;w=e+1|0;x=A;A=c[A>>2]|0}c[s>>2]=A;c[q>>2]=r;c[p>>2]=0;h=e+4|0;y=a[v>>0]|0;v=c[f>>2]|0;a:while(1){if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}B=(v|0)==0;z=c[g>>2]|0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(B){break}else{break a}}if(!((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1)){if(B){break}else{break a}}else{c[g>>2]=0;l=18;break}}else{l=18}}while(0);if((l|0)==18){l=0;if(B){z=0;break}else{z=0}}B=a[e>>0]|0;C=(B&1)==0;if(C){D=(B&255)>>>1}else{D=c[h>>2]|0}if(((c[s>>2]|0)-A|0)==(D|0)){if(C){A=(B&255)>>>1;B=(B&255)>>>1}else{B=c[h>>2]|0;A=B}fk(e,A<<1,0);if((a[e>>0]&1)==0){A=10}else{A=(c[e>>2]&-2)+-1|0}fk(e,A,0);if((a[e>>0]&1)==0){A=w}else{A=c[x>>2]|0}c[s>>2]=A+B}B=v+12|0;D=c[B>>2]|0;C=v+16|0;if((D|0)==(c[C>>2]|0)){D=gc[c[(c[v>>2]|0)+36>>2]&127](v)|0}else{D=d[D>>0]|0}if((sm(D&255,t,A,s,p,y,m,r,q,u)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){gc[c[(c[v>>2]|0)+40>>2]&127](v)|0;continue}else{c[B>>2]=z+1;continue}}u=a[m>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[m+4>>2]|0}if((u|0)!=0?(o=c[q>>2]|0,(o-r|0)<160):0){D=c[p>>2]|0;c[q>>2]=o+4;c[o>>2]=D}c[k>>2]=Kr(A,c[s>>2]|0,j,t)|0;dp(m,r,c[q>>2]|0,j);if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}k=(v|0)==0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(!k){break}c[b>>2]=v;ck(e);ck(m);i=n;return}if((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1){c[g>>2]=0;l=54;break}if(k^(z|0)==0){c[b>>2]=v;ck(e);ck(m);i=n;return}}else{l=54}}while(0);if((l|0)==54?!k:0){c[b>>2]=v;ck(e);ck(m);i=n;return}c[j>>2]=c[j>>2]|2;c[b>>2]=v;ck(e);ck(m);i=n;return}function hm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];im(a,0,k,j,f,g,h);i=b;return}function im(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;n=i;i=i+224|0;u=n+198|0;v=n+196|0;m=n+184|0;e=n+172|0;s=n+168|0;r=n+8|0;q=n+4|0;p=n;t=c[h+4>>2]&74;if((t|0)==64){t=8}else if((t|0)==0){t=0}else if((t|0)==8){t=16}else{t=10}Sm(m,h,u,v);c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;fk(e,10,0);if((a[e>>0]&1)==0){A=e+1|0;w=A;x=e+8|0}else{A=e+8|0;w=e+1|0;x=A;A=c[A>>2]|0}c[s>>2]=A;c[q>>2]=r;c[p>>2]=0;h=e+4|0;y=a[v>>0]|0;v=c[f>>2]|0;a:while(1){if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}B=(v|0)==0;z=c[g>>2]|0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(B){break}else{break a}}if(!((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1)){if(B){break}else{break a}}else{c[g>>2]=0;l=18;break}}else{l=18}}while(0);if((l|0)==18){l=0;if(B){z=0;break}else{z=0}}B=a[e>>0]|0;C=(B&1)==0;if(C){D=(B&255)>>>1}else{D=c[h>>2]|0}if(((c[s>>2]|0)-A|0)==(D|0)){if(C){A=(B&255)>>>1;B=(B&255)>>>1}else{B=c[h>>2]|0;A=B}fk(e,A<<1,0);if((a[e>>0]&1)==0){A=10}else{A=(c[e>>2]&-2)+-1|0}fk(e,A,0);if((a[e>>0]&1)==0){A=w}else{A=c[x>>2]|0}c[s>>2]=A+B}B=v+12|0;D=c[B>>2]|0;C=v+16|0;if((D|0)==(c[C>>2]|0)){D=gc[c[(c[v>>2]|0)+36>>2]&127](v)|0}else{D=d[D>>0]|0}if((sm(D&255,t,A,s,p,y,m,r,q,u)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){gc[c[(c[v>>2]|0)+40>>2]&127](v)|0;continue}else{c[B>>2]=z+1;continue}}u=a[m>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[m+4>>2]|0}if((u|0)!=0?(o=c[q>>2]|0,(o-r|0)<160):0){D=c[p>>2]|0;c[q>>2]=o+4;c[o>>2]=D}c[k>>2]=Jr(A,c[s>>2]|0,j,t)|0;dp(m,r,c[q>>2]|0,j);if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}k=(v|0)==0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(!k){break}c[b>>2]=v;ck(e);ck(m);i=n;return}if((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1){c[g>>2]=0;l=54;break}if(k^(z|0)==0){c[b>>2]=v;ck(e);ck(m);i=n;return}}else{l=54}}while(0);if((l|0)==54?!k:0){c[b>>2]=v;ck(e);ck(m);i=n;return}c[j>>2]=c[j>>2]|2;c[b>>2]=v;ck(e);ck(m);i=n;return}function jm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];km(a,0,k,j,f,g,h);i=b;return}function km(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;n=i;i=i+224|0;u=n+198|0;v=n+196|0;m=n+184|0;e=n+172|0;s=n+168|0;r=n+8|0;q=n+4|0;p=n;t=c[h+4>>2]&74;if((t|0)==8){t=16}else if((t|0)==0){t=0}else if((t|0)==64){t=8}else{t=10}Sm(m,h,u,v);c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;fk(e,10,0);if((a[e>>0]&1)==0){A=e+1|0;w=A;x=e+8|0}else{A=e+8|0;w=e+1|0;x=A;A=c[A>>2]|0}c[s>>2]=A;c[q>>2]=r;c[p>>2]=0;h=e+4|0;y=a[v>>0]|0;v=c[f>>2]|0;a:while(1){if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}B=(v|0)==0;z=c[g>>2]|0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(B){break}else{break a}}if(!((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1)){if(B){break}else{break a}}else{c[g>>2]=0;l=18;break}}else{l=18}}while(0);if((l|0)==18){l=0;if(B){z=0;break}else{z=0}}B=a[e>>0]|0;C=(B&1)==0;if(C){D=(B&255)>>>1}else{D=c[h>>2]|0}if(((c[s>>2]|0)-A|0)==(D|0)){if(C){A=(B&255)>>>1;B=(B&255)>>>1}else{B=c[h>>2]|0;A=B}fk(e,A<<1,0);if((a[e>>0]&1)==0){A=10}else{A=(c[e>>2]&-2)+-1|0}fk(e,A,0);if((a[e>>0]&1)==0){A=w}else{A=c[x>>2]|0}c[s>>2]=A+B}B=v+12|0;D=c[B>>2]|0;C=v+16|0;if((D|0)==(c[C>>2]|0)){D=gc[c[(c[v>>2]|0)+36>>2]&127](v)|0}else{D=d[D>>0]|0}if((sm(D&255,t,A,s,p,y,m,r,q,u)|0)!=0){break}z=c[B>>2]|0;if((z|0)==(c[C>>2]|0)){gc[c[(c[v>>2]|0)+40>>2]&127](v)|0;continue}else{c[B>>2]=z+1;continue}}u=a[m>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[m+4>>2]|0}if((u|0)!=0?(o=c[q>>2]|0,(o-r|0)<160):0){D=c[p>>2]|0;c[q>>2]=o+4;c[o>>2]=D}C=Ir(A,c[s>>2]|0,j,t)|0;D=k;c[D>>2]=C;c[D+4>>2]=I;dp(m,r,c[q>>2]|0,j);if((v|0)!=0){if((c[v+12>>2]|0)==(c[v+16>>2]|0)?(gc[c[(c[v>>2]|0)+36>>2]&127](v)|0)==-1:0){c[f>>2]=0;v=0}}else{v=0}k=(v|0)==0;do{if((z|0)!=0){if((c[z+12>>2]|0)!=(c[z+16>>2]|0)){if(!k){break}c[b>>2]=v;ck(e);ck(m);i=n;return}if((gc[c[(c[z>>2]|0)+36>>2]&127](z)|0)==-1){c[g>>2]=0;l=54;break}if(k^(z|0)==0){c[b>>2]=v;ck(e);ck(m);i=n;return}}else{l=54}}while(0);if((l|0)==54?!k:0){c[b>>2]=v;ck(e);ck(m);i=n;return}c[j>>2]=c[j>>2]|2;c[b>>2]=v;ck(e);ck(m);i=n;return}function lm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];mm(a,0,k,j,f,g,h);i=b;return}function mm(b,e,f,h,j,k,l){b=b|0;e=e|0;f=f|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;o=i;i=i+240|0;w=o+200|0;A=o+199|0;x=o+198|0;n=o+184|0;e=o+172|0;r=o+168|0;s=o+8|0;u=o+4|0;t=o;q=o+197|0;v=o+196|0;Tm(n,j,w,A,x);c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;fk(e,10,0);if((a[e>>0]&1)==0){D=e+1|0;y=D;z=e+8|0}else{D=e+8|0;y=e+1|0;z=D;D=c[D>>2]|0}c[r>>2]=D;c[u>>2]=s;c[t>>2]=0;a[q>>0]=1;a[v>>0]=69;j=e+4|0;A=a[A>>0]|0;B=a[x>>0]|0;x=c[f>>2]|0;a:while(1){if((x|0)!=0){if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(gc[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[f>>2]=0;x=0}}else{x=0}E=(x|0)==0;C=c[h>>2]|0;do{if((C|0)!=0){if((c[C+12>>2]|0)!=(c[C+16>>2]|0)){if(E){break}else{break a}}if(!((gc[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1)){if(E){break}else{break a}}else{c[h>>2]=0;m=14;break}}else{m=14}}while(0);if((m|0)==14){m=0;if(E){C=0;break}else{C=0}}E=a[e>>0]|0;G=(E&1)==0;if(G){F=(E&255)>>>1}else{F=c[j>>2]|0}if(((c[r>>2]|0)-D|0)==(F|0)){if(G){D=(E&255)>>>1;E=(E&255)>>>1}else{E=c[j>>2]|0;D=E}fk(e,D<<1,0);if((a[e>>0]&1)==0){D=10}else{D=(c[e>>2]&-2)+-1|0}fk(e,D,0);if((a[e>>0]&1)==0){D=y}else{D=c[z>>2]|0}c[r>>2]=D+E}F=x+12|0;G=c[F>>2]|0;E=x+16|0;if((G|0)==(c[E>>2]|0)){G=gc[c[(c[x>>2]|0)+36>>2]&127](x)|0}else{G=d[G>>0]|0}if((Um(G&255,q,v,D,r,A,B,n,s,u,t,w)|0)!=0){break}C=c[F>>2]|0;if((C|0)==(c[E>>2]|0)){gc[c[(c[x>>2]|0)+40>>2]&127](x)|0;continue}else{c[F>>2]=C+1;continue}}v=a[n>>0]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[n+4>>2]|0}if(((v|0)!=0?(a[q>>0]|0)!=0:0)?(p=c[u>>2]|0,(p-s|0)<160):0){G=c[t>>2]|0;c[u>>2]=p+4;c[p>>2]=G}g[l>>2]=+Hr(D,c[r>>2]|0,k);dp(n,s,c[u>>2]|0,k);if((x|0)!=0){if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(gc[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[f>>2]=0;x=0}}else{x=0}p=(x|0)==0;do{if((C|0)!=0){if((c[C+12>>2]|0)!=(c[C+16>>2]|0)){if(!p){break}c[b>>2]=x;ck(e);ck(n);i=o;return}if((gc[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1){c[h>>2]=0;m=51;break}if(p^(C|0)==0){c[b>>2]=x;ck(e);ck(n);i=o;return}}else{m=51}}while(0);if((m|0)==51?!p:0){c[b>>2]=x;ck(e);ck(n);i=o;return}c[k>>2]=c[k>>2]|2;c[b>>2]=x;ck(e);ck(n);i=o;return}function nm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];om(a,0,k,j,f,g,h);i=b;return}function om(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;o=i;i=i+240|0;w=o+200|0;A=o+199|0;x=o+198|0;n=o+184|0;e=o+172|0;r=o+168|0;s=o+8|0;u=o+4|0;t=o;q=o+197|0;v=o+196|0;Tm(n,j,w,A,x);c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;fk(e,10,0);if((a[e>>0]&1)==0){D=e+1|0;y=D;z=e+8|0}else{D=e+8|0;y=e+1|0;z=D;D=c[D>>2]|0}c[r>>2]=D;c[u>>2]=s;c[t>>2]=0;a[q>>0]=1;a[v>>0]=69;j=e+4|0;A=a[A>>0]|0;B=a[x>>0]|0;x=c[f>>2]|0;a:while(1){if((x|0)!=0){if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(gc[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[f>>2]=0;x=0}}else{x=0}E=(x|0)==0;C=c[g>>2]|0;do{if((C|0)!=0){if((c[C+12>>2]|0)!=(c[C+16>>2]|0)){if(E){break}else{break a}}if(!((gc[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1)){if(E){break}else{break a}}else{c[g>>2]=0;m=14;break}}else{m=14}}while(0);if((m|0)==14){m=0;if(E){C=0;break}else{C=0}}E=a[e>>0]|0;G=(E&1)==0;if(G){F=(E&255)>>>1}else{F=c[j>>2]|0}if(((c[r>>2]|0)-D|0)==(F|0)){if(G){D=(E&255)>>>1;E=(E&255)>>>1}else{E=c[j>>2]|0;D=E}fk(e,D<<1,0);if((a[e>>0]&1)==0){D=10}else{D=(c[e>>2]&-2)+-1|0}fk(e,D,0);if((a[e>>0]&1)==0){D=y}else{D=c[z>>2]|0}c[r>>2]=D+E}F=x+12|0;G=c[F>>2]|0;E=x+16|0;if((G|0)==(c[E>>2]|0)){G=gc[c[(c[x>>2]|0)+36>>2]&127](x)|0}else{G=d[G>>0]|0}if((Um(G&255,q,v,D,r,A,B,n,s,u,t,w)|0)!=0){break}C=c[F>>2]|0;if((C|0)==(c[E>>2]|0)){gc[c[(c[x>>2]|0)+40>>2]&127](x)|0;continue}else{c[F>>2]=C+1;continue}}v=a[n>>0]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[n+4>>2]|0}if(((v|0)!=0?(a[q>>0]|0)!=0:0)?(p=c[u>>2]|0,(p-s|0)<160):0){G=c[t>>2]|0;c[u>>2]=p+4;c[p>>2]=G}h[l>>3]=+Gr(D,c[r>>2]|0,k);dp(n,s,c[u>>2]|0,k);if((x|0)!=0){if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(gc[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[f>>2]=0;x=0}}else{x=0}p=(x|0)==0;do{if((C|0)!=0){if((c[C+12>>2]|0)!=(c[C+16>>2]|0)){if(!p){break}c[b>>2]=x;ck(e);ck(n);i=o;return}if((gc[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1){c[g>>2]=0;m=51;break}if(p^(C|0)==0){c[b>>2]=x;ck(e);ck(n);i=o;return}}else{m=51}}while(0);if((m|0)==51?!p:0){c[b>>2]=x;ck(e);ck(n);i=o;return}c[k>>2]=c[k>>2]|2;c[b>>2]=x;ck(e);ck(n);i=o;return}function pm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];qm(a,0,k,j,f,g,h);i=b;return}function qm(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;o=i;i=i+240|0;w=o+200|0;A=o+199|0;x=o+198|0;n=o+184|0;e=o+172|0;r=o+168|0;s=o+8|0;u=o+4|0;t=o;q=o+197|0;v=o+196|0;Tm(n,j,w,A,x);c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;fk(e,10,0);if((a[e>>0]&1)==0){D=e+1|0;y=D;z=e+8|0}else{D=e+8|0;y=e+1|0;z=D;D=c[D>>2]|0}c[r>>2]=D;c[u>>2]=s;c[t>>2]=0;a[q>>0]=1;a[v>>0]=69;j=e+4|0;A=a[A>>0]|0;B=a[x>>0]|0;x=c[f>>2]|0;a:while(1){if((x|0)!=0){if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(gc[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[f>>2]=0;x=0}}else{x=0}E=(x|0)==0;C=c[g>>2]|0;do{if((C|0)!=0){if((c[C+12>>2]|0)!=(c[C+16>>2]|0)){if(E){break}else{break a}}if(!((gc[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1)){if(E){break}else{break a}}else{c[g>>2]=0;m=14;break}}else{m=14}}while(0);if((m|0)==14){m=0;if(E){C=0;break}else{C=0}}E=a[e>>0]|0;G=(E&1)==0;if(G){F=(E&255)>>>1}else{F=c[j>>2]|0}if(((c[r>>2]|0)-D|0)==(F|0)){if(G){D=(E&255)>>>1;E=(E&255)>>>1}else{E=c[j>>2]|0;D=E}fk(e,D<<1,0);if((a[e>>0]&1)==0){D=10}else{D=(c[e>>2]&-2)+-1|0}fk(e,D,0);if((a[e>>0]&1)==0){D=y}else{D=c[z>>2]|0}c[r>>2]=D+E}F=x+12|0;G=c[F>>2]|0;E=x+16|0;if((G|0)==(c[E>>2]|0)){G=gc[c[(c[x>>2]|0)+36>>2]&127](x)|0}else{G=d[G>>0]|0}if((Um(G&255,q,v,D,r,A,B,n,s,u,t,w)|0)!=0){break}C=c[F>>2]|0;if((C|0)==(c[E>>2]|0)){gc[c[(c[x>>2]|0)+40>>2]&127](x)|0;continue}else{c[F>>2]=C+1;continue}}v=a[n>>0]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[n+4>>2]|0}if(((v|0)!=0?(a[q>>0]|0)!=0:0)?(p=c[u>>2]|0,(p-s|0)<160):0){G=c[t>>2]|0;c[u>>2]=p+4;c[p>>2]=G}h[l>>3]=+Fr(D,c[r>>2]|0,k);dp(n,s,c[u>>2]|0,k);if((x|0)!=0){if((c[x+12>>2]|0)==(c[x+16>>2]|0)?(gc[c[(c[x>>2]|0)+36>>2]&127](x)|0)==-1:0){c[f>>2]=0;x=0}}else{x=0}p=(x|0)==0;do{if((C|0)!=0){if((c[C+12>>2]|0)!=(c[C+16>>2]|0)){if(!p){break}c[b>>2]=x;ck(e);ck(n);i=o;return}if((gc[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1){c[g>>2]=0;m=51;break}if(p^(C|0)==0){c[b>>2]=x;ck(e);ck(n);i=o;return}}else{m=51}}while(0);if((m|0)==51?!p:0){c[b>>2]=x;ck(e);ck(n);i=o;return}c[k>>2]=c[k>>2]|2;c[b>>2]=x;ck(e);ck(n);i=o;return}function rm(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;m=i;i=i+240|0;o=m;p=m+204|0;e=m+192|0;q=m+188|0;n=m+176|0;y=m+16|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;Bk(q,h);r=c[q>>2]|0;if(!((c[270712]|0)==-1)){c[o>>2]=1082848;c[o+4>>2]=221;c[o+8>>2]=0;Yj(1082848,o,222)}s=(c[1082852>>2]|0)+-1|0;h=c[r+8>>2]|0;if(!((c[r+12>>2]|0)-h>>2>>>0>s>>>0)){F=Ta(4)|0;us(F);Rb(F|0,1090808,189)}h=c[h+(s<<2)>>2]|0;if((h|0)==0){F=Ta(4)|0;us(F);Rb(F|0,1090808,189)}mc[c[(c[h>>2]|0)+32>>2]&7](h,1081392,1081418|0,p)|0;Dj(c[q>>2]|0)|0;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;fk(n,10,0);if((a[n>>0]&1)==0){A=n+1|0;u=A;q=n+8|0}else{A=n+8|0;u=n+1|0;q=A;A=c[A>>2]|0}x=n+4|0;v=p+24|0;h=p+25|0;w=y;s=p+26|0;t=p;r=e+4|0;C=c[f>>2]|0;z=0;B=A;a:while(1){if((C|0)!=0){if((c[C+12>>2]|0)==(c[C+16>>2]|0)?(gc[c[(c[C>>2]|0)+36>>2]&127](C)|0)==-1:0){c[f>>2]=0;C=0}}else{C=0}D=(C|0)==0;E=c[g>>2]|0;do{if((E|0)!=0){if((c[E+12>>2]|0)!=(c[E+16>>2]|0)){if(D){break}else{break a}}if(!((gc[c[(c[E>>2]|0)+36>>2]&127](E)|0)==-1)){if(D){break}else{break a}}else{c[g>>2]=0;l=19;break}}else{l=19}}while(0);if((l|0)==19?(l=0,D):0){break}D=a[n>>0]|0;E=(D&1)==0;if(E){F=(D&255)>>>1}else{F=c[x>>2]|0}if((B-A|0)==(F|0)){if(E){A=(D&255)>>>1;B=(D&255)>>>1}else{B=c[x>>2]|0;A=B}fk(n,A<<1,0);if((a[n>>0]&1)==0){A=10}else{A=(c[n>>2]&-2)+-1|0}fk(n,A,0);if((a[n>>0]&1)==0){A=u}else{A=c[q>>2]|0}B=A+B|0}D=c[C+12>>2]|0;if((D|0)==(c[C+16>>2]|0)){C=gc[c[(c[C>>2]|0)+36>>2]&127](C)|0}else{C=d[D>>0]|0}D=C&255;C=(B|0)==(A|0);do{if(C){E=(a[v>>0]|0)==D<<24>>24;if(!E?!((a[h>>0]|0)==D<<24>>24):0){l=40;break}a[B>>0]=E?43:45;B=B+1|0;z=0}else{l=40}}while(0);do{if((l|0)==40){l=0;E=a[e>>0]|0;if((E&1)==0){E=(E&255)>>>1}else{E=c[r>>2]|0}if((E|0)!=0&D<<24>>24==0){if((y-w|0)>=160){break}c[y>>2]=z;y=y+4|0;z=0;break}else{E=p}while(1){if((a[E>>0]|0)==D<<24>>24){break}E=E+1|0;if((E|0)==(s|0)){E=s;break}}D=E-t|0;if((D|0)>23){break a}if((D|0)<22){a[B>>0]=a[1081392+D>>0]|0;B=B+1|0;z=z+1|0;break}if(C){A=B;break a}if((B-A|0)>=3){break a}if((a[B+-1>>0]|0)!=48){break a}a[B>>0]=a[1081392+D>>0]|0;B=B+1|0;z=0}}while(0);C=c[f>>2]|0;D=C+12|0;E=c[D>>2]|0;if((E|0)==(c[C+16>>2]|0)){gc[c[(c[C>>2]|0)+40>>2]&127](C)|0;continue}else{c[D>>2]=E+1;continue}}a[A+3>>0]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}F=c[270684]|0;c[o>>2]=k;if((tm(A,F,1081432,o)|0)!=1){c[j>>2]=4}k=c[f>>2]|0;if((k|0)!=0){if((c[k+12>>2]|0)==(c[k+16>>2]|0)?(gc[c[(c[k>>2]|0)+36>>2]&127](k)|0)==-1:0){c[f>>2]=0;f=0}else{f=k}}else{f=0}k=(f|0)==0;o=c[g>>2]|0;do{if((o|0)!=0){if((c[o+12>>2]|0)!=(c[o+16>>2]|0)){if(!k){break}c[b>>2]=f;ck(n);ck(e);i=m;return}if((gc[c[(c[o>>2]|0)+36>>2]&127](o)|0)==-1){c[g>>2]=0;l=72;break}if(k^(o|0)==0){c[b>>2]=f;ck(n);ck(e);i=m;return}}else{l=72}}while(0);if((l|0)==72?!k:0){c[b>>2]=f;ck(n);ck(e);i=m;return}c[j>>2]=c[j>>2]|2;c[b>>2]=f;ck(n);ck(e);i=m;return}function sm(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0;n=i;p=c[f>>2]|0;o=(p|0)==(e|0);do{if(o){q=(a[m+24>>0]|0)==b<<24>>24;if(!q?!((a[m+25>>0]|0)==b<<24>>24):0){break}c[f>>2]=e+1;a[e>>0]=q?43:45;c[g>>2]=0;q=0;i=n;return q|0}}while(0);q=a[j>>0]|0;if((q&1)==0){j=(q&255)>>>1}else{j=c[j+4>>2]|0}if((j|0)!=0?b<<24>>24==h<<24>>24:0){o=c[l>>2]|0;if((o-k|0)>=160){q=0;i=n;return q|0}q=c[g>>2]|0;c[l>>2]=o+4;c[o>>2]=q;c[g>>2]=0;q=0;i=n;return q|0}l=m+26|0;k=m;while(1){if((a[k>>0]|0)==b<<24>>24){break}k=k+1|0;if((k|0)==(l|0)){k=l;break}}m=k-m|0;if((m|0)>23){q=-1;i=n;return q|0}if((d|0)==10|(d|0)==8){if((m|0)>=(d|0)){q=-1;i=n;return q|0}}else if((d|0)==16?(m|0)>=22:0){if(o){q=-1;i=n;return q|0}if((p-e|0)>=3){q=-1;i=n;return q|0}if((a[p+-1>>0]|0)!=48){q=-1;i=n;return q|0}c[g>>2]=0;q=a[1081392+m>>0]|0;c[f>>2]=p+1;a[p>>0]=q;q=0;i=n;return q|0}q=a[1081392+m>>0]|0;c[f>>2]=p+1;a[p>>0]=q;c[g>>2]=(c[g>>2]|0)+1;q=0;i=n;return q|0}function tm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;b=cb(b|0)|0;d=ns(a,d,g)|0;if((b|0)==0){i=f;return d|0}cb(b|0)|0;i=f;return d|0}function um(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function vm(a){a=a|0;return}function wm(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;k=i;i=i+80|0;l=k;s=k+64|0;q=k+60|0;r=k+56|0;u=k+52|0;t=k+48|0;p=k+44|0;m=k+40|0;n=k+16|0;o=k+12|0;if((c[g+4>>2]&1|0)==0){c[q>>2]=-1;p=c[(c[d>>2]|0)+16>>2]|0;c[u>>2]=c[e>>2];c[t>>2]=c[f>>2];c[s+0>>2]=c[u+0>>2];c[l+0>>2]=c[t+0>>2];bc[p&63](r,d,s,l,g,h,q);l=c[r>>2]|0;c[e>>2]=l;e=c[q>>2]|0;if((e|0)==1){a[j>>0]=1}else if((e|0)==0){a[j>>0]=0}else{a[j>>0]=1;c[h>>2]=4}c[b>>2]=l;i=k;return}Bk(p,g);q=c[p>>2]|0;if(!((c[270710]|0)==-1)){c[l>>2]=1082840;c[l+4>>2]=221;c[l+8>>2]=0;Yj(1082840,l,222)}d=(c[1082844>>2]|0)+-1|0;r=c[q+8>>2]|0;if(!((c[q+12>>2]|0)-r>>2>>>0>d>>>0)){u=Ta(4)|0;us(u);Rb(u|0,1090808,189)}q=c[r+(d<<2)>>2]|0;if((q|0)==0){u=Ta(4)|0;us(u);Rb(u|0,1090808,189)}Dj(c[p>>2]|0)|0;Bk(m,g);g=c[m>>2]|0;if(!((c[270750]|0)==-1)){c[l>>2]=1083e3;c[l+4>>2]=221;c[l+8>>2]=0;Yj(1083e3,l,222)}r=(c[1083004>>2]|0)+-1|0;p=c[g+8>>2]|0;if(!((c[g+12>>2]|0)-p>>2>>>0>r>>>0)){u=Ta(4)|0;us(u);Rb(u|0,1090808,189)}g=c[p+(r<<2)>>2]|0;if((g|0)==0){u=Ta(4)|0;us(u);Rb(u|0,1090808,189)}Dj(c[m>>2]|0)|0;ec[c[(c[g>>2]|0)+24>>2]&63](n,g);ec[c[(c[g>>2]|0)+28>>2]&63](n+12|0,g);c[o>>2]=c[f>>2];u=n+24|0;c[l+0>>2]=c[o+0>>2];a[j>>0]=(xm(e,l,n,u,q,h,1)|0)==(n|0)&1;c[b>>2]=c[e>>2];qk(n+12|0);qk(n);i=k;return}function xm(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;m=i;i=i+112|0;o=m;t=(f-e|0)/12|0;if(t>>>0>100){o=Ps(t)|0;if((o|0)==0){bt()}else{k=o;n=o}}else{k=0;n=o}o=(e|0)==(f|0);if(o){s=0}else{p=e;s=0;q=n;while(1){r=a[p>>0]|0;if((r&1)==0){r=(r&255)>>>1}else{r=c[p+4>>2]|0}if((r|0)==0){a[q>>0]=2;s=s+1|0;t=t+-1|0}else{a[q>>0]=1}p=p+12|0;if((p|0)==(f|0)){break}else{q=q+1|0}}}p=0;a:while(1){q=c[b>>2]|0;do{if((q|0)!=0){r=c[q+12>>2]|0;if((r|0)==(c[q+16>>2]|0)){q=gc[c[(c[q>>2]|0)+36>>2]&127](q)|0}else{q=c[r>>2]|0}if((q|0)==-1){c[b>>2]=0;r=1;break}else{r=(c[b>>2]|0)==0;break}}else{r=1}}while(0);q=c[d>>2]|0;if((q|0)!=0){u=c[q+12>>2]|0;if((u|0)==(c[q+16>>2]|0)){u=gc[c[(c[q>>2]|0)+36>>2]&127](q)|0}else{u=c[u>>2]|0}if((u|0)==-1){c[d>>2]=0;q=0;v=1}else{v=0}}else{q=0;v=1}u=c[b>>2]|0;if(!((r^v)&(t|0)!=0)){break}q=c[u+12>>2]|0;if((q|0)==(c[u+16>>2]|0)){r=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{r=c[q>>2]|0}if(!j){r=pc[c[(c[g>>2]|0)+28>>2]&63](g,r)|0}q=p+1|0;if(o){p=q;continue}b:do{if(j){v=0;u=e;w=n;while(1){do{if((a[w>>0]|0)==1){y=a[u>>0]|0;x=(y&1)==0;if(x){z=u+4|0}else{z=c[u+8>>2]|0}if((r|0)!=(c[z+(p<<2)>>2]|0)){a[w>>0]=0;t=t+-1|0;break}if(x){v=(y&255)>>>1}else{v=c[u+4>>2]|0}if((v|0)==(q|0)){a[w>>0]=2;v=1;s=s+1|0;t=t+-1|0}else{v=1}}}while(0);u=u+12|0;if((u|0)==(f|0)){break b}w=w+1|0}}else{v=0;u=e;w=n;while(1){do{if((a[w>>0]|0)==1){if((a[u>>0]&1)==0){x=u+4|0}else{x=c[u+8>>2]|0}if((r|0)!=(pc[c[(c[g>>2]|0)+28>>2]&63](g,c[x+(p<<2)>>2]|0)|0)){a[w>>0]=0;t=t+-1|0;break}v=a[u>>0]|0;if((v&1)==0){v=(v&255)>>>1}else{v=c[u+4>>2]|0}if((v|0)==(q|0)){a[w>>0]=2;v=1;s=s+1|0;t=t+-1|0}else{v=1}}}while(0);u=u+12|0;if((u|0)==(f|0)){break b}w=w+1|0}}}while(0);if(!v){p=q;continue}u=c[b>>2]|0;p=u+12|0;r=c[p>>2]|0;if((r|0)==(c[u+16>>2]|0)){gc[c[(c[u>>2]|0)+40>>2]&127](u)|0}else{c[p>>2]=r+4}if((t+s|0)>>>0<2){p=q;continue}else{p=e;r=n}while(1){if((a[r>>0]|0)==2){u=a[p>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[p+4>>2]|0}if((u|0)!=(q|0)){a[r>>0]=0;s=s+-1|0}}p=p+12|0;if((p|0)==(f|0)){p=q;continue a}else{r=r+1|0}}}do{if((u|0)!=0){g=c[u+12>>2]|0;if((g|0)==(c[u+16>>2]|0)){g=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{g=c[g>>2]|0}if((g|0)==-1){c[b>>2]=0;b=1;break}else{b=(c[b>>2]|0)==0;break}}else{b=1}}while(0);do{if((q|0)!=0){g=c[q+12>>2]|0;if((g|0)==(c[q+16>>2]|0)){g=gc[c[(c[q>>2]|0)+36>>2]&127](q)|0}else{g=c[g>>2]|0}if(!((g|0)==-1)){if(b){break}else{l=87;break}}else{c[d>>2]=0;l=85;break}}else{l=85}}while(0);if((l|0)==85?b:0){l=87}if((l|0)==87){c[h>>2]=c[h>>2]|2}c:do{if(!o){if((a[n>>0]|0)==2){f=e}else{while(1){e=e+12|0;n=n+1|0;if((e|0)==(f|0)){l=92;break c}if((a[n>>0]|0)==2){f=e;break}}}}else{l=92}}while(0);if((l|0)==92){c[h>>2]=c[h>>2]|4}if((k|0)==0){i=m;return f|0}Qs(k);i=m;return f|0}function ym(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];zm(a,0,k,j,f,g,h);i=b;return}function zm(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;m=i;i=i+304|0;t=m+200|0;u=m+196|0;d=m+184|0;l=m+172|0;p=m+168|0;q=m+8|0;o=m+4|0;r=m;s=c[g+4>>2]&74;if((s|0)==8){s=16}else if((s|0)==64){s=8}else if((s|0)==0){s=0}else{s=10}Vm(d,g,t,u);c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;fk(l,10,0);if((a[l>>0]&1)==0){z=l+1|0;w=z;v=l+8|0}else{z=l+8|0;w=l+1|0;v=z;z=c[z>>2]|0}c[p>>2]=z;c[o>>2]=q;c[r>>2]=0;g=l+4|0;x=c[u>>2]|0;u=c[e>>2]|0;a:while(1){if((u|0)!=0){y=c[u+12>>2]|0;if((y|0)==(c[u+16>>2]|0)){y=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{y=c[y>>2]|0}if((y|0)==-1){c[e>>2]=0;A=1;u=0}else{A=0}}else{A=1;u=0}y=c[f>>2]|0;do{if((y|0)!=0){B=c[y+12>>2]|0;if((B|0)==(c[y+16>>2]|0)){B=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{B=c[B>>2]|0}if(!((B|0)==-1)){if(A){break}else{break a}}else{c[f>>2]=0;k=21;break}}else{k=21}}while(0);if((k|0)==21){k=0;if(A){y=0;break}else{y=0}}A=a[l>>0]|0;B=(A&1)==0;if(B){C=(A&255)>>>1}else{C=c[g>>2]|0}if(((c[p>>2]|0)-z|0)==(C|0)){if(B){z=(A&255)>>>1;A=(A&255)>>>1}else{A=c[g>>2]|0;z=A}fk(l,z<<1,0);if((a[l>>0]&1)==0){z=10}else{z=(c[l>>2]&-2)+-1|0}fk(l,z,0);if((a[l>>0]&1)==0){z=w}else{z=c[v>>2]|0}c[p>>2]=z+A}B=u+12|0;C=c[B>>2]|0;A=u+16|0;if((C|0)==(c[A>>2]|0)){C=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{C=c[C>>2]|0}if((Rm(C,s,z,p,r,x,d,q,o,t)|0)!=0){break}y=c[B>>2]|0;if((y|0)==(c[A>>2]|0)){gc[c[(c[u>>2]|0)+40>>2]&127](u)|0;continue}else{c[B>>2]=y+4;continue}}t=a[d>>0]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[d+4>>2]|0}if((t|0)!=0?(n=c[o>>2]|0,(n-q|0)<160):0){C=c[r>>2]|0;c[o>>2]=n+4;c[n>>2]=C}c[j>>2]=Nr(z,c[p>>2]|0,h,s)|0;dp(d,q,c[o>>2]|0,h);if((u|0)!=0){j=c[u+12>>2]|0;if((j|0)==(c[u+16>>2]|0)){j=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[e>>2]=0;u=0;e=1}else{e=0}}else{u=0;e=1}do{if((y|0)!=0){j=c[y+12>>2]|0;if((j|0)==(c[y+16>>2]|0)){j=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[f>>2]=0;k=60;break}if(e){c[b>>2]=u;ck(l);ck(d);i=m;return}}else{k=60}}while(0);if((k|0)==60?!e:0){c[b>>2]=u;ck(l);ck(d);i=m;return}c[h>>2]=c[h>>2]|2;c[b>>2]=u;ck(l);ck(d);i=m;return}function Am(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];Bm(a,0,k,j,f,g,h);i=b;return}function Bm(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;m=i;i=i+304|0;t=m+200|0;u=m+196|0;d=m+184|0;l=m+172|0;p=m+168|0;q=m+8|0;o=m+4|0;r=m;s=c[g+4>>2]&74;if((s|0)==8){s=16}else if((s|0)==0){s=0}else if((s|0)==64){s=8}else{s=10}Vm(d,g,t,u);c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;fk(l,10,0);if((a[l>>0]&1)==0){z=l+1|0;w=z;v=l+8|0}else{z=l+8|0;w=l+1|0;v=z;z=c[z>>2]|0}c[p>>2]=z;c[o>>2]=q;c[r>>2]=0;g=l+4|0;x=c[u>>2]|0;u=c[e>>2]|0;a:while(1){if((u|0)!=0){y=c[u+12>>2]|0;if((y|0)==(c[u+16>>2]|0)){y=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{y=c[y>>2]|0}if((y|0)==-1){c[e>>2]=0;A=1;u=0}else{A=0}}else{A=1;u=0}y=c[f>>2]|0;do{if((y|0)!=0){B=c[y+12>>2]|0;if((B|0)==(c[y+16>>2]|0)){B=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{B=c[B>>2]|0}if(!((B|0)==-1)){if(A){break}else{break a}}else{c[f>>2]=0;k=21;break}}else{k=21}}while(0);if((k|0)==21){k=0;if(A){y=0;break}else{y=0}}A=a[l>>0]|0;B=(A&1)==0;if(B){C=(A&255)>>>1}else{C=c[g>>2]|0}if(((c[p>>2]|0)-z|0)==(C|0)){if(B){z=(A&255)>>>1;A=(A&255)>>>1}else{A=c[g>>2]|0;z=A}fk(l,z<<1,0);if((a[l>>0]&1)==0){z=10}else{z=(c[l>>2]&-2)+-1|0}fk(l,z,0);if((a[l>>0]&1)==0){z=w}else{z=c[v>>2]|0}c[p>>2]=z+A}B=u+12|0;C=c[B>>2]|0;A=u+16|0;if((C|0)==(c[A>>2]|0)){C=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{C=c[C>>2]|0}if((Rm(C,s,z,p,r,x,d,q,o,t)|0)!=0){break}y=c[B>>2]|0;if((y|0)==(c[A>>2]|0)){gc[c[(c[u>>2]|0)+40>>2]&127](u)|0;continue}else{c[B>>2]=y+4;continue}}t=a[d>>0]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[d+4>>2]|0}if((t|0)!=0?(n=c[o>>2]|0,(n-q|0)<160):0){C=c[r>>2]|0;c[o>>2]=n+4;c[n>>2]=C}B=Mr(z,c[p>>2]|0,h,s)|0;C=j;c[C>>2]=B;c[C+4>>2]=I;dp(d,q,c[o>>2]|0,h);if((u|0)!=0){j=c[u+12>>2]|0;if((j|0)==(c[u+16>>2]|0)){j=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[e>>2]=0;u=0;e=1}else{e=0}}else{u=0;e=1}do{if((y|0)!=0){j=c[y+12>>2]|0;if((j|0)==(c[y+16>>2]|0)){j=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[f>>2]=0;k=60;break}if(e){c[b>>2]=u;ck(l);ck(d);i=m;return}}else{k=60}}while(0);if((k|0)==60?!e:0){c[b>>2]=u;ck(l);ck(d);i=m;return}c[h>>2]=c[h>>2]|2;c[b>>2]=u;ck(l);ck(d);i=m;return}function Cm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];Dm(a,0,k,j,f,g,h);i=b;return}function Dm(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;n=i;i=i+304|0;u=n+200|0;v=n+196|0;e=n+184|0;m=n+172|0;q=n+168|0;r=n+8|0;p=n+4|0;s=n;t=c[h+4>>2]&74;if((t|0)==64){t=8}else if((t|0)==0){t=0}else if((t|0)==8){t=16}else{t=10}Vm(e,h,u,v);c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;fk(m,10,0);if((a[m>>0]&1)==0){A=m+1|0;x=A;w=m+8|0}else{A=m+8|0;x=m+1|0;w=A;A=c[A>>2]|0}c[q>>2]=A;c[p>>2]=r;c[s>>2]=0;h=m+4|0;y=c[v>>2]|0;v=c[f>>2]|0;a:while(1){if((v|0)!=0){z=c[v+12>>2]|0;if((z|0)==(c[v+16>>2]|0)){z=gc[c[(c[v>>2]|0)+36>>2]&127](v)|0}else{z=c[z>>2]|0}if((z|0)==-1){c[f>>2]=0;B=1;v=0}else{B=0}}else{B=1;v=0}z=c[g>>2]|0;do{if((z|0)!=0){C=c[z+12>>2]|0;if((C|0)==(c[z+16>>2]|0)){C=gc[c[(c[z>>2]|0)+36>>2]&127](z)|0}else{C=c[C>>2]|0}if(!((C|0)==-1)){if(B){break}else{break a}}else{c[g>>2]=0;l=21;break}}else{l=21}}while(0);if((l|0)==21){l=0;if(B){z=0;break}else{z=0}}B=a[m>>0]|0;C=(B&1)==0;if(C){D=(B&255)>>>1}else{D=c[h>>2]|0}if(((c[q>>2]|0)-A|0)==(D|0)){if(C){A=(B&255)>>>1;B=(B&255)>>>1}else{B=c[h>>2]|0;A=B}fk(m,A<<1,0);if((a[m>>0]&1)==0){A=10}else{A=(c[m>>2]&-2)+-1|0}fk(m,A,0);if((a[m>>0]&1)==0){A=x}else{A=c[w>>2]|0}c[q>>2]=A+B}C=v+12|0;D=c[C>>2]|0;B=v+16|0;if((D|0)==(c[B>>2]|0)){D=gc[c[(c[v>>2]|0)+36>>2]&127](v)|0}else{D=c[D>>2]|0}if((Rm(D,t,A,q,s,y,e,r,p,u)|0)!=0){break}z=c[C>>2]|0;if((z|0)==(c[B>>2]|0)){gc[c[(c[v>>2]|0)+40>>2]&127](v)|0;continue}else{c[C>>2]=z+4;continue}}u=a[e>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[e+4>>2]|0}if((u|0)!=0?(o=c[p>>2]|0,(o-r|0)<160):0){D=c[s>>2]|0;
+c[p>>2]=o+4;c[o>>2]=D}b[k>>1]=Lr(A,c[q>>2]|0,j,t)|0;dp(e,r,c[p>>2]|0,j);if((v|0)!=0){k=c[v+12>>2]|0;if((k|0)==(c[v+16>>2]|0)){k=gc[c[(c[v>>2]|0)+36>>2]&127](v)|0}else{k=c[k>>2]|0}if((k|0)==-1){c[f>>2]=0;v=0;f=1}else{f=0}}else{v=0;f=1}do{if((z|0)!=0){k=c[z+12>>2]|0;if((k|0)==(c[z+16>>2]|0)){k=gc[c[(c[z>>2]|0)+36>>2]&127](z)|0}else{k=c[k>>2]|0}if((k|0)==-1){c[g>>2]=0;l=60;break}if(f){c[d>>2]=v;ck(m);ck(e);i=n;return}}else{l=60}}while(0);if((l|0)==60?!f:0){c[d>>2]=v;ck(m);ck(e);i=n;return}c[j>>2]=c[j>>2]|2;c[d>>2]=v;ck(m);ck(e);i=n;return}function Em(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];Fm(a,0,k,j,f,g,h);i=b;return}function Fm(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;m=i;i=i+304|0;t=m+200|0;u=m+196|0;d=m+184|0;l=m+172|0;p=m+168|0;q=m+8|0;o=m+4|0;r=m;s=c[g+4>>2]&74;if((s|0)==8){s=16}else if((s|0)==64){s=8}else if((s|0)==0){s=0}else{s=10}Vm(d,g,t,u);c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;fk(l,10,0);if((a[l>>0]&1)==0){z=l+1|0;w=z;v=l+8|0}else{z=l+8|0;w=l+1|0;v=z;z=c[z>>2]|0}c[p>>2]=z;c[o>>2]=q;c[r>>2]=0;g=l+4|0;x=c[u>>2]|0;u=c[e>>2]|0;a:while(1){if((u|0)!=0){y=c[u+12>>2]|0;if((y|0)==(c[u+16>>2]|0)){y=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{y=c[y>>2]|0}if((y|0)==-1){c[e>>2]=0;A=1;u=0}else{A=0}}else{A=1;u=0}y=c[f>>2]|0;do{if((y|0)!=0){B=c[y+12>>2]|0;if((B|0)==(c[y+16>>2]|0)){B=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{B=c[B>>2]|0}if(!((B|0)==-1)){if(A){break}else{break a}}else{c[f>>2]=0;k=21;break}}else{k=21}}while(0);if((k|0)==21){k=0;if(A){y=0;break}else{y=0}}A=a[l>>0]|0;B=(A&1)==0;if(B){C=(A&255)>>>1}else{C=c[g>>2]|0}if(((c[p>>2]|0)-z|0)==(C|0)){if(B){z=(A&255)>>>1;A=(A&255)>>>1}else{A=c[g>>2]|0;z=A}fk(l,z<<1,0);if((a[l>>0]&1)==0){z=10}else{z=(c[l>>2]&-2)+-1|0}fk(l,z,0);if((a[l>>0]&1)==0){z=w}else{z=c[v>>2]|0}c[p>>2]=z+A}B=u+12|0;C=c[B>>2]|0;A=u+16|0;if((C|0)==(c[A>>2]|0)){C=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{C=c[C>>2]|0}if((Rm(C,s,z,p,r,x,d,q,o,t)|0)!=0){break}y=c[B>>2]|0;if((y|0)==(c[A>>2]|0)){gc[c[(c[u>>2]|0)+40>>2]&127](u)|0;continue}else{c[B>>2]=y+4;continue}}t=a[d>>0]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[d+4>>2]|0}if((t|0)!=0?(n=c[o>>2]|0,(n-q|0)<160):0){C=c[r>>2]|0;c[o>>2]=n+4;c[n>>2]=C}c[j>>2]=Kr(z,c[p>>2]|0,h,s)|0;dp(d,q,c[o>>2]|0,h);if((u|0)!=0){j=c[u+12>>2]|0;if((j|0)==(c[u+16>>2]|0)){j=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[e>>2]=0;u=0;e=1}else{e=0}}else{u=0;e=1}do{if((y|0)!=0){j=c[y+12>>2]|0;if((j|0)==(c[y+16>>2]|0)){j=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[f>>2]=0;k=60;break}if(e){c[b>>2]=u;ck(l);ck(d);i=m;return}}else{k=60}}while(0);if((k|0)==60?!e:0){c[b>>2]=u;ck(l);ck(d);i=m;return}c[h>>2]=c[h>>2]|2;c[b>>2]=u;ck(l);ck(d);i=m;return}function Gm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];Hm(a,0,k,j,f,g,h);i=b;return}function Hm(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;m=i;i=i+304|0;t=m+200|0;u=m+196|0;d=m+184|0;l=m+172|0;p=m+168|0;q=m+8|0;o=m+4|0;r=m;s=c[g+4>>2]&74;if((s|0)==64){s=8}else if((s|0)==8){s=16}else if((s|0)==0){s=0}else{s=10}Vm(d,g,t,u);c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;fk(l,10,0);if((a[l>>0]&1)==0){z=l+1|0;w=z;v=l+8|0}else{z=l+8|0;w=l+1|0;v=z;z=c[z>>2]|0}c[p>>2]=z;c[o>>2]=q;c[r>>2]=0;g=l+4|0;x=c[u>>2]|0;u=c[e>>2]|0;a:while(1){if((u|0)!=0){y=c[u+12>>2]|0;if((y|0)==(c[u+16>>2]|0)){y=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{y=c[y>>2]|0}if((y|0)==-1){c[e>>2]=0;A=1;u=0}else{A=0}}else{A=1;u=0}y=c[f>>2]|0;do{if((y|0)!=0){B=c[y+12>>2]|0;if((B|0)==(c[y+16>>2]|0)){B=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{B=c[B>>2]|0}if(!((B|0)==-1)){if(A){break}else{break a}}else{c[f>>2]=0;k=21;break}}else{k=21}}while(0);if((k|0)==21){k=0;if(A){y=0;break}else{y=0}}A=a[l>>0]|0;B=(A&1)==0;if(B){C=(A&255)>>>1}else{C=c[g>>2]|0}if(((c[p>>2]|0)-z|0)==(C|0)){if(B){z=(A&255)>>>1;A=(A&255)>>>1}else{A=c[g>>2]|0;z=A}fk(l,z<<1,0);if((a[l>>0]&1)==0){z=10}else{z=(c[l>>2]&-2)+-1|0}fk(l,z,0);if((a[l>>0]&1)==0){z=w}else{z=c[v>>2]|0}c[p>>2]=z+A}B=u+12|0;C=c[B>>2]|0;A=u+16|0;if((C|0)==(c[A>>2]|0)){C=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{C=c[C>>2]|0}if((Rm(C,s,z,p,r,x,d,q,o,t)|0)!=0){break}y=c[B>>2]|0;if((y|0)==(c[A>>2]|0)){gc[c[(c[u>>2]|0)+40>>2]&127](u)|0;continue}else{c[B>>2]=y+4;continue}}t=a[d>>0]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[d+4>>2]|0}if((t|0)!=0?(n=c[o>>2]|0,(n-q|0)<160):0){C=c[r>>2]|0;c[o>>2]=n+4;c[n>>2]=C}c[j>>2]=Jr(z,c[p>>2]|0,h,s)|0;dp(d,q,c[o>>2]|0,h);if((u|0)!=0){j=c[u+12>>2]|0;if((j|0)==(c[u+16>>2]|0)){j=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[e>>2]=0;u=0;e=1}else{e=0}}else{u=0;e=1}do{if((y|0)!=0){j=c[y+12>>2]|0;if((j|0)==(c[y+16>>2]|0)){j=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[f>>2]=0;k=60;break}if(e){c[b>>2]=u;ck(l);ck(d);i=m;return}}else{k=60}}while(0);if((k|0)==60?!e:0){c[b>>2]=u;ck(l);ck(d);i=m;return}c[h>>2]=c[h>>2]|2;c[b>>2]=u;ck(l);ck(d);i=m;return}function Im(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];Jm(a,0,k,j,f,g,h);i=b;return}function Jm(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;m=i;i=i+304|0;t=m+200|0;u=m+196|0;d=m+184|0;l=m+172|0;p=m+168|0;q=m+8|0;o=m+4|0;r=m;s=c[g+4>>2]&74;if((s|0)==0){s=0}else if((s|0)==8){s=16}else if((s|0)==64){s=8}else{s=10}Vm(d,g,t,u);c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;fk(l,10,0);if((a[l>>0]&1)==0){z=l+1|0;w=z;v=l+8|0}else{z=l+8|0;w=l+1|0;v=z;z=c[z>>2]|0}c[p>>2]=z;c[o>>2]=q;c[r>>2]=0;g=l+4|0;x=c[u>>2]|0;u=c[e>>2]|0;a:while(1){if((u|0)!=0){y=c[u+12>>2]|0;if((y|0)==(c[u+16>>2]|0)){y=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{y=c[y>>2]|0}if((y|0)==-1){c[e>>2]=0;A=1;u=0}else{A=0}}else{A=1;u=0}y=c[f>>2]|0;do{if((y|0)!=0){B=c[y+12>>2]|0;if((B|0)==(c[y+16>>2]|0)){B=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{B=c[B>>2]|0}if(!((B|0)==-1)){if(A){break}else{break a}}else{c[f>>2]=0;k=21;break}}else{k=21}}while(0);if((k|0)==21){k=0;if(A){y=0;break}else{y=0}}A=a[l>>0]|0;B=(A&1)==0;if(B){C=(A&255)>>>1}else{C=c[g>>2]|0}if(((c[p>>2]|0)-z|0)==(C|0)){if(B){z=(A&255)>>>1;A=(A&255)>>>1}else{A=c[g>>2]|0;z=A}fk(l,z<<1,0);if((a[l>>0]&1)==0){z=10}else{z=(c[l>>2]&-2)+-1|0}fk(l,z,0);if((a[l>>0]&1)==0){z=w}else{z=c[v>>2]|0}c[p>>2]=z+A}B=u+12|0;C=c[B>>2]|0;A=u+16|0;if((C|0)==(c[A>>2]|0)){C=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{C=c[C>>2]|0}if((Rm(C,s,z,p,r,x,d,q,o,t)|0)!=0){break}y=c[B>>2]|0;if((y|0)==(c[A>>2]|0)){gc[c[(c[u>>2]|0)+40>>2]&127](u)|0;continue}else{c[B>>2]=y+4;continue}}t=a[d>>0]|0;if((t&1)==0){t=(t&255)>>>1}else{t=c[d+4>>2]|0}if((t|0)!=0?(n=c[o>>2]|0,(n-q|0)<160):0){C=c[r>>2]|0;c[o>>2]=n+4;c[n>>2]=C}B=Ir(z,c[p>>2]|0,h,s)|0;C=j;c[C>>2]=B;c[C+4>>2]=I;dp(d,q,c[o>>2]|0,h);if((u|0)!=0){j=c[u+12>>2]|0;if((j|0)==(c[u+16>>2]|0)){j=gc[c[(c[u>>2]|0)+36>>2]&127](u)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[e>>2]=0;u=0;e=1}else{e=0}}else{u=0;e=1}do{if((y|0)!=0){j=c[y+12>>2]|0;if((j|0)==(c[y+16>>2]|0)){j=gc[c[(c[y>>2]|0)+36>>2]&127](y)|0}else{j=c[j>>2]|0}if((j|0)==-1){c[f>>2]=0;k=60;break}if(e){c[b>>2]=u;ck(l);ck(d);i=m;return}}else{k=60}}while(0);if((k|0)==60?!e:0){c[b>>2]=u;ck(l);ck(d);i=m;return}c[h>>2]=c[h>>2]|2;c[b>>2]=u;ck(l);ck(d);i=m;return}function Km(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];Lm(a,0,k,j,f,g,h);i=b;return}function Lm(b,d,e,f,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;d=i;i=i+352|0;u=d+208|0;z=d+200|0;w=d+196|0;m=d+184|0;n=d+172|0;q=d+168|0;p=d+8|0;t=d+4|0;s=d;r=d+337|0;v=d+336|0;Wm(m,h,u,z,w);c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;fk(n,10,0);if((a[n>>0]&1)==0){C=n+1|0;h=C;x=n+8|0}else{C=n+8|0;h=n+1|0;x=C;C=c[C>>2]|0}c[q>>2]=C;c[t>>2]=p;c[s>>2]=0;a[r>>0]=1;a[v>>0]=69;y=n+4|0;z=c[z>>2]|0;A=c[w>>2]|0;w=c[e>>2]|0;a:while(1){if((w|0)!=0){B=c[w+12>>2]|0;if((B|0)==(c[w+16>>2]|0)){B=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{B=c[B>>2]|0}if((B|0)==-1){c[e>>2]=0;D=1;w=0}else{D=0}}else{D=1;w=0}B=c[f>>2]|0;do{if((B|0)!=0){E=c[B+12>>2]|0;if((E|0)==(c[B+16>>2]|0)){E=gc[c[(c[B>>2]|0)+36>>2]&127](B)|0}else{E=c[E>>2]|0}if(!((E|0)==-1)){if(D){break}else{break a}}else{c[f>>2]=0;l=17;break}}else{l=17}}while(0);if((l|0)==17){l=0;if(D){B=0;break}else{B=0}}D=a[n>>0]|0;F=(D&1)==0;if(F){E=(D&255)>>>1}else{E=c[y>>2]|0}if(((c[q>>2]|0)-C|0)==(E|0)){if(F){C=(D&255)>>>1;D=(D&255)>>>1}else{D=c[y>>2]|0;C=D}fk(n,C<<1,0);if((a[n>>0]&1)==0){C=10}else{C=(c[n>>2]&-2)+-1|0}fk(n,C,0);if((a[n>>0]&1)==0){C=h}else{C=c[x>>2]|0}c[q>>2]=C+D}D=w+12|0;F=c[D>>2]|0;E=w+16|0;if((F|0)==(c[E>>2]|0)){F=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{F=c[F>>2]|0}if((Xm(F,r,v,C,q,z,A,m,p,t,s,u)|0)!=0){break}B=c[D>>2]|0;if((B|0)==(c[E>>2]|0)){gc[c[(c[w>>2]|0)+40>>2]&127](w)|0;continue}else{c[D>>2]=B+4;continue}}u=a[m>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[m+4>>2]|0}if(((u|0)!=0?(a[r>>0]|0)!=0:0)?(o=c[t>>2]|0,(o-p|0)<160):0){F=c[s>>2]|0;c[t>>2]=o+4;c[o>>2]=F}g[k>>2]=+Hr(C,c[q>>2]|0,j);dp(m,p,c[t>>2]|0,j);if((w|0)!=0){o=c[w+12>>2]|0;if((o|0)==(c[w+16>>2]|0)){o=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{o=c[o>>2]|0}if((o|0)==-1){c[e>>2]=0;w=0;e=1}else{e=0}}else{w=0;e=1}do{if((B|0)!=0){o=c[B+12>>2]|0;if((o|0)==(c[B+16>>2]|0)){o=gc[c[(c[B>>2]|0)+36>>2]&127](B)|0}else{o=c[o>>2]|0}if((o|0)==-1){c[f>>2]=0;l=57;break}if(e){c[b>>2]=w;ck(n);ck(m);i=d;return}}else{l=57}}while(0);if((l|0)==57?!e:0){c[b>>2]=w;ck(n);ck(m);i=d;return}c[j>>2]=c[j>>2]|2;c[b>>2]=w;ck(n);ck(m);i=d;return}function Mm(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];Nm(a,0,k,j,f,g,h);i=b;return}function Nm(b,d,e,f,g,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;d=i;i=i+352|0;u=d+208|0;z=d+200|0;w=d+196|0;m=d+184|0;n=d+172|0;q=d+168|0;p=d+8|0;t=d+4|0;s=d;r=d+337|0;v=d+336|0;Wm(m,g,u,z,w);c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;fk(n,10,0);if((a[n>>0]&1)==0){C=n+1|0;g=C;x=n+8|0}else{C=n+8|0;g=n+1|0;x=C;C=c[C>>2]|0}c[q>>2]=C;c[t>>2]=p;c[s>>2]=0;a[r>>0]=1;a[v>>0]=69;y=n+4|0;z=c[z>>2]|0;A=c[w>>2]|0;w=c[e>>2]|0;a:while(1){if((w|0)!=0){B=c[w+12>>2]|0;if((B|0)==(c[w+16>>2]|0)){B=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{B=c[B>>2]|0}if((B|0)==-1){c[e>>2]=0;D=1;w=0}else{D=0}}else{D=1;w=0}B=c[f>>2]|0;do{if((B|0)!=0){E=c[B+12>>2]|0;if((E|0)==(c[B+16>>2]|0)){E=gc[c[(c[B>>2]|0)+36>>2]&127](B)|0}else{E=c[E>>2]|0}if(!((E|0)==-1)){if(D){break}else{break a}}else{c[f>>2]=0;l=17;break}}else{l=17}}while(0);if((l|0)==17){l=0;if(D){B=0;break}else{B=0}}D=a[n>>0]|0;F=(D&1)==0;if(F){E=(D&255)>>>1}else{E=c[y>>2]|0}if(((c[q>>2]|0)-C|0)==(E|0)){if(F){C=(D&255)>>>1;D=(D&255)>>>1}else{D=c[y>>2]|0;C=D}fk(n,C<<1,0);if((a[n>>0]&1)==0){C=10}else{C=(c[n>>2]&-2)+-1|0}fk(n,C,0);if((a[n>>0]&1)==0){C=g}else{C=c[x>>2]|0}c[q>>2]=C+D}D=w+12|0;F=c[D>>2]|0;E=w+16|0;if((F|0)==(c[E>>2]|0)){F=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{F=c[F>>2]|0}if((Xm(F,r,v,C,q,z,A,m,p,t,s,u)|0)!=0){break}B=c[D>>2]|0;if((B|0)==(c[E>>2]|0)){gc[c[(c[w>>2]|0)+40>>2]&127](w)|0;continue}else{c[D>>2]=B+4;continue}}u=a[m>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[m+4>>2]|0}if(((u|0)!=0?(a[r>>0]|0)!=0:0)?(o=c[t>>2]|0,(o-p|0)<160):0){F=c[s>>2]|0;c[t>>2]=o+4;c[o>>2]=F}h[k>>3]=+Gr(C,c[q>>2]|0,j);dp(m,p,c[t>>2]|0,j);if((w|0)!=0){o=c[w+12>>2]|0;if((o|0)==(c[w+16>>2]|0)){o=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{o=c[o>>2]|0}if((o|0)==-1){c[e>>2]=0;w=0;e=1}else{e=0}}else{w=0;e=1}do{if((B|0)!=0){o=c[B+12>>2]|0;if((o|0)==(c[B+16>>2]|0)){o=gc[c[(c[B>>2]|0)+36>>2]&127](B)|0}else{o=c[o>>2]|0}if((o|0)==-1){c[f>>2]=0;l=57;break}if(e){c[b>>2]=w;ck(n);ck(m);i=d;return}}else{l=57}}while(0);if((l|0)==57?!e:0){c[b>>2]=w;ck(n);ck(m);i=d;return}c[j>>2]=c[j>>2]|2;c[b>>2]=w;ck(n);ck(m);i=d;return}function Om(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;b=i;i=i+16|0;j=b+12|0;k=b+8|0;m=b+4|0;l=b;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];c[k+0>>2]=c[m+0>>2];c[j+0>>2]=c[l+0>>2];Pm(a,0,k,j,f,g,h);i=b;return}function Pm(b,d,e,f,g,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;d=i;i=i+352|0;u=d+208|0;z=d+200|0;w=d+196|0;m=d+184|0;n=d+172|0;q=d+168|0;p=d+8|0;t=d+4|0;s=d;r=d+337|0;v=d+336|0;Wm(m,g,u,z,w);c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;fk(n,10,0);if((a[n>>0]&1)==0){C=n+1|0;g=C;x=n+8|0}else{C=n+8|0;g=n+1|0;x=C;C=c[C>>2]|0}c[q>>2]=C;c[t>>2]=p;c[s>>2]=0;a[r>>0]=1;a[v>>0]=69;y=n+4|0;z=c[z>>2]|0;A=c[w>>2]|0;w=c[e>>2]|0;a:while(1){if((w|0)!=0){B=c[w+12>>2]|0;if((B|0)==(c[w+16>>2]|0)){B=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{B=c[B>>2]|0}if((B|0)==-1){c[e>>2]=0;D=1;w=0}else{D=0}}else{D=1;w=0}B=c[f>>2]|0;do{if((B|0)!=0){E=c[B+12>>2]|0;if((E|0)==(c[B+16>>2]|0)){E=gc[c[(c[B>>2]|0)+36>>2]&127](B)|0}else{E=c[E>>2]|0}if(!((E|0)==-1)){if(D){break}else{break a}}else{c[f>>2]=0;l=17;break}}else{l=17}}while(0);if((l|0)==17){l=0;if(D){B=0;break}else{B=0}}D=a[n>>0]|0;F=(D&1)==0;if(F){E=(D&255)>>>1}else{E=c[y>>2]|0}if(((c[q>>2]|0)-C|0)==(E|0)){if(F){C=(D&255)>>>1;D=(D&255)>>>1}else{D=c[y>>2]|0;C=D}fk(n,C<<1,0);if((a[n>>0]&1)==0){C=10}else{C=(c[n>>2]&-2)+-1|0}fk(n,C,0);if((a[n>>0]&1)==0){C=g}else{C=c[x>>2]|0}c[q>>2]=C+D}D=w+12|0;F=c[D>>2]|0;E=w+16|0;if((F|0)==(c[E>>2]|0)){F=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{F=c[F>>2]|0}if((Xm(F,r,v,C,q,z,A,m,p,t,s,u)|0)!=0){break}B=c[D>>2]|0;if((B|0)==(c[E>>2]|0)){gc[c[(c[w>>2]|0)+40>>2]&127](w)|0;continue}else{c[D>>2]=B+4;continue}}u=a[m>>0]|0;if((u&1)==0){u=(u&255)>>>1}else{u=c[m+4>>2]|0}if(((u|0)!=0?(a[r>>0]|0)!=0:0)?(o=c[t>>2]|0,(o-p|0)<160):0){F=c[s>>2]|0;c[t>>2]=o+4;c[o>>2]=F}h[k>>3]=+Fr(C,c[q>>2]|0,j);dp(m,p,c[t>>2]|0,j);if((w|0)!=0){o=c[w+12>>2]|0;if((o|0)==(c[w+16>>2]|0)){o=gc[c[(c[w>>2]|0)+36>>2]&127](w)|0}else{o=c[o>>2]|0}if((o|0)==-1){c[e>>2]=0;w=0;e=1}else{e=0}}else{w=0;e=1}do{if((B|0)!=0){o=c[B+12>>2]|0;if((o|0)==(c[B+16>>2]|0)){o=gc[c[(c[B>>2]|0)+36>>2]&127](B)|0}else{o=c[o>>2]|0}if((o|0)==-1){c[f>>2]=0;l=57;break}if(e){c[b>>2]=w;ck(n);ck(m);i=d;return}}else{l=57}}while(0);if((l|0)==57?!e:0){c[b>>2]=w;ck(n);ck(m);i=d;return}c[j>>2]=c[j>>2]|2;c[b>>2]=w;ck(n);ck(m);i=d;return}function Qm(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;d=i;i=i+320|0;n=d;o=d+208|0;m=d+192|0;p=d+188|0;l=d+176|0;x=d+16|0;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Bk(p,g);r=c[p>>2]|0;if(!((c[270710]|0)==-1)){c[n>>2]=1082840;c[n+4>>2]=221;c[n+8>>2]=0;Yj(1082840,n,222)}q=(c[1082844>>2]|0)+-1|0;g=c[r+8>>2]|0;if(!((c[r+12>>2]|0)-g>>2>>>0>q>>>0)){E=Ta(4)|0;us(E);Rb(E|0,1090808,189)}g=c[g+(q<<2)>>2]|0;if((g|0)==0){E=Ta(4)|0;us(E);Rb(E|0,1090808,189)}mc[c[(c[g>>2]|0)+48>>2]&7](g,1081392,1081418|0,o)|0;Dj(c[p>>2]|0)|0;c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;fk(l,10,0);if((a[l>>0]&1)==0){z=l+1|0;t=z;u=l+8|0}else{z=l+8|0;t=l+1|0;u=z;z=c[z>>2]|0}w=l+4|0;s=o+96|0;g=o+100|0;p=x;r=o+104|0;q=o;v=m+4|0;A=c[e>>2]|0;y=0;B=z;a:while(1){if((A|0)!=0){C=c[A+12>>2]|0;if((C|0)==(c[A+16>>2]|0)){C=gc[c[(c[A>>2]|0)+36>>2]&127](A)|0}else{C=c[C>>2]|0}if((C|0)==-1){c[e>>2]=0;C=1;A=0}else{C=0}}else{C=1;A=0}D=c[f>>2]|0;do{if((D|0)!=0){E=c[D+12>>2]|0;if((E|0)==(c[D+16>>2]|0)){D=gc[c[(c[D>>2]|0)+36>>2]&127](D)|0}else{D=c[E>>2]|0}if(!((D|0)==-1)){if(C){break}else{break a}}else{c[f>>2]=0;k=22;break}}else{k=22}}while(0);if((k|0)==22?(k=0,C):0){break}C=a[l>>0]|0;D=(C&1)==0;if(D){E=(C&255)>>>1}else{E=c[w>>2]|0}if((B-z|0)==(E|0)){if(D){z=(C&255)>>>1;B=(C&255)>>>1}else{B=c[w>>2]|0;z=B}fk(l,z<<1,0);if((a[l>>0]&1)==0){z=10}else{z=(c[l>>2]&-2)+-1|0}fk(l,z,0);if((a[l>>0]&1)==0){z=t}else{z=c[u>>2]|0}B=z+B|0}C=c[A+12>>2]|0;if((C|0)==(c[A+16>>2]|0)){C=gc[c[(c[A>>2]|0)+36>>2]&127](A)|0}else{C=c[C>>2]|0}A=(B|0)==(z|0);do{if(A){D=(c[s>>2]|0)==(C|0);if(!D?(c[g>>2]|0)!=(C|0):0){k=43;break}a[B>>0]=D?43:45;B=B+1|0;y=0}else{k=43}}while(0);do{if((k|0)==43){k=0;D=a[m>>0]|0;if((D&1)==0){D=(D&255)>>>1}else{D=c[v>>2]|0}if((D|0)!=0&(C|0)==0){if((x-p|0)>=160){break}c[x>>2]=y;x=x+4|0;y=0;break}else{D=o}while(1){if((c[D>>2]|0)==(C|0)){break}D=D+4|0;if((D|0)==(r|0)){D=r;break}}C=D-q|0;D=C>>2;if((C|0)>92){break a}if((C|0)<88){a[B>>0]=a[1081392+D>>0]|0;B=B+1|0;y=y+1|0;break}if(A){z=B;break a}if((B-z|0)>=3){break a}if((a[B+-1>>0]|0)!=48){break a}a[B>>0]=a[1081392+D>>0]|0;B=B+1|0;y=0}}while(0);A=c[e>>2]|0;C=A+12|0;D=c[C>>2]|0;if((D|0)==(c[A+16>>2]|0)){gc[c[(c[A>>2]|0)+40>>2]&127](A)|0;continue}else{c[C>>2]=D+4;continue}}a[z+3>>0]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}E=c[270684]|0;c[n>>2]=j;if((tm(z,E,1081432,n)|0)!=1){c[h>>2]=4}j=c[e>>2]|0;if((j|0)!=0){n=c[j+12>>2]|0;if((n|0)==(c[j+16>>2]|0)){n=gc[c[(c[j>>2]|0)+36>>2]&127](j)|0}else{n=c[n>>2]|0}if((n|0)==-1){c[e>>2]=0;e=0;j=1}else{e=j;j=0}}else{e=0;j=1}n=c[f>>2]|0;do{if((n|0)!=0){o=c[n+12>>2]|0;if((o|0)==(c[n+16>>2]|0)){n=gc[c[(c[n>>2]|0)+36>>2]&127](n)|0}else{n=c[o>>2]|0}if((n|0)==-1){c[f>>2]=0;k=78;break}if(j){c[b>>2]=e;ck(l);ck(m);i=d;return}}else{k=78}}while(0);if((k|0)==78?!j:0){c[b>>2]=e;ck(l);ck(m);i=d;return}c[h>>2]=c[h>>2]|2;c[b>>2]=e;ck(l);ck(m);i=d;return}function Rm(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0;n=i;p=c[f>>2]|0;o=(p|0)==(e|0);do{if(o){q=(c[m+96>>2]|0)==(b|0);if(!q?(c[m+100>>2]|0)!=(b|0):0){break}c[f>>2]=e+1;a[e>>0]=q?43:45;c[g>>2]=0;q=0;i=n;return q|0}}while(0);q=a[j>>0]|0;if((q&1)==0){j=(q&255)>>>1}else{j=c[j+4>>2]|0}if((j|0)!=0&(b|0)==(h|0)){o=c[l>>2]|0;if((o-k|0)>=160){q=0;i=n;return q|0}q=c[g>>2]|0;c[l>>2]=o+4;c[o>>2]=q;c[g>>2]=0;q=0;i=n;return q|0}l=m+104|0;k=m;while(1){if((c[k>>2]|0)==(b|0)){break}k=k+4|0;if((k|0)==(l|0)){k=l;break}}b=k-m|0;m=b>>2;if((b|0)>92){q=-1;i=n;return q|0}if((d|0)==16){if((b|0)>=88){if(o){q=-1;i=n;return q|0}if((p-e|0)>=3){q=-1;i=n;return q|0}if((a[p+-1>>0]|0)!=48){q=-1;i=n;return q|0}c[g>>2]=0;q=a[1081392+m>>0]|0;c[f>>2]=p+1;a[p>>0]=q;q=0;i=n;return q|0}}else if((d|0)==10|(d|0)==8?(m|0)>=(d|0):0){q=-1;i=n;return q|0}q=a[1081392+m>>0]|0;c[f>>2]=p+1;a[p>>0]=q;c[g>>2]=(c[g>>2]|0)+1;q=0;i=n;return q|0}function Sm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;j=g;h=g+12|0;Bk(h,d);d=c[h>>2]|0;if(!((c[270712]|0)==-1)){c[j>>2]=1082848;c[j+4>>2]=221;c[j+8>>2]=0;Yj(1082848,j,222)}l=(c[1082852>>2]|0)+-1|0;k=c[d+8>>2]|0;if(!((c[d+12>>2]|0)-k>>2>>>0>l>>>0)){l=Ta(4)|0;us(l);Rb(l|0,1090808,189)}d=c[k+(l<<2)>>2]|0;if((d|0)==0){l=Ta(4)|0;us(l);Rb(l|0,1090808,189)}mc[c[(c[d>>2]|0)+32>>2]&7](d,1081392,1081418|0,e)|0;e=c[h>>2]|0;if(!((c[270748]|0)==-1)){c[j>>2]=1082992;c[j+4>>2]=221;c[j+8>>2]=0;Yj(1082992,j,222)}d=(c[1082996>>2]|0)+-1|0;j=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-j>>2>>>0>d>>>0)){l=Ta(4)|0;us(l);Rb(l|0,1090808,189)}j=c[j+(d<<2)>>2]|0;if((j|0)==0){l=Ta(4)|0;us(l);Rb(l|0,1090808,189)}else{a[f>>0]=gc[c[(c[j>>2]|0)+16>>2]&127](j)|0;ec[c[(c[j>>2]|0)+20>>2]&63](b,j);Dj(c[h>>2]|0)|0;i=g;return}}function Tm(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;j=i;i=i+16|0;k=j;h=j+12|0;Bk(h,d);d=c[h>>2]|0;if(!((c[270712]|0)==-1)){c[k>>2]=1082848;c[k+4>>2]=221;c[k+8>>2]=0;Yj(1082848,k,222)}m=(c[1082852>>2]|0)+-1|0;l=c[d+8>>2]|0;if(!((c[d+12>>2]|0)-l>>2>>>0>m>>>0)){m=Ta(4)|0;us(m);Rb(m|0,1090808,189)}d=c[l+(m<<2)>>2]|0;if((d|0)==0){m=Ta(4)|0;us(m);Rb(m|0,1090808,189)}mc[c[(c[d>>2]|0)+32>>2]&7](d,1081392,1081424|0,e)|0;e=c[h>>2]|0;if(!((c[270748]|0)==-1)){c[k>>2]=1082992;c[k+4>>2]=221;c[k+8>>2]=0;Yj(1082992,k,222)}d=(c[1082996>>2]|0)+-1|0;k=c[e+8>>2]|0;if(!((c[e+12>>2]|0)-k>>2>>>0>d>>>0)){m=Ta(4)|0;us(m);Rb(m|0,1090808,189)}k=c[k+(d<<2)>>2]|0;if((k|0)==0){m=Ta(4)|0;us(m);Rb(m|0,1090808,189)}else{a[f>>0]=gc[c[(c[k>>2]|0)+12>>2]&127](k)|0;a[g>>0]=gc[c[(c[k>>2]|0)+16>>2]&127](k)|0;ec[c[(c[k>>2]|0)+20>>2]&63](b,k);Dj(c[h>>2]|0)|0;i=j;return}}function Um(b,d,e,f,g,h,j,k,l,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0;p=i;if(b<<24>>24==h<<24>>24){if((a[d>>0]|0)==0){j=-1;i=p;return j|0}a[d>>0]=0;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=46;g=a[k>>0]|0;if((g&1)==0){g=(g&255)>>>1}else{g=c[k+4>>2]|0}if((g|0)==0){j=0;i=p;return j|0}g=c[m>>2]|0;if((g-l|0)>=160){j=0;i=p;return j|0}j=c[n>>2]|0;c[m>>2]=g+4;c[g>>2]=j;j=0;i=p;return j|0}if(b<<24>>24==j<<24>>24){h=a[k>>0]|0;if((h&1)==0){h=(h&255)>>>1}else{h=c[k+4>>2]|0}if((h|0)!=0){if((a[d>>0]|0)==0){j=-1;i=p;return j|0}g=c[m>>2]|0;if((g-l|0)>=160){j=0;i=p;return j|0}j=c[n>>2]|0;c[m>>2]=g+4;c[g>>2]=j;c[n>>2]=0;j=0;i=p;return j|0}}h=o+32|0;j=o;do{if((a[j>>0]|0)==b<<24>>24){h=j;break}j=j+1|0}while((j|0)!=(h|0));b=h-o|0;if((b|0)>31){j=-1;i=p;return j|0}o=a[1081392+b>>0]|0;if((b|0)==23|(b|0)==22){a[e>>0]=80;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=o;j=0;i=p;return j|0}else if((b|0)==24|(b|0)==25){n=c[g>>2]|0;if((n|0)!=(f|0)?(a[n+-1>>0]&95|0)!=(a[e>>0]&127|0):0){j=-1;i=p;return j|0}c[g>>2]=n+1;a[n>>0]=o;j=0;i=p;return j|0}else{f=o&95;if((f|0)==(a[e>>0]|0)?(a[e>>0]=f|128,(a[d>>0]|0)!=0):0){a[d>>0]=0;e=a[k>>0]|0;if((e&1)==0){k=(e&255)>>>1}else{k=c[k+4>>2]|0}if((k|0)!=0?(q=c[m>>2]|0,(q-l|0)<160):0){j=c[n>>2]|0;c[m>>2]=q+4;c[q>>2]=j}}j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=o;if((b|0)>21){j=0;i=p;return j|0}c[n>>2]=(c[n>>2]|0)+1;j=0;i=p;return j|0}return 0}function Vm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f;g=f+12|0;Bk(g,b);b=c[g>>2]|0;if(!((c[270710]|0)==-1)){c[h>>2]=1082840;c[h+4>>2]=221;c[h+8>>2]=0;Yj(1082840,h,222)}k=(c[1082844>>2]|0)+-1|0;j=c[b+8>>2]|0;if(!((c[b+12>>2]|0)-j>>2>>>0>k>>>0)){k=Ta(4)|0;us(k);Rb(k|0,1090808,189)}b=c[j+(k<<2)>>2]|0;if((b|0)==0){k=Ta(4)|0;us(k);Rb(k|0,1090808,189)}mc[c[(c[b>>2]|0)+48>>2]&7](b,1081392,1081418|0,d)|0;d=c[g>>2]|0;if(!((c[270750]|0)==-1)){c[h>>2]=1083e3;c[h+4>>2]=221;c[h+8>>2]=0;Yj(1083e3,h,222)}b=(c[1083004>>2]|0)+-1|0;h=c[d+8>>2]|0;if(!((c[d+12>>2]|0)-h>>2>>>0>b>>>0)){k=Ta(4)|0;us(k);Rb(k|0,1090808,189)}h=c[h+(b<<2)>>2]|0;if((h|0)==0){k=Ta(4)|0;us(k);Rb(k|0,1090808,189)}else{c[e>>2]=gc[c[(c[h>>2]|0)+16>>2]&127](h)|0;ec[c[(c[h>>2]|0)+20>>2]&63](a,h);Dj(c[g>>2]|0)|0;i=f;return}}function Wm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;j=h;g=h+12|0;Bk(g,b);b=c[g>>2]|0;if(!((c[270710]|0)==-1)){c[j>>2]=1082840;c[j+4>>2]=221;c[j+8>>2]=0;Yj(1082840,j,222)}l=(c[1082844>>2]|0)+-1|0;k=c[b+8>>2]|0;if(!((c[b+12>>2]|0)-k>>2>>>0>l>>>0)){l=Ta(4)|0;us(l);Rb(l|0,1090808,189)}b=c[k+(l<<2)>>2]|0;if((b|0)==0){l=Ta(4)|0;us(l);Rb(l|0,1090808,189)}mc[c[(c[b>>2]|0)+48>>2]&7](b,1081392,1081424|0,d)|0;d=c[g>>2]|0;if(!((c[270750]|0)==-1)){c[j>>2]=1083e3;c[j+4>>2]=221;c[j+8>>2]=0;Yj(1083e3,j,222)}b=(c[1083004>>2]|0)+-1|0;j=c[d+8>>2]|0;if(!((c[d+12>>2]|0)-j>>2>>>0>b>>>0)){l=Ta(4)|0;us(l);Rb(l|0,1090808,189)}j=c[j+(b<<2)>>2]|0;if((j|0)==0){l=Ta(4)|0;us(l);Rb(l|0,1090808,189)}else{c[e>>2]=gc[c[(c[j>>2]|0)+12>>2]&127](j)|0;c[f>>2]=gc[c[(c[j>>2]|0)+16>>2]&127](j)|0;ec[c[(c[j>>2]|0)+20>>2]&63](a,j);Dj(c[g>>2]|0)|0;i=h;return}}function Xm(b,d,e,f,g,h,j,k,l,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0;p=i;if((b|0)==(h|0)){if((a[d>>0]|0)==0){j=-1;i=p;return j|0}a[d>>0]=0;j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=46;g=a[k>>0]|0;if((g&1)==0){g=(g&255)>>>1}else{g=c[k+4>>2]|0}if((g|0)==0){j=0;i=p;return j|0}g=c[m>>2]|0;if((g-l|0)>=160){j=0;i=p;return j|0}j=c[n>>2]|0;c[m>>2]=g+4;c[g>>2]=j;j=0;i=p;return j|0}if((b|0)==(j|0)){h=a[k>>0]|0;if((h&1)==0){h=(h&255)>>>1}else{h=c[k+4>>2]|0}if((h|0)!=0){if((a[d>>0]|0)==0){j=-1;i=p;return j|0}g=c[m>>2]|0;if((g-l|0)>=160){j=0;i=p;return j|0}j=c[n>>2]|0;c[m>>2]=g+4;c[g>>2]=j;c[n>>2]=0;j=0;i=p;return j|0}}h=o+128|0;j=o;do{if((c[j>>2]|0)==(b|0)){h=j;break}j=j+4|0}while((j|0)!=(h|0));b=h-o|0;h=b>>2;if((b|0)>124){j=-1;i=p;return j|0}o=a[1081392+h>>0]|0;if((h|0)==24|(h|0)==25){n=c[g>>2]|0;if((n|0)!=(f|0)?(a[n+-1>>0]&95|0)!=(a[e>>0]&127|0):0){j=-1;i=p;return j|0}c[g>>2]=n+1;a[n>>0]=o;j=0;i=p;return j|0}else if(!((h|0)==23|(h|0)==22)){f=o&95;if((f|0)==(a[e>>0]|0)?(a[e>>0]=f|128,(a[d>>0]|0)!=0):0){a[d>>0]=0;e=a[k>>0]|0;if((e&1)==0){k=(e&255)>>>1}else{k=c[k+4>>2]|0}if((k|0)!=0?(q=c[m>>2]|0,(q-l|0)<160):0){j=c[n>>2]|0;c[m>>2]=q+4;c[q>>2]=j}}}else{a[e>>0]=80}j=c[g>>2]|0;c[g>>2]=j+1;a[j>>0]=o;if((b|0)>84){j=0;i=p;return j|0}c[n>>2]=(c[n>>2]|0)+1;j=0;i=p;return j|0}function Ym(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Zm(a){a=a|0;return}function _m(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;k=i;i=i+32|0;m=k;n=k+28|0;l=k+24|0;j=k+12|0;if((c[f+4>>2]&1|0)==0){l=c[(c[d>>2]|0)+24>>2]|0;c[n>>2]=c[e>>2];o=h&1;c[m+0>>2]=c[n+0>>2];oc[l&31](b,d,m,f,g,o);i=k;return}Bk(l,f);d=c[l>>2]|0;if(!((c[270748]|0)==-1)){c[m>>2]=1082992;c[m+4>>2]=221;c[m+8>>2]=0;Yj(1082992,m,222)}m=(c[1082996>>2]|0)+-1|0;g=c[d+8>>2]|0;if(!((c[d+12>>2]|0)-g>>2>>>0>m>>>0)){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}m=c[g+(m<<2)>>2]|0;if((m|0)==0){o=Ta(4)|0;us(o);Rb(o|0,1090808,189)}Dj(c[l>>2]|0)|0;l=c[m>>2]|0;if(h){ec[c[l+24>>2]&63](j,m)}else{ec[c[l+28>>2]&63](j,m)}n=a[j>>0]|0;if((n&1)==0){l=j+1|0;d=l;m=j+8|0}else{m=j+8|0;d=c[m>>2]|0;l=j+1|0}h=j+4|0;while(1){if((n&1)==0){g=l;n=(n&255)>>>1}else{g=c[m>>2]|0;n=c[h>>2]|0}if((d|0)==(g+n|0)){break}f=a[d>>0]|0;n=c[e>>2]|0;do{if((n|0)!=0){g=n+24|0;o=c[g>>2]|0;if((o|0)!=(c[n+28>>2]|0)){c[g>>2]=o+1;a[o>>0]=f;break}if((pc[c[(c[n>>2]|0)+52>>2]&63](n,f&255)|0)==-1){c[e>>2]=0}}}while(0);n=a[j>>0]|0;d=d+1|0}c[b>>2]=c[e>>2];ck(j);i=k;return}function $m(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,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=i;i=i+64|0;q=d;s=d+56|0;p=d+44|0;o=d+20|0;l=d+16|0;m=d+12|0;k=d+8|0;n=d+4|0;a[s+0>>0]=a[1081640>>0]|0;a[s+1>>0]=a[1081641>>0]|0;a[s+2>>0]=a[1081642>>0]|0;a[s+3>>0]=a[1081643>>0]|0;a[s+4>>0]=a[1081644>>0]|0;a[s+5>>0]=a[1081645>>0]|0;u=s+1|0;r=f+4|0;t=c[r>>2]|0;if((t&2048|0)!=0){a[u>>0]=43;u=s+2|0}if((t&512|0)!=0){a[u>>0]=35;u=u+1|0}a[u>>0]=108;v=u+1|0;u=t&74;do{if((u|0)==8){if((t&16384|0)==0){a[v>>0]=120;break}else{a[v>>0]=88;break}}else if((u|0)==64){a[v>>0]=111}else{a[v>>0]=100}}while(0);if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}v=c[270684]|0;c[q>>2]=h;s=an(p,12,v,s,q)|0;h=p+s|0;r=c[r>>2]&176;do{if((r|0)==32){r=h}else if((r|0)==16){r=a[p>>0]|0;if(r<<24>>24==43|r<<24>>24==45){r=p+1|0;break}if((s|0)>1&r<<24>>24==48?(v=a[p+1>>0]|0,v<<24>>24==88|v<<24>>24==120):0){r=p+2|0}else{j=20}}else{j=20}}while(0);if((j|0)==20){r=p}Bk(k,f);bn(p,r,h,o,l,m,k);Dj(c[k>>2]|0)|0;c[n>>2]=c[e>>2];u=c[l>>2]|0;v=c[m>>2]|0;c[q+0>>2]=c[n+0>>2];Ic(b,q,o,u,v,f,g);i=d;return}function an(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;i=i+16|0;h=g;c[h>>2]=f;d=cb(d|0)|0;e=yt(a,b,e,h)|0;if((d|0)==0){i=g;return e|0}cb(d|0)|0;i=g;return e|0}function bn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=i;i=i+32|0;p=l;k=l+12|0;n=c[j>>2]|0;if(!((c[270712]|0)==-1)){c[p>>2]=1082848;c[p+4>>2]=221;c[p+8>>2]=0;Yj(1082848,p,222)}r=(c[1082852>>2]|0)+-1|0;s=c[n+8>>2]|0;if(!((c[n+12>>2]|0)-s>>2>>>0>r>>>0)){v=Ta(4)|0;us(v);Rb(v|0,1090808,189)}n=c[s+(r<<2)>>2]|0;if((n|0)==0){v=Ta(4)|0;us(v);Rb(v|0,1090808,189)}j=c[j>>2]|0;if(!((c[270748]|0)==-1)){c[p>>2]=1082992;c[p+4>>2]=221;c[p+8>>2]=0;Yj(1082992,p,222)}p=(c[1082996>>2]|0)+-1|0;r=c[j+8>>2]|0;if(!((c[j+12>>2]|0)-r>>2>>>0>p>>>0)){v=Ta(4)|0;us(v);Rb(v|0,1090808,189)}j=c[r+(p<<2)>>2]|0;if((j|0)==0){v=Ta(4)|0;us(v);Rb(v|0,1090808,189)}ec[c[(c[j>>2]|0)+20>>2]&63](k,j);p=a[k>>0]|0;if((p&1)==0){p=(p&255)>>>1}else{p=c[k+4>>2]|0}if((p|0)!=0){c[h>>2]=f;p=a[b>>0]|0;if(p<<24>>24==43|p<<24>>24==45){v=pc[c[(c[n>>2]|0)+28>>2]&63](n,p)|0;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=v;p=b+1|0}else{p=b}if(((e-p|0)>1?(a[p>>0]|0)==48:0)?(q=p+1|0,v=a[q>>0]|0,v<<24>>24==88|v<<24>>24==120):0){v=pc[c[(c[n>>2]|0)+28>>2]&63](n,48)|0;u=c[h>>2]|0;c[h>>2]=u+1;a[u>>0]=v;u=pc[c[(c[n>>2]|0)+28>>2]&63](n,a[q>>0]|0)|0;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=u;p=p+2|0}if((p|0)!=(e|0)?(o=e+-1|0,o>>>0>p>>>0):0){q=p;do{v=a[q>>0]|0;a[q>>0]=a[o>>0]|0;a[o>>0]=v;q=q+1|0;o=o+-1|0}while(q>>>0<o>>>0)}q=gc[c[(c[j>>2]|0)+16>>2]&127](j)|0;if(p>>>0<e>>>0){o=k+1|0;s=k+4|0;r=k+8|0;u=0;t=0;j=p;while(1){v=(a[k>>0]&1)==0;if((a[(v?o:c[r>>2]|0)+t>>0]|0)!=0?(u|0)==(a[(v?o:c[r>>2]|0)+t>>0]|0):0){u=c[h>>2]|0;c[h>>2]=u+1;a[u>>0]=q;u=a[k>>0]|0;if((u&1)==0){v=(u&255)>>>1}else{v=c[s>>2]|0}u=0;t=(t>>>0<(v+-1|0)>>>0&1)+t|0}w=pc[c[(c[n>>2]|0)+28>>2]&63](n,a[j>>0]|0)|0;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=w;j=j+1|0;if(!(j>>>0<e>>>0)){break}else{u=u+1|0}}}o=f+(p-b)|0;n=c[h>>2]|0;if((o|0)!=(n|0)?(m=n+-1|0,m>>>0>o>>>0):0){do{w=a[o>>0]|0;a[o>>0]=a[m>>0]|0;a[m>>0]=w;o=o+1|0;m=m+-1|0}while(o>>>0<m>>>0)}}else{mc[c[(c[n>>2]|0)+32>>2]&7](n,b,e,f)|0;c[h>>2]=f+(e-b)}if((d|0)==(e|0)){w=c[h>>2]|0;c[g>>2]=w;ck(k);i=l;return}else{w=f+(d-b)|0;c[g>>2]=w;ck(k);i=l;return}}function cn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+96|0;l=m+8|0;t=m;q=m+74|0;r=m+32|0;p=m+28|0;d=m+24|0;o=m+20|0;n=m+16|0;w=t;c[w>>2]=37;c[w+4>>2]=0;w=t+1|0;s=f+4|0;u=c[s>>2]|0;if((u&2048|0)!=0){a[w>>0]=43;w=t+2|0}if((u&512|0)!=0){a[w>>0]=35;w=w+1|0}v=w+2|0;a[w>>0]=108;a[w+1>>0]=108;w=u&74;do{if((w|0)==64){a[v>>0]=111}else if((w|0)==8){if((u&16384|0)==0){a[v>>0]=120;break}else{a[v>>0]=88;break}}else{a[v>>0]=100}}while(0);if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}w=c[270684]|0;v=l;c[v>>2]=h;c[v+4>>2]=j;j=an(q,22,w,t,l)|0;h=q+j|0;s=c[s>>2]&176;do{if((s|0)==16){s=a[q>>0]|0;if(s<<24>>24==43|s<<24>>24==45){s=q+1|0;break}if((j|0)>1&s<<24>>24==48?(w=a[q+1>>0]|0,w<<24>>24==88|w<<24>>24==120):0){s=q+2|0}else{k=20}}else if((s|0)==32){s=h}else{k=20}}while(0);if((k|0)==20){s=q}Bk(o,f);bn(q,s,h,r,p,d,o);Dj(c[o>>2]|0)|0;c[n>>2]=c[e>>2];v=c[p>>2]|0;w=c[d>>2]|0;c[l+0>>2]=c[n+0>>2];Ic(b,l,r,v,w,f,g);i=m;return}function dn(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,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=i;i=i+64|0;p=d;s=d+56|0;q=d+44|0;o=d+20|0;l=d+16|0;m=d+12|0;k=d+8|0;n=d+4|0;a[s+0>>0]=a[1081640>>0]|0;a[s+1>>0]=a[1081641>>0]|0;a[s+2>>0]=a[1081642>>0]|0;a[s+3>>0]=a[1081643>>0]|0;a[s+4>>0]=a[1081644>>0]|0;a[s+5>>0]=a[1081645>>0]|0;u=s+1|0;r=f+4|0;t=c[r>>2]|0;if((t&2048|0)!=0){a[u>>0]=43;u=s+2|0}if((t&512|0)!=0){a[u>>0]=35;u=u+1|0}a[u>>0]=108;v=u+1|0;u=t&74;do{if((u|0)==8){if((t&16384|0)==0){a[v>>0]=120;break}else{a[v>>0]=88;break}}else if((u|0)==64){a[v>>0]=111}else{a[v>>0]=117}}while(0);if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}v=c[270684]|0;c[p>>2]=h;s=an(q,12,v,s,p)|0;h=q+s|0;r=c[r>>2]&176;do{if((r|0)==16){r=a[q>>0]|0;if(r<<24>>24==43|r<<24>>24==45){r=q+1|0;break}if((s|0)>1&r<<24>>24==48?(v=a[q+1>>0]|0,v<<24>>24==88|v<<24>>24==120):0){r=q+2|0}else{j=20}}else if((r|0)==32){r=h}else{j=20}}while(0);if((j|0)==20){r=q}Bk(k,f);bn(q,r,h,o,l,m,k);Dj(c[k>>2]|0)|0;c[n>>2]=c[e>>2];u=c[l>>2]|0;v=c[m>>2]|0;c[p+0>>2]=c[n+0>>2];Ic(b,p,o,u,v,f,g);i=d;return}function en(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;p=i;i=i+112|0;m=p+8|0;t=p;q=p+75|0;l=p+32|0;r=p+28|0;n=p+24|0;d=p+20|0;o=p+16|0;w=t;c[w>>2]=37;c[w+4>>2]=0;w=t+1|0;s=f+4|0;u=c[s>>2]|0;if((u&2048|0)!=0){a[w>>0]=43;w=t+2|0}if((u&512|0)!=0){a[w>>0]=35;w=w+1|0}v=w+2|0;a[w>>0]=108;a[w+1>>0]=108;w=u&74;do{if((w|0)==8){if((u&16384|0)==0){a[v>>0]=120;break}else{a[v>>0]=88;break}}else if((w|0)==64){a[v>>0]=111}else{a[v>>0]=117}}while(0);if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}w=c[270684]|0;v=m;c[v>>2]=h;c[v+4>>2]=j;h=an(q,23,w,t,m)|0;j=q+h|0;s=c[s>>2]&176;
+do{if((s|0)==16){s=a[q>>0]|0;if(s<<24>>24==43|s<<24>>24==45){s=q+1|0;break}if((h|0)>1&s<<24>>24==48?(w=a[q+1>>0]|0,w<<24>>24==88|w<<24>>24==120):0){s=q+2|0}else{k=20}}else if((s|0)==32){s=j}else{k=20}}while(0);if((k|0)==20){s=q}Bk(d,f);bn(q,s,j,l,r,n,d);Dj(c[d>>2]|0)|0;c[o>>2]=c[e>>2];v=c[r>>2]|0;w=c[n>>2]|0;c[m+0>>2]=c[o+0>>2];Ic(b,m,l,v,w,f,g);i=p;return}function fn(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;v=i;i=i+144|0;d=v+8|0;C=v;y=v+102|0;B=v+40|0;z=v+44|0;r=v+36|0;x=v+32|0;t=v+28|0;u=v+24|0;w=v+20|0;D=C;c[D>>2]=37;c[D+4>>2]=0;D=C+1|0;A=f+4|0;F=c[A>>2]|0;if((F&2048|0)!=0){a[D>>0]=43;D=C+2|0}if((F&1024|0)!=0){a[D>>0]=35;D=D+1|0}E=F&260;F=F>>>14;do{if((E|0)==260){if((F&1|0)==0){a[D>>0]=97;D=0;break}else{a[D>>0]=65;D=0;break}}else{a[D>>0]=46;G=D+2|0;a[D+1>>0]=42;if((E|0)==256){if((F&1|0)==0){a[G>>0]=101;D=1;break}else{a[G>>0]=69;D=1;break}}else if((E|0)==4){if((F&1|0)==0){a[G>>0]=102;D=1;break}else{a[G>>0]=70;D=1;break}}else{if((F&1|0)==0){a[G>>0]=103;D=1;break}else{a[G>>0]=71;D=1;break}}}}while(0);c[B>>2]=y;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}E=c[270684]|0;if(D){c[d>>2]=c[f+8>>2];G=d+4|0;h[k>>3]=j;c[G>>2]=c[k>>2];c[G+4>>2]=c[k+4>>2];E=an(y,30,E,C,d)|0}else{h[k>>3]=j;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];E=an(y,30,E,C,d)|0}if((E|0)>29){E=(a[1082744]|0)==0;if(D){if(E?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}G=c[270684]|0;c[d>>2]=c[f+8>>2];F=d+4|0;h[k>>3]=j;c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];C=gn(B,G,C,d)|0}else{if(E?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}G=c[270684]|0;c[d>>2]=c[f+8>>2];F=d+4|0;h[k>>3]=j;c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];C=gn(B,G,C,d)|0}B=c[B>>2]|0;if((B|0)==0){bt()}else{l=B;m=B;s=C}}else{l=c[B>>2]|0;m=0;s=E}B=l+s|0;A=c[A>>2]&176;do{if((A|0)==32){A=B}else if((A|0)==16){A=a[l>>0]|0;if(A<<24>>24==43|A<<24>>24==45){A=l+1|0;break}if((s|0)>1&A<<24>>24==48?(G=a[l+1>>0]|0,G<<24>>24==88|G<<24>>24==120):0){A=l+2|0}else{q=44}}else{q=44}}while(0);if((q|0)==44){A=l}if((l|0)!=(y|0)){q=Ps(s<<1)|0;if((q|0)==0){bt()}else{p=l;n=q;o=q}}else{p=y;n=0;o=z}Bk(t,f);hn(p,A,B,o,r,x,t);Dj(c[t>>2]|0)|0;c[w>>2]=c[e>>2];F=c[r>>2]|0;G=c[x>>2]|0;c[d+0>>2]=c[w+0>>2];Ic(u,d,o,F,G,f,g);G=c[u>>2]|0;c[e>>2]=G;c[b>>2]=G;if((n|0)!=0){Qs(n)}if((m|0)==0){i=v;return}Qs(m);i=v;return}function gn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;b=cb(b|0)|0;d=ls(a,d,g)|0;if((b|0)==0){i=f;return d|0}cb(b|0)|0;i=f;return d|0}function hn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;k=i;i=i+32|0;o=k;l=k+12|0;m=c[j>>2]|0;if(!((c[270712]|0)==-1)){c[o>>2]=1082848;c[o+4>>2]=221;c[o+8>>2]=0;Yj(1082848,o,222)}t=(c[1082852>>2]|0)+-1|0;r=c[m+8>>2]|0;if(!((c[m+12>>2]|0)-r>>2>>>0>t>>>0)){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}m=c[r+(t<<2)>>2]|0;if((m|0)==0){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}j=c[j>>2]|0;if(!((c[270748]|0)==-1)){c[o>>2]=1082992;c[o+4>>2]=221;c[o+8>>2]=0;Yj(1082992,o,222)}o=(c[1082996>>2]|0)+-1|0;r=c[j+8>>2]|0;if(!((c[j+12>>2]|0)-r>>2>>>0>o>>>0)){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}o=c[r+(o<<2)>>2]|0;if((o|0)==0){y=Ta(4)|0;us(y);Rb(y|0,1090808,189)}ec[c[(c[o>>2]|0)+20>>2]&63](l,o);c[h>>2]=f;j=a[b>>0]|0;if(j<<24>>24==43|j<<24>>24==45){y=pc[c[(c[m>>2]|0)+28>>2]&63](m,j)|0;t=c[h>>2]|0;c[h>>2]=t+1;a[t>>0]=y;t=b+1|0}else{t=b}j=e;a:do{if(((j-t|0)>1?(a[t>>0]|0)==48:0)?(q=t+1|0,y=a[q>>0]|0,y<<24>>24==88|y<<24>>24==120):0){y=pc[c[(c[m>>2]|0)+28>>2]&63](m,48)|0;x=c[h>>2]|0;c[h>>2]=x+1;a[x>>0]=y;t=t+2|0;x=pc[c[(c[m>>2]|0)+28>>2]&63](m,a[q>>0]|0)|0;y=c[h>>2]|0;c[h>>2]=y+1;a[y>>0]=x;if(t>>>0<e>>>0){r=t;while(1){q=a[r>>0]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}u=r+1|0;if((as(q<<24>>24,c[270684]|0)|0)==0){q=t;break a}if(u>>>0<e>>>0){r=u}else{q=t;r=u;break}}}else{q=t;r=t}}else{s=14}}while(0);b:do{if((s|0)==14){if(t>>>0<e>>>0){r=t;while(1){q=a[r>>0]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}s=r+1|0;if(($r(q<<24>>24,c[270684]|0)|0)==0){q=t;break b}if(s>>>0<e>>>0){r=s}else{q=t;r=s;break}}}else{q=t;r=t}}}while(0);s=a[l>>0]|0;if((s&1)==0){s=(s&255)>>>1}else{s=c[l+4>>2]|0}if((s|0)!=0){if((q|0)!=(r|0)?(p=r+-1|0,p>>>0>q>>>0):0){s=q;do{y=a[s>>0]|0;a[s>>0]=a[p>>0]|0;a[p>>0]=y;s=s+1|0;p=p+-1|0}while(s>>>0<p>>>0)}s=gc[c[(c[o>>2]|0)+16>>2]&127](o)|0;if(q>>>0<r>>>0){v=l+1|0;t=l+4|0;p=l+8|0;x=0;w=0;u=q;while(1){y=(a[l>>0]&1)==0;if((a[(y?v:c[p>>2]|0)+w>>0]|0)>0?(x|0)==(a[(y?v:c[p>>2]|0)+w>>0]|0):0){x=c[h>>2]|0;c[h>>2]=x+1;a[x>>0]=s;x=a[l>>0]|0;if((x&1)==0){y=(x&255)>>>1}else{y=c[t>>2]|0}x=0;w=(w>>>0<(y+-1|0)>>>0&1)+w|0}z=pc[c[(c[m>>2]|0)+28>>2]&63](m,a[u>>0]|0)|0;y=c[h>>2]|0;c[h>>2]=y+1;a[y>>0]=z;u=u+1|0;if(!(u>>>0<r>>>0)){break}else{x=x+1|0}}}q=f+(q-b)|0;p=c[h>>2]|0;if((q|0)!=(p|0)?(n=p+-1|0,n>>>0>q>>>0):0){do{z=a[q>>0]|0;a[q>>0]=a[n>>0]|0;a[n>>0]=z;q=q+1|0;n=n+-1|0}while(q>>>0<n>>>0)}}else{mc[c[(c[m>>2]|0)+32>>2]&7](m,q,r,c[h>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+(r-q)}c:do{if(r>>>0<e>>>0){while(1){n=a[r>>0]|0;if(n<<24>>24==46){break}y=pc[c[(c[m>>2]|0)+28>>2]&63](m,n)|0;z=c[h>>2]|0;c[h>>2]=z+1;a[z>>0]=y;r=r+1|0;if(!(r>>>0<e>>>0)){break c}}y=gc[c[(c[o>>2]|0)+12>>2]&127](o)|0;z=c[h>>2]|0;c[h>>2]=z+1;a[z>>0]=y;r=r+1|0}}while(0);mc[c[(c[m>>2]|0)+32>>2]&7](m,r,e,c[h>>2]|0)|0;m=(c[h>>2]|0)+(j-r)|0;c[h>>2]=m;if((d|0)==(e|0)){z=m;c[g>>2]=z;ck(l);i=k;return}z=f+(d-b)|0;c[g>>2]=z;ck(l);i=k;return}function jn(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;s=i;i=i+144|0;u=s+8|0;C=s;y=s+102|0;B=s+40|0;z=s+44|0;x=s+36|0;q=s+32|0;d=s+28|0;v=s+24|0;t=s+20|0;F=C;c[F>>2]=37;c[F+4>>2]=0;F=C+1|0;A=f+4|0;D=c[A>>2]|0;if((D&2048|0)!=0){a[F>>0]=43;F=C+2|0}if((D&1024|0)!=0){a[F>>0]=35;F=F+1|0}E=D&260;D=D>>>14;do{if((E|0)==260){a[F>>0]=76;E=F+1|0;if((D&1|0)==0){a[E>>0]=97;D=0;break}else{a[E>>0]=65;D=0;break}}else{a[F>>0]=46;a[F+1>>0]=42;a[F+2>>0]=76;F=F+3|0;if((E|0)==256){if((D&1|0)==0){a[F>>0]=101;D=1;break}else{a[F>>0]=69;D=1;break}}else if((E|0)==4){if((D&1|0)==0){a[F>>0]=102;D=1;break}else{a[F>>0]=70;D=1;break}}else{if((D&1|0)==0){a[F>>0]=103;D=1;break}else{a[F>>0]=71;D=1;break}}}}while(0);c[B>>2]=y;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}E=c[270684]|0;if(D){c[u>>2]=c[f+8>>2];F=u+4|0;h[k>>3]=j;c[F>>2]=c[k>>2];c[F+4>>2]=c[k+4>>2];E=an(y,30,E,C,u)|0}else{h[k>>3]=j;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];E=an(y,30,E,C,u)|0}if((E|0)>29){E=(a[1082744]|0)==0;if(D){if(E?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}F=c[270684]|0;c[u>>2]=c[f+8>>2];E=u+4|0;h[k>>3]=j;c[E>>2]=c[k>>2];c[E+4>>2]=c[k+4>>2];C=gn(B,F,C,u)|0}else{if(E?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}F=c[270684]|0;h[k>>3]=j;c[u>>2]=c[k>>2];c[u+4>>2]=c[k+4>>2];C=gn(B,F,C,u)|0}B=c[B>>2]|0;if((B|0)==0){bt()}else{p=B;m=B;w=C}}else{p=c[B>>2]|0;m=0;w=E}B=p+w|0;A=c[A>>2]&176;do{if((A|0)==16){A=a[p>>0]|0;if(A<<24>>24==43|A<<24>>24==45){A=p+1|0;break}if((w|0)>1&A<<24>>24==48?(F=a[p+1>>0]|0,F<<24>>24==88|F<<24>>24==120):0){A=p+2|0}else{r=44}}else if((A|0)==32){A=B}else{r=44}}while(0);if((r|0)==44){A=p}if((p|0)!=(y|0)){r=Ps(w<<1)|0;if((r|0)==0){bt()}else{o=p;n=r;l=r}}else{o=y;n=0;l=z}Bk(d,f);hn(o,A,B,l,x,q,d);Dj(c[d>>2]|0)|0;c[t>>2]=c[e>>2];E=c[x>>2]|0;F=c[q>>2]|0;c[u+0>>2]=c[t+0>>2];Ic(v,u,l,E,F,f,g);F=c[v>>2]|0;c[e>>2]=F;c[b>>2]=F;if((n|0)!=0){Qs(n)}if((m|0)==0){i=s;return}Qs(m);i=s;return}function kn(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;j=i;i=i+96|0;k=j;o=j+80|0;l=j+60|0;m=j+20|0;n=j+16|0;d=j+12|0;a[o+0>>0]=a[1081648>>0]|0;a[o+1>>0]=a[1081649>>0]|0;a[o+2>>0]=a[1081650>>0]|0;a[o+3>>0]=a[1081651>>0]|0;a[o+4>>0]=a[1081652>>0]|0;a[o+5>>0]=a[1081653>>0]|0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}q=c[270684]|0;c[k>>2]=h;o=an(l,20,q,o,k)|0;h=l+o|0;q=c[f+4>>2]&176;do{if((q|0)==16){q=a[l>>0]|0;if(q<<24>>24==43|q<<24>>24==45){q=l+1|0;break}if((o|0)>1&q<<24>>24==48?(s=a[l+1>>0]|0,s<<24>>24==88|s<<24>>24==120):0){q=l+2|0}else{p=10}}else if((q|0)==32){q=h}else{p=10}}while(0);if((p|0)==10){q=l}Bk(n,f);r=c[n>>2]|0;if(!((c[270712]|0)==-1)){c[k>>2]=1082848;c[k+4>>2]=221;c[k+8>>2]=0;Yj(1082848,k,222)}p=(c[1082852>>2]|0)+-1|0;s=c[r+8>>2]|0;if(!((c[r+12>>2]|0)-s>>2>>>0>p>>>0)){s=Ta(4)|0;us(s);Rb(s|0,1090808,189)}p=c[s+(p<<2)>>2]|0;if((p|0)==0){s=Ta(4)|0;us(s);Rb(s|0,1090808,189)}Dj(c[n>>2]|0)|0;mc[c[(c[p>>2]|0)+32>>2]&7](p,l,h,m)|0;n=m+o|0;if((q|0)==(h|0)){s=n;r=c[e>>2]|0;c[d>>2]=r;c[k+0>>2]=c[d+0>>2];Ic(b,k,m,s,n,f,g);i=j;return}s=m+(q-l)|0;r=c[e>>2]|0;c[d>>2]=r;c[k+0>>2]=c[d+0>>2];Ic(b,k,m,s,n,f,g);i=j;return}function ln(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function mn(a){a=a|0;return}function nn(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;k=i;i=i+32|0;m=k;n=k+28|0;l=k+24|0;j=k+12|0;if((c[f+4>>2]&1|0)==0){j=c[(c[d>>2]|0)+24>>2]|0;c[n>>2]=c[e>>2];l=h&1;c[m+0>>2]=c[n+0>>2];oc[j&31](b,d,m,f,g,l);i=k;return}Bk(l,f);g=c[l>>2]|0;if(!((c[270750]|0)==-1)){c[m>>2]=1083e3;c[m+4>>2]=221;c[m+8>>2]=0;Yj(1083e3,m,222)}d=(c[1083004>>2]|0)+-1|0;m=c[g+8>>2]|0;if(!((c[g+12>>2]|0)-m>>2>>>0>d>>>0)){f=Ta(4)|0;us(f);Rb(f|0,1090808,189)}m=c[m+(d<<2)>>2]|0;if((m|0)==0){f=Ta(4)|0;us(f);Rb(f|0,1090808,189)}Dj(c[l>>2]|0)|0;l=c[m>>2]|0;if(h){ec[c[l+24>>2]&63](j,m)}else{ec[c[l+28>>2]&63](j,m)}g=a[j>>0]|0;if((g&1)==0){l=j+4|0;m=l;h=j+8|0}else{h=j+8|0;m=c[h>>2]|0;l=j+4|0}while(1){if((g&1)==0){d=l;g=(g&255)>>>1}else{d=c[h>>2]|0;g=c[l>>2]|0}if((m|0)==(d+(g<<2)|0)){break}f=c[m>>2]|0;g=c[e>>2]|0;if((g|0)!=0){n=g+24|0;d=c[n>>2]|0;if((d|0)==(c[g+28>>2]|0)){f=pc[c[(c[g>>2]|0)+52>>2]&63](g,f)|0}else{c[n>>2]=d+4;c[d>>2]=f}if((f|0)==-1){c[e>>2]=0}}g=a[j>>0]|0;m=m+4|0}c[b>>2]=c[e>>2];qk(j);i=k;return}function on(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=i;i=i+128|0;l=m;s=m+116|0;d=m+104|0;o=m+20|0;q=m+16|0;k=m+12|0;p=m+8|0;n=m+4|0;a[s+0>>0]=a[1081640>>0]|0;a[s+1>>0]=a[1081641>>0]|0;a[s+2>>0]=a[1081642>>0]|0;a[s+3>>0]=a[1081643>>0]|0;a[s+4>>0]=a[1081644>>0]|0;a[s+5>>0]=a[1081645>>0]|0;u=s+1|0;r=f+4|0;t=c[r>>2]|0;if((t&2048|0)!=0){a[u>>0]=43;u=s+2|0}if((t&512|0)!=0){a[u>>0]=35;u=u+1|0}a[u>>0]=108;u=u+1|0;v=t&74;do{if((v|0)==64){a[u>>0]=111}else if((v|0)==8){if((t&16384|0)==0){a[u>>0]=120;break}else{a[u>>0]=88;break}}else{a[u>>0]=100}}while(0);if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}v=c[270684]|0;c[l>>2]=h;s=an(d,12,v,s,l)|0;h=d+s|0;r=c[r>>2]&176;do{if((r|0)==32){r=h}else if((r|0)==16){r=a[d>>0]|0;if(r<<24>>24==43|r<<24>>24==45){r=d+1|0;break}if((s|0)>1&r<<24>>24==48?(v=a[d+1>>0]|0,v<<24>>24==88|v<<24>>24==120):0){r=d+2|0}else{j=20}}else{j=20}}while(0);if((j|0)==20){r=d}Bk(p,f);pn(d,r,h,o,q,k,p);Dj(c[p>>2]|0)|0;c[n>>2]=c[e>>2];u=c[q>>2]|0;v=c[k>>2]|0;c[l+0>>2]=c[n+0>>2];qn(b,l,o,u,v,f,g);i=m;return}function pn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;k=i;i=i+32|0;o=k;l=k+12|0;n=c[j>>2]|0;if(!((c[270710]|0)==-1)){c[o>>2]=1082840;c[o+4>>2]=221;c[o+8>>2]=0;Yj(1082840,o,222)}s=(c[1082844>>2]|0)+-1|0;r=c[n+8>>2]|0;if(!((c[n+12>>2]|0)-r>>2>>>0>s>>>0)){v=Ta(4)|0;us(v);Rb(v|0,1090808,189)}n=c[r+(s<<2)>>2]|0;if((n|0)==0){v=Ta(4)|0;us(v);Rb(v|0,1090808,189)}j=c[j>>2]|0;if(!((c[270750]|0)==-1)){c[o>>2]=1083e3;c[o+4>>2]=221;c[o+8>>2]=0;Yj(1083e3,o,222)}o=(c[1083004>>2]|0)+-1|0;r=c[j+8>>2]|0;if(!((c[j+12>>2]|0)-r>>2>>>0>o>>>0)){v=Ta(4)|0;us(v);Rb(v|0,1090808,189)}j=c[r+(o<<2)>>2]|0;if((j|0)==0){v=Ta(4)|0;us(v);Rb(v|0,1090808,189)}ec[c[(c[j>>2]|0)+20>>2]&63](l,j);o=a[l>>0]|0;if((o&1)==0){o=(o&255)>>>1}else{o=c[l+4>>2]|0}if((o|0)!=0){c[h>>2]=f;o=a[b>>0]|0;if(o<<24>>24==43|o<<24>>24==45){v=pc[c[(c[n>>2]|0)+44>>2]&63](n,o)|0;o=c[h>>2]|0;c[h>>2]=o+4;c[o>>2]=v;o=b+1|0}else{o=b}if(((e-o|0)>1?(a[o>>0]|0)==48:0)?(q=o+1|0,v=a[q>>0]|0,v<<24>>24==88|v<<24>>24==120):0){v=pc[c[(c[n>>2]|0)+44>>2]&63](n,48)|0;u=c[h>>2]|0;c[h>>2]=u+4;c[u>>2]=v;u=pc[c[(c[n>>2]|0)+44>>2]&63](n,a[q>>0]|0)|0;v=c[h>>2]|0;c[h>>2]=v+4;c[v>>2]=u;o=o+2|0}if((o|0)!=(e|0)?(p=e+-1|0,p>>>0>o>>>0):0){q=o;do{v=a[q>>0]|0;a[q>>0]=a[p>>0]|0;a[p>>0]=v;q=q+1|0;p=p+-1|0}while(q>>>0<p>>>0)}r=gc[c[(c[j>>2]|0)+16>>2]&127](j)|0;if(o>>>0<e>>>0){j=l+1|0;s=l+4|0;q=l+8|0;u=0;t=0;p=o;while(1){v=(a[l>>0]&1)==0;if((a[(v?j:c[q>>2]|0)+t>>0]|0)!=0?(u|0)==(a[(v?j:c[q>>2]|0)+t>>0]|0):0){u=c[h>>2]|0;c[h>>2]=u+4;c[u>>2]=r;u=a[l>>0]|0;if((u&1)==0){v=(u&255)>>>1}else{v=c[s>>2]|0}u=0;t=(t>>>0<(v+-1|0)>>>0&1)+t|0}x=pc[c[(c[n>>2]|0)+44>>2]&63](n,a[p>>0]|0)|0;w=c[h>>2]|0;v=w+4|0;c[h>>2]=v;c[w>>2]=x;p=p+1|0;if(!(p>>>0<e>>>0)){break}else{u=u+1|0}}}else{v=c[h>>2]|0}h=f+(o-b<<2)|0;if((h|0)!=(v|0)?(m=v+-4|0,m>>>0>h>>>0):0){do{x=c[h>>2]|0;c[h>>2]=c[m>>2];c[m>>2]=x;h=h+4|0;m=m+-4|0}while(h>>>0<m>>>0)}}else{mc[c[(c[n>>2]|0)+48>>2]&7](n,b,e,f)|0;v=f+(e-b<<2)|0;c[h>>2]=v}if((d|0)==(e|0)){x=v;c[g>>2]=x;ck(l);i=k;return}x=f+(d-b<<2)|0;c[g>>2]=x;ck(l);i=k;return}function qn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+16|0;m=l;k=c[d>>2]|0;if((k|0)==0){c[b>>2]=0;i=l;return}q=e;n=g-q>>2;h=h+12|0;o=c[h>>2]|0;n=(o|0)>(n|0)?o-n|0:0;o=f;q=o-q|0;p=q>>2;if((q|0)>0?(ac[c[(c[k>>2]|0)+48>>2]&31](k,e,p)|0)!=(p|0):0){c[d>>2]=0;c[b>>2]=0;i=l;return}do{if((n|0)>0){pk(m,n,j);if((a[m>>0]&1)==0){e=m+4|0}else{e=c[m+8>>2]|0}if((ac[c[(c[k>>2]|0)+48>>2]&31](k,e,n)|0)==(n|0)){qk(m);break}c[d>>2]=0;c[b>>2]=0;qk(m);i=l;return}}while(0);q=g-o|0;m=q>>2;if((q|0)>0?(ac[c[(c[k>>2]|0)+48>>2]&31](k,f,m)|0)!=(m|0):0){c[d>>2]=0;c[b>>2]=0;i=l;return}c[h>>2]=0;c[b>>2]=k;i=l;return}function rn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;p=i;i=i+224|0;m=p+8|0;t=p;q=p+196|0;l=p+32|0;r=p+28|0;n=p+24|0;d=p+20|0;o=p+16|0;w=t;c[w>>2]=37;c[w+4>>2]=0;w=t+1|0;s=f+4|0;u=c[s>>2]|0;if((u&2048|0)!=0){a[w>>0]=43;w=t+2|0}if((u&512|0)!=0){a[w>>0]=35;w=w+1|0}v=w+2|0;a[w>>0]=108;a[w+1>>0]=108;w=u&74;do{if((w|0)==8){if((u&16384|0)==0){a[v>>0]=120;break}else{a[v>>0]=88;break}}else if((w|0)==64){a[v>>0]=111}else{a[v>>0]=100}}while(0);if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}w=c[270684]|0;v=m;c[v>>2]=h;c[v+4>>2]=j;h=an(q,22,w,t,m)|0;j=q+h|0;s=c[s>>2]&176;do{if((s|0)==16){s=a[q>>0]|0;if(s<<24>>24==43|s<<24>>24==45){s=q+1|0;break}if((h|0)>1&s<<24>>24==48?(w=a[q+1>>0]|0,w<<24>>24==88|w<<24>>24==120):0){s=q+2|0}else{k=20}}else if((s|0)==32){s=j}else{k=20}}while(0);if((k|0)==20){s=q}Bk(d,f);pn(q,s,j,l,r,n,d);Dj(c[d>>2]|0)|0;c[o>>2]=c[e>>2];v=c[r>>2]|0;w=c[n>>2]|0;c[m+0>>2]=c[o+0>>2];qn(b,m,l,v,w,f,g);i=p;return}function sn(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=i;i=i+128|0;l=m;s=m+116|0;d=m+104|0;o=m+20|0;q=m+16|0;k=m+12|0;p=m+8|0;n=m+4|0;a[s+0>>0]=a[1081640>>0]|0;a[s+1>>0]=a[1081641>>0]|0;a[s+2>>0]=a[1081642>>0]|0;a[s+3>>0]=a[1081643>>0]|0;a[s+4>>0]=a[1081644>>0]|0;a[s+5>>0]=a[1081645>>0]|0;u=s+1|0;r=f+4|0;t=c[r>>2]|0;if((t&2048|0)!=0){a[u>>0]=43;u=s+2|0}if((t&512|0)!=0){a[u>>0]=35;u=u+1|0}a[u>>0]=108;u=u+1|0;v=t&74;do{if((v|0)==64){a[u>>0]=111}else if((v|0)==8){if((t&16384|0)==0){a[u>>0]=120;break}else{a[u>>0]=88;break}}else{a[u>>0]=117}}while(0);if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}v=c[270684]|0;c[l>>2]=h;s=an(d,12,v,s,l)|0;h=d+s|0;r=c[r>>2]&176;do{if((r|0)==32){r=h}else if((r|0)==16){r=a[d>>0]|0;if(r<<24>>24==43|r<<24>>24==45){r=d+1|0;break}if((s|0)>1&r<<24>>24==48?(v=a[d+1>>0]|0,v<<24>>24==88|v<<24>>24==120):0){r=d+2|0}else{j=20}}else{j=20}}while(0);if((j|0)==20){r=d}Bk(p,f);pn(d,r,h,o,q,k,p);Dj(c[p>>2]|0)|0;c[n>>2]=c[e>>2];u=c[q>>2]|0;v=c[k>>2]|0;c[l+0>>2]=c[n+0>>2];qn(b,l,o,u,v,f,g);i=m;return}function tn(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=i;i=i+240|0;l=m+8|0;t=m;o=m+204|0;r=m+32|0;p=m+28|0;d=m+24|0;q=m+20|0;n=m+16|0;w=t;c[w>>2]=37;c[w+4>>2]=0;w=t+1|0;s=f+4|0;u=c[s>>2]|0;if((u&2048|0)!=0){a[w>>0]=43;w=t+2|0}if((u&512|0)!=0){a[w>>0]=35;w=w+1|0}v=w+2|0;a[w>>0]=108;a[w+1>>0]=108;w=u&74;do{if((w|0)==64){a[v>>0]=111}else if((w|0)==8){if((u&16384|0)==0){a[v>>0]=120;break}else{a[v>>0]=88;break}}else{a[v>>0]=117}}while(0);if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}w=c[270684]|0;v=l;c[v>>2]=h;c[v+4>>2]=j;j=an(o,23,w,t,l)|0;h=o+j|0;s=c[s>>2]&176;do{if((s|0)==32){s=h}else if((s|0)==16){s=a[o>>0]|0;if(s<<24>>24==43|s<<24>>24==45){s=o+1|0;break}if((j|0)>1&s<<24>>24==48?(w=a[o+1>>0]|0,w<<24>>24==88|w<<24>>24==120):0){s=o+2|0}else{k=20}}else{k=20}}while(0);if((k|0)==20){s=o}Bk(q,f);pn(o,s,h,r,p,d,q);Dj(c[q>>2]|0)|0;c[n>>2]=c[e>>2];v=c[p>>2]|0;w=c[d>>2]|0;c[l+0>>2]=c[n+0>>2];qn(b,l,r,v,w,f,g);i=m;return}function Dh(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;l=i;i=i+2320|0;p=l+88|0;s=l+160|0;r=l;n=p+0|0;m=n+72|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(m|0));t=g+8|0;c[t>>2]=0;q=g+4|0;c[q>>2]=(c[g+-36>>2]|0)+1;D=$g(f)|0;m=(c[q>>2]|0)>120;if(D){if(!m){D=c[1057880+(c[f+2212>>2]<<2)>>2]|0;i=l;return D|0}}else{if(!m){m=k>>31&-2;v=f+2220|0;n=(c[v>>2]|0)+48|0;o=c[n>>2]|0;n=c[n+4>>2]|0;w=zi(1074424,o,n)|0;u=(w|0)!=0;if(u){x=e[w+4>>1]|0;y=b[w+8>>1]|0;z=y<<16>>16;A=c[q>>2]|0;if(!(y<<16>>16==32002)){if(y<<16>>16>31879){z=z-A|0}else{z=(y<<16>>16<-31879?A:0)+z|0}y=(z|0)==32002;if(!((b[w+10>>1]|0)<(m|0)|y)){if((a[w+6>>0]|0)==3){c[t>>2]=x;D=z;i=l;return D|0}else{y=0}}}else{y=1;z=32002}D=b[w+12>>1]|0;A=D<<16>>16;B=g+32|0;c[B>>2]=A;if(D<<16>>16==32002){A=Ne(f)|0;c[B>>2]=A}if(y){y=A;B=x;x=A}else{y=A;B=x;x=(d[w+6>>0]&((z|0)>(A|0)?2:1)|0)==0?A:z}}else{if((c[g+-32>>2]|0)==65){w=34-(c[g+-8>>2]|0)|0}else{w=Ne(f)|0}c[g+32>>2]=w;y=w;B=0;x=w}if((x|0)>=(j|0)){if(u){D=x;i=l;return D|0}g=(c[v>>2]|0)+48|0;h=c[q>>2]|0;if((x|0)>31879){h=h+x|0}else{h=x-((x|0)<-31879?h:0)|0}Ai(1074424,c[g>>2]|0,c[g+4>>2]|0,h,2,-254,0,y);D=x;i=l;return D|0}ig(s,f,B,k,1060480,c[g+-32>>2]&63);Cg(r,f);u=r+8|0;w=g+40|0;v=0-j|0;y=k+-2|0;z=(x|0)>(h|0)?x:h;k=0;a:while(1){B=0-z|0;while(1){A=lg(s)|0;if((A|0)==0){p=47;break a}while(1){if((A&49152|0)==0?(D=r,(c[D>>2]|0)==0&(c[D+4>>2]|0)==0):0){D=r+((c[f+((A>>>6&63)<<2)>>2]&7)<<3)+16|0;E=29920+((A&63)<<3)|0;C=c[E>>2]&c[D>>2];D=c[E+4>>2]&c[D+4>>2]}else{C=(Rg(f,A,r)|0)&1;D=0}E=u;if(Pg(f,A,c[E>>2]|0,c[E+4>>2]|0)|0){E=(C|0)!=0|(D|0)!=0;c[t>>2]=A;Tg(f,A,p,r,E);if(E){D=Ch(f,w,v,B,y)|0}else{D=Dh(f,w,v,B,y)|0}C=0-D|0;Vg(f,A);if((x|0)<(C|0)){break}}A=lg(s)|0;if((A|0)==0){p=47;break a}}if((z|0)<(C|0)){break}else{x=C}}if((C|0)<(j|0)){z=C;k=A;x=C}else{p=43;break}}if((p|0)==43){h=c[q>>2]|0;if((C|0)>31879){h=h-D|0}else{h=C-((C|0)<-31879?h:0)|0}Ai(1074424,o,n,h,2,m,A,c[g+32>>2]|0);E=C;i=l;return E|0}else if((p|0)==47){f=c[q>>2]|0;if((x|0)>31879){f=f+x|0}else{f=x-((x|0)<-31879?f:0)|0}Ai(1074424,o,n,f,(x|0)>(h|0)?3:1,m,k,c[g+32>>2]|0);E=x;i=l;return E|0}}}E=Ne(f)|0;i=l;return E|0}function Eh(d,f,g,h,j,k){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,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;l=i;i=i+2592|0;q=l+2336|0;t=l+88|0;n=l+2332|0;m=l+2328|0;v=l+2320|0;D=l+2312|0;s=l+160|0;u=l;p=t+0|0;o=p+72|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(o|0));w=c[d+2216>>2]|0;J=d+2220|0;o=(c[J>>2]|0)+56|0;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;c[m>>2]=-32001;c[n>>2]=0;x=f+40|0;c[f+56>>2]=0;K=f+12|0;c[K>>2]=0;y=f+8|0;c[y>>2]=0;z=(c[f+-36>>2]|0)+1|0;p=f+4|0;c[p>>2]=z;a[f+76>>0]=0;c[f+68>>2]=0;c[f+104>>2]=0;c[f+100>>2]=0;B=w+848|0;if((c[B>>2]|0)<(z|0)){c[B>>2]=z}if(((a[1022448]|0)==0?!($g(d)|0):0)?(r=c[p>>2]|0,(r|0)<=120):0){_=r+-32e3|0;_=(_|0)<(g|0)?g:_;g=31999-r|0;g=(g|0)>(h|0)?h:g;if((_|0)>=(g|0)){fa=_;i=l;return fa|0}B=f+16|0;C=c[B>>2]|0;z=(C|0)!=0;if(z){h=Bg(d)|0;r=I}else{r=(c[J>>2]|0)+48|0;h=c[r>>2]|0;r=c[r+4>>2]|0}L=zi(1074424,h,r)|0;M=(L|0)!=0;if(M){N=b[L+4>>1]|0;E=N&65535;c[K>>2]=E;O=b[L+8>>1]|0;K=O<<16>>16;P=c[p>>2]|0;if(!(O<<16>>16==32002)){if(O<<16>>16>31879){K=K-P|0}else{K=(O<<16>>16<-31879?P:0)+K|0}if(!((K|0)==32002?1:(b[L+10>>1]|0)<(j|0))?(a[L+6>>0]|0)==3:0){c[y>>2]=E;if((K|0)<(g|0)|N<<16>>16==0){fa=K;i=l;return fa|0}m=E&49152;if((m|0)==0){m=(c[d+((E&63)<<2)>>2]|0)!=0}else{m=(m|0)!=49152}if(m|o){fa=K;i=l;return fa|0}Fh(d,f,E,j,0,0);fa=K;i=l;return fa|0}}else{K=32002}}else{c[K>>2]=0;E=0;K=32002}if(!o){if(M){fa=b[L+12>>1]|0;M=f+32|0;c[M>>2]=fa<<16>>16;if(fa<<16>>16==32002){c[M>>2]=Ne(d)|0}}else{if((c[f+-32>>2]|0)==65){M=34-(c[f+-8>>2]|0)|0}else{M=Ne(d)|0}c[f+32>>2]=M;Ai(1074424,h,r,32002,0,-254,0,M)}if(((((c[(c[J>>2]|0)+64>>2]|0)==0?(G=c[f+32>>2]|0,(G|0)!=32002):0)?(H=c[f+-8>>2]|0,(H|0)!=32002):0)?(F=c[f+-32>>2]|0,!((F|0)==0|(F|0)==65)):0)?(F&49152|0)==0:0){fa=F&63;ea=0-(H+G)|0;fa=1064648+(c[d+(fa<<2)>>2]<<8)+(fa<<2)|0;da=(c[fa>>2]|0)+-1|0;c[fa>>2]=(da|0)>(ea|0)?da:ea}if((j|0)>9&(E|0)==0){L=f+36|0;a[L>>0]=1;Eh(d,f,_,g,j+-4|0,1)|0;a[L>>0]=0;L=zi(1074424,h,r)|0;if((L|0)==0){E=0;L=0}else{E=e[L+4>>1]|0}}}else{c[f+32>>2]=32002}fa=c[f+-32>>2]&63;W=c[d+(fa<<2)>>2]|0;c[v>>2]=c[1024776+(W<<9)+(fa<<3)>>2];F=v+4|0;c[F>>2]=c[1024776+(W<<9)+(fa<<3)+4>>2];fa=c[f+-72>>2]&63;W=c[d+(fa<<2)>>2]|0;c[D>>2]=c[1032968+(W<<9)+(fa<<3)>>2];c[D+4>>2]=c[1032968+(W<<9)+(fa<<3)+4>>2];hg(s,d,E,j,1060480,v,D,f);Cg(u,d);D=f+32|0;fa=c[D>>2]|0;W=c[f+-48>>2]|0;W=(fa|0)>=(W|0)|(fa|0)==32002|(W|0)==32002;if((j|0)>=16){G=0-g|0;if(!((((g|0)>-1?g:G)|0)>9999|(E|0)==0|z)?!((a[L+6>>0]&2)==0):0){H=(b[L+10>>1]|0)>=(j+-6|0)}else{H=0}}else{G=0-g|0;H=0}J=u+8|0;R=K-j|0;P=f+36|0;Q=R+-1|0;U=(j|0)/2|0;O=j+-2|0;K=(j|0)<6;L=w+852|0;N=w+856|0;V=k^1;T=f+20|0;S=f+24|0;M=(U|0)>63?63:U;Y=W&1;W=f+28|0;ca=0;$=0;a:while(1){X=ca+1|0;while(1){Z=lg(s)|0;if((Z|0)==0){X=ca;A=112;break a}if((Z|0)==(C|0)){continue}aa=Z&49152;da=(aa|0)==0;if(da){aa=Z&63;ea=(c[d+(aa<<2)>>2]|0)!=0;fa=u;if((c[fa>>2]|0)==0&(c[fa+4>>2]|0)==0){ba=u+((c[d+((Z>>>6&63)<<2)>>2]&7)<<3)+16|0;fa=29920+(aa<<3)|0;aa=c[fa>>2]&c[ba>>2];ba=c[fa+4>>2]&c[ba+4>>2]}else{A=58}}else{ea=(aa|0)!=49152;A=58}if((A|0)==58){A=0;aa=(Rg(d,Z,u)|0)&1;ba=0}aa=(aa|0)!=0|(ba|0)!=0;if(aa){ba=((Zg(d,Z)|0)>>31)+2&-2}else{ba=0}fa=(Z|0)==(E|0);if(H&fa&(ba|0)==0){ba=J;if(Pg(d,E,c[ba>>2]|0,c[ba+4>>2]|0)|0){c[B>>2]=E;a[P>>0]=1;ba=zh(d,f,Q,R,U,k)|0;a[P>>0]=0;c[B>>2]=0;ba=(ba|0)<(R|0)?2:0}else{ba=0}}ba=O+ba|0;ga=J;if(Pg(d,Z,c[ga>>2]|0,c[ga+4>>2]|0)|0){break}}ca=(ca|0)==0;c[y>>2]=Z;if(($|0)<64&(ea^1)){c[q+($<<2)>>2]=Z;$=$+1|0}Tg(d,Z,t,u,aa);do{if((!(K|ca|ea|fa)?(Z|0)!=(c[T>>2]|0):0)?(Z|0)!=(c[S>>2]|0):0){fa=a[((X|0)>63?63:X)+(1049352+(Y<<12)+(M<<6))>>0]|0;c[W>>2]=fa;A=Z&63;ea=c[d+(A<<2)>>2]|0;if((c[1060480+(ea<<8)+(A<<2)>>2]|0)<0){fa=fa+1|0;c[W>>2]=fa}if(!((Z|0)!=(c[v>>2]|0)?(Z|0)!=(c[F>>2]|0):0)){fa=fa+-2|0;fa=(fa|0)>0?fa:0;c[W>>2]=fa}do{if(!((fa|0)==0|da^1)){if((ea&7|0)==1){break}ga=(_g(d,A<<6|Z>>>6&63)|0)<0;fa=c[W>>2]|0;if(!ga){break}fa=fa+-2|0;fa=(fa|0)>0?fa:0;c[W>>2]=fa}}while(0);ea=ba-fa|0;da=~_;A=0-_|0;ea=0-(zh(d,x,da,A,(ea|0)<2?2:ea,1)|0)|0;do{if((_|0)<(ea|0)){if((c[W>>2]|0)<8){break}ea=ba+-4|0;ea=0-(zh(d,x,da,A,(ea|0)<2?2:ea,1)|0)|0}}while(0);if((ea|0)>(_|0)){ga=(c[W>>2]|0)==0;c[W>>2]=0;if(ga){A=92;break}else{ea=A;A=87;break}}else{c[W>>2]=0;A=92;break}}else{A=84}}while(0);if((A|0)==84){if(ca){A=94}else{da=~_;ea=0-_|0;A=87}}do{if((A|0)==87){if((ba|0)>=2){ea=0-(zh(d,x,da,ea,ba,V)|0)|0;A=92;break}if(aa){ea=0-(Ah(d,x,da,ea,0)|0)|0;A=92;break}else{ea=0-(Bh(d,x,da,ea,0)|0)|0;A=92;break}}}while(0);if((A|0)==92){A=0;if(!(!ca?!((ea|0)>(_|0)&(ea|0)<(g|0)):0)){A=94}}do{if((A|0)==94){A=0;ca=0-_|0;if((ba|0)>=2){ea=0-(Eh(d,x,G,ca,ba,0)|0)|0;break}if(aa){ea=0-(Ch(d,x,G,ca,0)|0)|0;break}else{ea=0-(Dh(d,x,G,ca,0)|0)|0;break}}}while(0);Vg(d,Z);if((a[1022448]|0)!=0){j=0;A=130;break}if(ji(w)|0){j=0;A=130;break}if((ea|0)>(c[m>>2]|0)?(c[m>>2]=ea,(ea|0)>(_|0)):0){c[n>>2]=Z;if((ea|0)<(g|0)){_=ea}else{A=112;break}}if((c[1074204>>2]|0)>(j|0)){ca=X;continue}if((mi(1074192,w)|0)==0){ca=X;continue}if((c[L>>2]|0)!=0?(a[(c[L>>2]|0)+56>>0]|0)!=0:0){ca=X;continue}if((c[N>>2]|0)>=8){ca=X;continue}ni(w,d,f,_,g,m,n,j,X,s,1,k);if((a[1022448]|0)!=0){j=0;A=130;break}if(ji(w)|0){j=0;A=130;break}if((c[m>>2]|0)<(g|0)){ca=X}else{A=112;break}}if((A|0)==112){if((X|0)!=0){_=c[m>>2]|0;if((_|0)>=(g|0)){s=c[n>>2]|0;t=s&49152;if((t|0)==0){t=(c[d+((s&63)<<2)>>2]|0)!=0}else{t=(t|0)!=49152}if(!(t|o)){Fh(d,f,s,j,q,$+-1|0);_=c[m>>2]|0}}}else{do{if(!z){if(o){_=(c[p>>2]|0)+-32e3|0;break}else{_=c[1057880+(c[d+2212>>2]<<2)>>2]|0;break}}}while(0);c[m>>2]=_}d=c[p>>2]|0;if((_|0)>31879){d=d+_|0}else{d=_-((_|0)<-31879?d:0)|0}n=c[n>>2]|0;if((_|0)<(g|0)){f=(n|0)!=0?3:1}else{f=2}Ai(1074424,h,r,d,f,j,n,c[D>>2]|0);ga=c[m>>2]|0;i=l;return ga|0}else if((A|0)==130){i=l;return j|0}}if((c[p>>2]|0)<121|o){ga=c[1057880+(c[d+2212>>2]<<2)>>2]|0;i=l;return ga|0}else{ga=Ne(d)|0;i=l;return ga|0}return 0}function Fh(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;o=b+20|0;n=c[o>>2]|0;if((n|0)!=(d|0)){c[b+24>>2]=n;c[o>>2]=d}n=ea(e,e)|0;o=1060480+(c[a+((d>>>6&63)<<2)>>2]<<8)+((d&63)<<2)|0;e=(c[o>>2]|0)+n|0;if((((e|0)>-1?e:0-e|0)|0)<2e3){c[o>>2]=e}if((g|0)>0){o=0;do{e=c[f+(o<<2)>>2]|0;e=1060480+(c[a+((e>>>6&63)<<2)>>2]<<8)+((e&63)<<2)|0;p=(c[e>>2]|0)-n|0;if((((p|0)>-1?p:0-p|0)|0)<2e3){c[e>>2]=p}o=o+1|0}while((o|0)!=(g|0))}f=b+-32|0;g=c[f>>2]|0;if(((g>>>6^g)&63|0)!=0?(l=g&63,k=c[a+(l<<2)>>2]|0,m=1024776+(k<<9)+(l<<3)|0,j=c[m>>2]|0,(j|0)!=(d|0)):0){c[1024776+(k<<9)+(l<<3)+4>>2]=j;c[m>>2]=d}j=c[b+-72>>2]|0;if(((j>>>6^j)&63|0)==0){i=h;return}if((c[f>>2]|0)!=(c[b+-28>>2]|0)){i=h;return}b=j&63;j=c[a+(b<<2)>>2]|0;k=1032968+(j<<9)+(b<<3)|0;a=c[k>>2]|0;if((a|0)==(d|0)){i=h;return}c[1032968+(j<<9)+(b<<3)+4>>2]=a;c[k>>2]=d;i=h;return}function Gh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;f=b;h=d-f>>2;g=a+8|0;l=c[g>>2]|0;j=c[a>>2]|0;k=j;if(!(h>>>0>l-k>>2>>>0)){g=a+4|0;a=(c[g>>2]|0)-k|0;k=a>>2;if(!(h>>>0>k>>>0)){d=d-f|0;Ot(j|0,b|0,d|0)|0;b=j+(d>>2<<2)|0;d=c[g>>2]|0;if((d|0)==(b|0)){i=e;return}c[g>>2]=d+(~((d+-4+(0-b)|0)>>>2)<<2);i=e;return}f=b+(k<<2)|0;Ot(j|0,b|0,a|0)|0;if((f|0)==(d|0)){i=e;return}b=c[g>>2]|0;a=(d+-4+(0-f)|0)>>>2;h=b;while(1){if((h|0)!=0){c[h>>2]=c[f>>2]}f=f+4|0;if((f|0)==(d|0)){break}else{h=h+4|0}}c[g>>2]=b+(a+1<<2);i=e;return}if((j|0)!=0){m=a+4|0;l=c[m>>2]|0;if((l|0)!=(j|0)){c[m>>2]=l+(~((l+-4+(0-k)|0)>>>2)<<2)}Ys(j);c[g>>2]=0;c[m>>2]=0;c[a>>2]=0;l=0}if(l>>2>>>0<536870911){k=l>>1;k=k>>>0<h>>>0?h:k}else{k=1073741823}j=Vs(k<<2)|0;h=a+4|0;c[h>>2]=j;c[a>>2]=j;c[g>>2]=j+(k<<2);if((b|0)==(d|0)){i=e;return}f=(d+-4+(0-f)|0)>>>2;g=j;while(1){if((g|0)!=0){c[g>>2]=c[b>>2]}b=b+4|0;if((b|0)==(d|0)){break}else{g=g+4|0}}c[h>>2]=j+(f+1<<2);i=e;return}function Hh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,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=i;i=i+32|0;e=d;r=a+8|0;t=c[a>>2]|0;g=((c[a+4>>2]|0)-t|0)/20|0;s=g+1|0;t=((c[a+8>>2]|0)-t|0)/20|0;if(t>>>0<107374182){t=t<<1;s=t>>>0<s>>>0?s:t;t=e+12|0;c[t>>2]=0;c[e+16>>2]=r;if((s|0)==0){s=0;r=0;u=t}else{r=s;f=4}}else{t=e+12|0;c[t>>2]=0;c[e+16>>2]=r;r=214748364;f=4}if((f|0)==4){s=r;r=Vs(r*20|0)|0;u=t}c[e>>2]=r;v=r+(g*20|0)|0;f=e+8|0;c[f>>2]=v;t=e+4|0;c[t>>2]=v;c[u>>2]=r+(s*20|0);if(((v|0)!=0?(n=b,l=c[n+4>>2]|0,p=v,c[p>>2]=c[n>>2],c[p+4>>2]=l,p=r+(g*20|0)+8|0,c[p>>2]=0,l=r+(g*20|0)+12|0,c[l>>2]=0,n=r+(g*20|0)+16|0,c[n>>2]=0,j=c[b+12>>2]|0,m=c[b+8>>2]|0,k=m,o=j-k|0,q=o>>2,(q|0)!=0):0)?(h=Vs(o)|0,c[l>>2]=h,c[p>>2]=h,c[n>>2]=h+(q<<2),(m|0)!=(j|0)):0){b=h;while(1){if((b|0)!=0){c[b>>2]=c[m>>2]}m=m+4|0;if((m|0)==(j|0)){break}else{b=b+4|0}}c[l>>2]=h+(((j+-4+(0-k)|0)>>>2)+1<<2)}c[f>>2]=r+((g+1|0)*20|0);Ih(a,e);a=c[t>>2]|0;j=c[f>>2]|0;if((j|0)!=(a|0)){while(1){h=j+-20|0;c[f>>2]=h;g=c[j+-12>>2]|0;if((g|0)!=0){k=j+-8|0;j=c[k>>2]|0;if((j|0)!=(g|0)){c[k>>2]=j+(~((j+-4+(0-g)|0)>>>2)<<2);h=c[f>>2]|0}Ys(g)}if((h|0)==(a|0)){break}else{j=h}}}e=c[e>>2]|0;if((e|0)==0){i=d;return}Ys(e);i=d;return}function Ih(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=i;f=c[a>>2]|0;e=a+4|0;l=c[e>>2]|0;d=b+4|0;o=c[d>>2]|0;if((l|0)==(f|0)){s=o;q=f;c[a>>2]=s;c[d>>2]=q;q=b+8|0;s=c[e>>2]|0;r=c[q>>2]|0;c[e>>2]=r;c[q>>2]=s;q=a+8|0;s=b+12|0;r=c[q>>2]|0;p=c[s>>2]|0;c[q>>2]=p;c[s>>2]=r;s=c[d>>2]|0;c[b>>2]=s;i=g;return}do{q=l;l=l+-20|0;p=l;m=c[p+4>>2]|0;n=o+-20|0;c[n>>2]=c[p>>2];c[n+4>>2]=m;n=o+-12|0;c[n>>2]=0;m=o+-8|0;c[m>>2]=0;o=o+-4|0;c[o>>2]=0;p=q+-8|0;q=q+-12|0;s=(c[p>>2]|0)-(c[q>>2]|0)|0;r=s>>2;if((r|0)!=0?(j=Vs(s)|0,c[m>>2]=j,c[n>>2]=j,c[o>>2]=j+(r<<2),h=c[q>>2]|0,k=c[p>>2]|0,(h|0)!=(k|0)):0){n=h;o=j;while(1){if((o|0)!=0){c[o>>2]=c[n>>2]}n=n+4|0;if((n|0)==(k|0)){break}else{o=o+4|0}}c[m>>2]=j+(((k+-4+(0-h)|0)>>>2)+1<<2)}o=(c[d>>2]|0)+-20|0;c[d>>2]=o}while((l|0)!=(f|0));s=o;q=c[a>>2]|0;c[a>>2]=s;c[d>>2]=q;q=b+8|0;s=c[e>>2]|0;r=c[q>>2]|0;c[e>>2]=r;c[q>>2]=s;q=a+8|0;s=b+12|0;r=c[q>>2]|0;p=c[s>>2]|0;c[q>>2]=p;c[s>>2]=r;s=c[d>>2]|0;c[b>>2]=s;i=g;return}function Jh(a){a=a|0;c[a>>2]=1068752;return}function Kh(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Lh(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0;b=i;i=i+2560|0;d=b+2256|0;k=b+2368|0;t=b+2360|0;u=b+2356|0;v=b+2248|0;x=b+2352|0;y=b+2348|0;r=b+2240|0;e=b+8|0;o=b;w=b+2336|0;s=b+2324|0;p=b+2312|0;l=b+2300|0;n=b+2288|0;m=b+2276|0;g=c[268462]|0;J=c[268464]|0;G=c[268466]|0;F=c[268468]|0;H=c[268470]|0;Nt(e|0,1058208,2232)|0;j=c[268472]|0;N=c[268460]|0;O=c[N+4>>2]|0;f=o;c[f>>2]=c[N>>2];c[f+4>>2]=O;f=g+1|0;if(((f|0)<121?(a[1022448]|0)==0:0)?(O=c[1022488>>2]|0,(O|0)==0|(g|0)<(O|0)):0){h[133080]=+h[133080]*.5;A=c[1022516>>2]|0;z=c[255628]|0;if((A|0)!=(z|0)){B=(A-z|0)/20|0;A=0;do{c[z+(A*20|0)+4>>2]=c[z+(A*20|0)>>2];A=A+1|0}while(A>>>0<B>>>0)}c[266144]=0;a:do{if((c[268454]|0)!=0){z=(g|0)>3;B=f<<1;C=d+4|0;D=w+8|0;A=s+8|0;E=d+4|0;K=0;do{if((a[1022448]|0)!=0){break a}if(z){F=c[(c[255628]|0)+(K*20|0)+4>>2]|0;G=F+-16|0;F=F+16|0;H=16;G=(G|0)<-32001?-32001:G;F=(F|0)>32001?32001:F}while(1){J=Nh(e,j,G,F,B)|0;M=(c[255628]|0)+((c[266144]|0)*20|0)|0;L=c[1022516>>2]|0;O=L-M|0;K=(O|0)/20|0;b:do{if((O|0)>0){O=K;while(1){N=Ws(O*20|0,1091664)|0;if((N|0)!=0){break b}if((O|0)>1){O=(O|0)/2|0}else{O=0;break}}}else{N=0;O=0}}while(0);c[x>>2]=M;c[y>>2]=L;c[k+0>>2]=c[x+0>>2];c[d+0>>2]=c[y+0>>2];Ph(k,d,r,K,N,O);if((N|0)==0){K=0}else{Ys(N);K=0}do{uh((c[255628]|0)+(K*20|0)|0,e);K=K+1|0}while(!(K>>>0>(c[266144]|0)>>>0));if((a[1022448]|0)!=0){break}K=(J|0)<=(G|0);L=(J|0)<(F|0);if((!(L&(K^1))?(Yb(d|0,0)|0,N=c[d>>2]|0,N=Vt(N|0,((N|0)<0)<<31>>31|0,1e3,0)|0,O=(c[C>>2]|0)/1e3|0,N=Jt(O|0,((O|0)<0)<<31>>31|0,N|0,I|0)|0,O=1024760,O=Ht(N|0,I|0,c[O>>2]|0,c[O+4>>2]|0)|0,N=I,(N|0)>0|(N|0)==0&O>>>0>3e3):0)?(O=If(1078120,0)|0,Oh(w,e,f,G,F),O=Ec(O,w)|0,Bk(d,O+(c[(c[O>>2]|0)+-12>>2]|0)|0),N=Sp(d,1082848)|0,N=pc[c[(c[N>>2]|0)+28>>2]&63](N,10)|0,Qp(d),zl(O,N)|0,il(O)|0,If(O,1)|0,!((a[w>>0]&1)==0)):0){Ys(c[D>>2]|0)}if(K){G=J-H|0;a[1022451>>0]=1;a[1022449>>0]=0;G=(G|0)<-32001?-32001:G}else{if(L){break}F=J+H|0;F=(F|0)>32001?32001:F}H=((H|0)/2|0)+H|0}K=c[255628]|0;O=(c[266144]|0)+1|0;M=K+(O*20|0)|0;O=O*20|0;L=(O|0)/20|0;c:do{if((O|0)>0){O=L;while(1){N=Ws(O*20|0,1091664)|0;if((N|0)!=0){break c}if((O|0)>1){O=(O|0)/2|0}else{O=0;break}}}else{N=0;O=0}}while(0);c[t>>2]=K;c[u>>2]=M;c[k+0>>2]=c[t+0>>2];c[d+0>>2]=c[u+0>>2];Ph(k,d,v,L,N,O);if((N|0)!=0){Ys(N)}if(!(((c[266144]|0)+1|0)!=(c[268454]|0)?(Yb(d|0,0)|0,N=c[d>>2]|0,N=Vt(N|0,((N|0)<0)<<31>>31|0,1e3,0)|0,O=(c[E>>2]|0)/1e3|0,N=Jt(O|0,((O|0)<0)<<31>>31|0,N|0,I|0)|0,O=1024760,O=Ht(N|0,I|0,c[O>>2]|0,c[O+4>>2]|0)|0,N=I,!((N|0)>0|(N|0)==0&O>>>0>3e3)):0)){q=56}if((q|0)==56?(q=0,O=If(1078120,0)|0,Oh(s,e,f,G,F),O=Ec(O,s)|0,Bk(d,O+(c[(c[O>>2]|0)+-12>>2]|0)|0),N=Sp(d,1082848)|0,N=pc[c[(c[N>>2]|0)+28>>2]&63](N,10)|0,Qp(d),zl(O,N)|0,il(O)|0,If(O,1)|0,!((a[s>>0]&1)==0)):0){Ys(c[A>>2]|0)}K=(c[266144]|0)+1|0;c[266144]=K
+}while(K>>>0<(c[268454]|0)>>>0)}}while(0);O=c[o>>2]|0;if((O|0)<20&(O|0)==(g|0)){Mh(o)|0}u=Vs(32)|0;t=p+8|0;c[t>>2]=u;c[p>>2]=33;c[p+4>>2]=16;r=u+0|0;q=1057952|0;s=r+16|0;do{a[r>>0]=a[q>>0]|0;r=r+1|0;q=q+1|0}while((r|0)<(s|0));a[u+16>>0]=0;q=(Ii(Cc(1077312,p)|0)|0)==0;if(!((a[p>>0]&1)==0)){Ys(c[t>>2]|0)}if(!q){p=c[255628]|0;r=c[o+4>>2]|0;if((r|0)!=0){q=c[1022516>>2]|0;d:do{if((p|0)==(q|0)){o=p}else{o=p;while(1){if((c[c[o+8>>2]>>2]|0)==(r|0)){break d}o=o+20|0;if((o|0)==(q|0)){o=q;break}}}}while(0);M=o;N=c[M+4>>2]|0;O=p;c[O>>2]=c[M>>2];c[O+4>>2]=N;if((p|0)!=(o|0)){Gh(p+8|0,c[o+8>>2]|0,c[o+12>>2]|0)}}o=Vs(32)|0;t=n+8|0;c[t>>2]=o;c[n>>2]=33;c[n+4>>2]=19;r=o+0|0;q=1057976|0;s=r+19|0;do{a[r>>0]=a[q>>0]|0;r=r+1|0;q=q+1|0}while((r|0)<(s|0));a[o+19>>0]=0;Si(l,Cc(1077312,n)|0);qh(k,l);if(!((a[l>>0]&1)==0)){Ys(c[l+8>>2]|0)}if(!((a[n>>0]&1)==0)){Ys(c[t>>2]|0)}N=c[p>>2]|0;Yb(d|0,0)|0;M=c[d>>2]|0;M=Vt(M|0,((M|0)<0)<<31>>31|0,1e3,0)|0;O=(c[d+4>>2]|0)/1e3|0;M=Jt(O|0,((O|0)<0)<<31>>31|0,M|0,I|0)|0;O=1024760;O=Ht(M|0,I|0,c[O>>2]|0,c[O+4>>2]|0)|0;rg(m,e,f,N,O,I,c[p+8>>2]|0);O=Ec(k,m)|0;Bk(d,O+(c[(c[O>>2]|0)+-12>>2]|0)|0);N=Sp(d,1082848)|0;N=pc[c[(c[N>>2]|0)+28>>2]&63](N,10)|0;Qp(d);zl(O,N)|0;il(O)|0;if(!((a[m>>0]&1)==0)){Ys(c[m+8>>2]|0)}c[k>>2]=1074076;l=k+104|0;c[l>>2]=1074096;n=k+68|0;o=c[n>>2]|0;m=k+4|0;do{if((o|0)!=0){p=gc[c[(c[m>>2]|0)+24>>2]&127](m)|0;if((yb(o|0)|0)==0?(c[n>>2]=0,(p|0)==0):0){break}O=c[(c[k>>2]|0)+-12>>2]|0;xk(k+O|0,c[k+(O+16)>>2]|4)}}while(0);c[k>>2]=1074116;c[l>>2]=1074136;Oc(m);yk(k+104|0)}k=c[1022500>>2]|0;if((k|0)!=0&(J|0)>31879?(32e3-J|0)<=(k<<1|0):0){a[1022448]=1;k=c[1022500>>2]|0}do{if(((c[1022496>>2]|k|c[1022488>>2]|c[1022492>>2]|c[1022504>>2]|0)==0?(a[1022448]|0)==0:0)?(a[1022449>>0]|0)==0:0){if((g|0)>3&(f|0)<50&(c[268454]|0)==1){h[1057856>>3]=+h[133080]+1}if(((c[1022516>>2]|0)-(c[255628]|0)|0)!=20?(Yb(d|0,0)|0,L=c[d>>2]|0,L=Vt(L|0,((L|0)<0)<<31>>31|0,1e3,0)|0,N=(c[d+4>>2]|0)/1e3|0,L=Jt(N|0,((N|0)<0)<<31>>31|0,L|0,I|0)|0,N=1024760,N=Ht(L|0,I|0,c[N>>2]|0,c[N+4>>2]|0)|0,L=I,O=~~(+(c[264462]|0)*+h[1057856>>3]*.71),M=((O|0)<0)<<31>>31,!((L|0)>(M|0)|(L|0)==(M|0)&N>>>0>O>>>0)):0){break}if((c[1022508>>2]|0)==0){a[1022448]=1;break}else{a[1022449>>0]=1;break}}}while(0);c[268462]=f;c[268464]=J;c[268466]=G;c[268468]=F;c[268470]=H;Eg(1058208,e)|0;c[268472]=j;Zb(208,0,1);i=b;return}if((c[o>>2]|0)<20){e=c[255628]|0;f=c[1022516>>2]|0;g=c[o+4>>2]|0;if((g|0)==0){g=Mh(o)|0}e:do{if((e|0)==(f|0)){l=e}else{l=e;while(1){if((c[c[l+8>>2]>>2]|0)==(g|0)){break e}l=l+20|0;if((l|0)==(f|0)){l=f;break}}}}while(0);m=e;f=c[m+4>>2]|0;k=d;c[k>>2]=c[m>>2];c[k+4>>2]=f;k=d+8|0;c[k>>2]=0;f=d+12|0;c[f>>2]=0;m=d+16|0;c[m>>2]=0;j=c[e+12>>2]|0;n=c[e+8>>2]|0;g=n;p=j-g|0;o=p>>2;if((o|0)!=0?(z=Vs(p)|0,c[f>>2]=z,c[k>>2]=z,c[m>>2]=z+(o<<2),(n|0)!=(j|0)):0){m=z;while(1){if((m|0)!=0){c[m>>2]=c[n>>2]}n=n+4|0;if((n|0)==(j|0)){break}else{m=m+4|0}}c[f>>2]=z+(((j+-4+(0-g)|0)>>>2)+1<<2)}M=l;N=c[M+4>>2]|0;O=e;c[O>>2]=c[M>>2];c[O+4>>2]=N;if((e|0)!=(l|0)){Gh(e+8|0,c[l+8>>2]|0,c[l+12>>2]|0)}M=d;N=c[M+4>>2]|0;O=l;c[O>>2]=c[M>>2];c[O+4>>2]=N;if((d|0)!=(l|0)){Gh(l+8|0,c[k>>2]|0,c[f>>2]|0)}d=c[k>>2]|0;if((d|0)!=0){e=c[f>>2]|0;if((e|0)!=(d|0)){c[f>>2]=e+(~((e+-4+(0-d)|0)>>>2)<<2)}Ys(d)}}sh();i=b;return}function Mh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,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=i;i=i+32|0;g=d+24|0;e=d+12|0;f=d;if((a[1074e3]|0)==0?(Ma(1074e3)|0)!=0:0){u=1073968;c[u>>2]=-167529152;c[u+4>>2]=1188910975;u=1073976|0;c[u>>2]=-87058309;c[u+4>>2]=-1006142499;u=1073984|0;c[u>>2]=1912662104;c[u+4>>2]=-1141581509;u=1073992|0;c[u>>2]=-733365474;c[u+4>>2]=-740264497;Xa(1074e3)}Yb(g|0,0)|0;p=c[g>>2]|0;p=Vt(p|0,((p|0)<0)<<31>>31|0,1e3,0)|0;u=(c[g+4>>2]|0)/1e3|0;p=Jt(u|0,((u|0)<0)<<31>>31|0,p|0,I|0)|0;p=Ut(p|0,I|0,50,0)|0;if((p|0)>0){l=1073968;n=1073976|0;h=1073984|0;k=1073992|0;m=c[n>>2]|0;n=c[n+4>>2]|0;g=c[l>>2]|0;l=c[l+4>>2]|0;o=c[h>>2]|0;h=c[h+4>>2]|0;j=c[k>>2]|0;k=c[k+4>>2]|0;do{u=Mt(m|0,n|0,7)|0;t=I;s=Kt(m|0,n|0,57)|0;t=Ht(g|0,l|0,s|u|0,I|t|0)|0;u=I;s=Mt(o|0,h|0,13)|0;r=I;q=Kt(o|0,h|0,51)|0;g=(q|s)^m;l=(I|r)^n;r=Mt(j|0,k|0,37)|0;s=I;q=Kt(j|0,k|0,27)|0;m=Jt(q|r|0,I|s|0,o|0,h|0)|0;n=I;o=Jt(t|0,u|0,j|0,k|0)|0;h=I;j=Jt(g|0,l|0,t|0,u|0)|0;k=I;p=p+-1|0}while((p|0)>0);u=1073968;c[u>>2]=g;c[u+4>>2]=l;u=1073976|0;c[u>>2]=m;c[u+4>>2]=n;u=1073984|0;c[u>>2]=o;c[u+4>>2]=h;u=1073992|0;c[u>>2]=j;c[u+4>>2]=k}q=c[255628]|0;n=c[q>>2]|0;u=c[268454]|0;h=n-(c[q+((u+-1|0)*20|0)>>2]|0)|0;h=(h|0)>198?198:h;g=120-(c[b>>2]<<1)|0;b=b+4|0;c[b>>2]=0;if((u|0)==0){u=c[b>>2]|0;i=d;return u|0}l=f+8|0;k=f+4|0;m=e+8|0;j=e+4|0;o=0;p=-32001;a:while(1){do{if((o|0)!=0){t=c[q+((o+-1|0)*20|0)>>2]|0;u=Vs(32)|0;c[m>>2]=u;c[e>>2]=33;c[j>>2]=25;s=u+0|0;r=1074008|0;q=s+25|0;do{a[s>>0]=a[r>>0]|0;s=s+1|0;r=r+1|0}while((s|0)<(q|0));a[u+25>>0]=0;q=(t|0)>(((Ii(Cc(1077312,e)|0)|0)*198|0)+n|0);if((a[e>>0]&1)==0){if(q){e=20;break a}else{break}}else{Ys(c[m>>2]|0);if(q){e=20;break a}else{break}}}}while(0);u=ea((c[c[255628]>>2]|0)-n|0,g)|0;x=1073968;v=c[x>>2]|0;x=c[x+4>>2]|0;r=1073976|0;q=c[r>>2]|0;r=c[r+4>>2]|0;t=Mt(q|0,r|0,7)|0;s=I;y=Kt(q|0,r|0,57)|0;s=Ht(v|0,x|0,y|t|0,I|s|0)|0;t=I;y=1073984|0;x=c[y>>2]|0;y=c[y+4>>2]|0;v=Mt(x|0,y|0,13)|0;w=I;A=Kt(x|0,y|0,51)|0;q=(A|v)^q;r=(I|w)^r;w=1073968;c[w>>2]=q;c[w+4>>2]=r;w=1073992|0;v=c[w>>2]|0;w=c[w+4>>2]|0;A=Mt(v|0,w|0,37)|0;z=I;B=Kt(v|0,w|0,27)|0;y=Jt(B|A|0,I|z|0,x|0,y|0)|0;x=1073976|0;c[x>>2]=y;c[x+4>>2]=I;w=Jt(s|0,t|0,v|0,w|0)|0;v=1073984|0;c[v>>2]=w;c[v+4>>2]=I;t=Jt(q|0,r|0,s|0,t|0)|0;s=1073992|0;c[s>>2]=t;c[s+4>>2]=I;u=(ea((t>>>0)%(g>>>0)|0,h)|0)+u|0;t=Vs(32)|0;c[l>>2]=t;c[f>>2]=33;c[k>>2]=23;s=t+0|0;r=1074040|0;q=s+23|0;do{a[s>>0]=a[r>>0]|0;s=s+1|0;r=r+1|0}while((s|0)<(q|0));a[t+23>>0]=0;n=((u>>>0)/((Ii(Cc(1077312,f)|0)|0)>>>0)|0)+n|0;if(!((a[f>>0]&1)==0)){Ys(c[l>>2]|0)}if((n|0)>(p|0)){c[b>>2]=c[c[(c[255628]|0)+(o*20|0)+8>>2]>>2];p=n}o=o+1|0;if(!(o>>>0<(c[268454]|0)>>>0)){e=20;break}n=c[255628]|0;q=n;n=c[n+(o*20|0)>>2]|0}if((e|0)==20){B=c[b>>2]|0;i=d;return B|0}return 0}function Nh(d,f,g,j,k){d=d|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,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;l=i;i=i+2624|0;u=l+2608|0;r=l+2352|0;y=l+88|0;n=l+2348|0;m=l+2344|0;A=l+2336|0;G=l+2328|0;B=l+176|0;t=l;v=l+160|0;p=y+0|0;o=p+72|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(o|0));D=c[d+2216>>2]|0;N=d+2220|0;o=c[N>>2]|0;s=o+56|0;s=(c[s>>2]|0)!=0|(c[s+4>>2]|0)!=0;c[m>>2]=-32001;c[n>>2]=0;E=f+40|0;c[f+56>>2]=0;O=f+12|0;c[O>>2]=0;C=f+8|0;c[C>>2]=0;z=(c[f+-36>>2]|0)+1|0;q=f+4|0;c[q>>2]=z;a[f+76>>0]=0;c[f+68>>2]=0;c[f+104>>2]=0;c[f+100>>2]=0;p=D+848|0;if((c[p>>2]|0)<(z|0)){c[p>>2]=z}H=c[f+16>>2]|0;z=(H|0)!=0;if(z){o=Bg(d)|0;p=I}else{p=o+48|0;o=c[p>>2]|0;p=c[p+4>>2]|0}P=zi(1074424,o,p)|0;K=c[c[(c[255628]|0)+((c[266144]|0)*20|0)+8>>2]>>2]|0;c[O>>2]=K;if(!s){if((P|0)!=0){fa=b[P+12>>1]|0;O=f+32|0;c[O>>2]=fa<<16>>16;if(fa<<16>>16==32002){c[O>>2]=Ne(d)|0}}else{if((c[f+-32>>2]|0)==65){O=34-(c[f+-8>>2]|0)|0}else{O=Ne(d)|0}c[f+32>>2]=O;Ai(1074424,o,p,32002,0,-254,0,O)}if(((((c[(c[N>>2]|0)+64>>2]|0)==0?(M=c[f+32>>2]|0,(M|0)!=32002):0)?(J=c[f+-8>>2]|0,(J|0)!=32002):0)?(L=c[f+-32>>2]|0,!((L|0)==0|(L|0)==65)):0)?(L&49152|0)==0:0){fa=L&63;ea=0-(J+M)|0;fa=1064648+(c[d+(fa<<2)>>2]<<8)+(fa<<2)|0;da=(c[fa>>2]|0)+-1|0;c[fa>>2]=(da|0)>(ea|0)?da:ea}if((k|0)>9&(K|0)==0){J=f+36|0;a[J>>0]=1;Eh(d,f,g,j,k+-4|0,1)|0;a[J>>0]=0;J=zi(1074424,o,p)|0;if((J|0)==0){K=0}else{K=e[J+4>>1]|0}}}else{c[f+32>>2]=32002}X=c[f+-32>>2]&63;Y=c[d+(X<<2)>>2]|0;c[A>>2]=c[1024776+(Y<<9)+(X<<3)>>2];J=A+4|0;c[J>>2]=c[1024776+(Y<<9)+(X<<3)+4>>2];X=c[f+-72>>2]&63;Y=c[d+(X<<2)>>2]|0;c[G>>2]=c[1032968+(Y<<9)+(X<<3)>>2];c[G+4>>2]=c[1032968+(Y<<9)+(X<<3)+4>>2];hg(B,d,K,k,1060480,A,G,f);Cg(t,d);G=f+32|0;X=c[G>>2]|0;Y=c[f+-48>>2]|0;Z=lg(B)|0;do{if((Z|0)!=0){V=u+4|0;S=(k|0)/2|0;R=d+2224|0;Q=v+8|0;T=k+-2|0;M=(k|0)<6;W=0-j|0;O=D+852|0;P=D+856|0;L=f+20|0;U=f+24|0;N=(S|0)>63?63:S;X=((X|0)>=(Y|0)|(X|0)==32002|(Y|0)==32002)&1;Y=f+28|0;$=0;aa=0;a:while(1){do{if((Z|0)!=(H|0)?(x=(c[255628]|0)+((c[266144]|0)*20|0)|0,w=c[1022516>>2]|0,(x|0)!=(w|0)):0){ba=x;_=0;do{_=((c[c[ba+8>>2]>>2]|0)==(Z|0)&1)+_|0;ba=ba+20|0}while((ba|0)!=(w|0));if((_|0)!=0){_=$+1|0;$=($|0)==0;a[1022450>>0]=$&1;if(((D|0)==(c[c[268548]>>2]|0)?(Yb(u|0,0)|0,ea=c[u>>2]|0,ea=Vt(ea|0,((ea|0)<0)<<31>>31|0,1e3,0)|0,fa=(c[V>>2]|0)/1e3|0,ea=Jt(fa|0,((fa|0)<0)<<31>>31|0,ea|0,I|0)|0,fa=1024760,fa=Ht(ea|0,I|0,c[fa>>2]|0,c[fa+4>>2]|0)|0,ea=I,(ea|0)>0|(ea|0)==0&fa>>>0>3e3):0)?(fa=Fc(ul(Fc(If(1078120,0)|0,1064584)|0,S)|0,1064600)|0,og(v,Z,(a[R>>0]|0)!=0),fa=Fc(Ec(fa,v)|0,1064616)|0,fa=vl(fa,(c[266144]|0)+_|0)|0,Bk(u,fa+(c[(c[fa>>2]|0)+-12>>2]|0)|0),ea=Sp(u,1082848)|0,ea=pc[c[(c[ea>>2]|0)+28>>2]&63](ea,10)|0,Qp(u),zl(fa,ea)|0,il(fa)|0,If(fa,1)|0,!((a[v>>0]&1)==0)):0){Ys(c[Q>>2]|0)}ba=Z&49152;da=(ba|0)==0;if(da){ba=Z&63;ea=(c[d+(ba<<2)>>2]|0)!=0;fa=t;if((c[fa>>2]|0)==0&(c[fa+4>>2]|0)==0){ca=t+((c[d+((Z>>>6&63)<<2)>>2]&7)<<3)+16|0;fa=29920+(ba<<3)|0;ba=c[fa>>2]&c[ca>>2];ca=c[fa+4>>2]&c[ca+4>>2]}else{F=39}}else{ea=(ba|0)!=49152;F=39}if((F|0)==39){ba=(Rg(d,Z,t)|0)&1;ca=0}ba=(ba|0)!=0|(ca|0)!=0;if(ba){F=((Zg(d,Z)|0)>>31)+2&-2}else{F=0}ca=T+F|0;c[C>>2]=Z;if((aa|0)<64&(ea^1)){c[r+(aa<<2)>>2]=Z;aa=aa+1|0}Tg(d,Z,y,t,ba);do{if((!(M|$|ea|(Z|0)==(K|0))?(Z|0)!=(c[L>>2]|0):0)?(Z|0)!=(c[U>>2]|0):0){fa=a[((_|0)>63?63:_)+(1049352+(X<<12)+(N<<6))>>0]|0;c[Y>>2]=fa;ea=Z&63;F=c[d+(ea<<2)>>2]|0;if((c[1060480+(F<<8)+(ea<<2)>>2]|0)<0){fa=fa+1|0;c[Y>>2]=fa}if(!((Z|0)!=(c[A>>2]|0)?(Z|0)!=(c[J>>2]|0):0)){fa=fa+-2|0;fa=(fa|0)>0?fa:0;c[Y>>2]=fa}do{if(!((fa|0)==0|da^1)){if((F&7|0)==1){break}ea=(_g(d,ea<<6|Z>>>6&63)|0)<0;fa=c[Y>>2]|0;if(!ea){break}fa=fa+-2|0;fa=(fa|0)>0?fa:0;c[Y>>2]=fa}}while(0);ea=ca-fa|0;F=~g;da=0-g|0;ea=0-(zh(d,E,F,da,(ea|0)<2?2:ea,1)|0)|0;do{if((g|0)<(ea|0)){if((c[Y>>2]|0)<8){break}ea=ca+-4|0;ea=0-(zh(d,E,F,da,(ea|0)<2?2:ea,1)|0)|0}}while(0);if((ea|0)>(g|0)){fa=(c[Y>>2]|0)==0;c[Y>>2]=0;if(fa){F=69;break}else{ea=F;F=64;break}}else{c[Y>>2]=0;F=69;break}}else{F=61}}while(0);if((F|0)==61){if($){F=70}else{da=0-g|0;ea=~g;F=64}}do{if((F|0)==64){if((ca|0)>=2){ea=0-(zh(d,E,ea,da,ca,1)|0)|0;F=69;break}if(ba){ea=0-(Ah(d,E,ea,da,0)|0)|0;F=69;break}else{ea=0-(Bh(d,E,ea,da,0)|0)|0;F=69;break}}}while(0);if((F|0)==69){F=0;if($|(ea|0)>(g|0)){F=70}else{ba=ea}}do{if((F|0)==70){F=0;da=0-g|0;if((ca|0)>=2){ba=0-(Eh(d,E,W,da,ca,0)|0)|0;break}if(ba){ba=0-(Ch(d,E,W,da,0)|0)|0;break}else{ba=0-(Dh(d,E,W,da,0)|0)|0;break}}}while(0);Vg(d,Z);if((a[1022448]|0)!=0){k=0;F=113;break a}if(ji(D)|0){k=0;F=113;break a}da=c[255628]|0;ca=c[1022516>>2]|0;b:do{if((da|0)==(ca|0)){ca=da}else{do{if((c[c[da+8>>2]>>2]|0)==(Z|0)){ca=da;break b}da=da+20|0}while((da|0)!=(ca|0))}}while(0);da=(ba|0)>(g|0);do{if($|da){c[ca>>2]=ba;th(ca,d);if($){break}h[133080]=+h[133080]+1}else{c[ca>>2]=-32001}}while(0);do{if((ba|0)>(c[m>>2]|0)){c[m>>2]=ba;if(!da){break}c[n>>2]=Z;if((ba|0)<(j|0)){g=ba}else{F=95;break a}}}while(0);if((c[1074204>>2]|0)>(k|0)){break}if((mi(1074192,D)|0)==0){break}if((c[O>>2]|0)!=0?(a[(c[O>>2]|0)+56>>0]|0)!=0:0){break}if((c[P>>2]|0)>=8){break}ni(D,d,f,g,j,m,n,k,_,B,0,0);if((a[1022448]|0)!=0){k=0;F=113;break a}if(ji(D)|0){k=0;F=113;break a}if((c[m>>2]|0)>=(j|0)){F=95;break a}}else{_=$}}else{_=$}}while(0);Z=lg(B)|0;if((Z|0)==0){F=95;break}else{$=_}}if((F|0)==95){if((_|0)==0){F=96;break}g=c[m>>2]|0;if((g|0)<(j|0)){break}t=c[n>>2]|0;u=t&49152;if((u|0)==0){u=(c[d+((t&63)<<2)>>2]|0)!=0}else{u=(u|0)!=49152}if(u|s){break}Fh(d,f,t,k,r,aa+-1|0);g=c[m>>2]|0;break}else if((F|0)==113){i=l;return k|0}}else{F=96}}while(0);if((F|0)==96){do{if(!z){if(s){g=(c[q>>2]|0)+-32e3|0;break}else{g=c[1057880+(c[d+2212>>2]<<2)>>2]|0;break}}}while(0);c[m>>2]=g}d=c[q>>2]|0;if((g|0)>31879){d=d+g|0}else{d=g-((g|0)<-31879?d:0)|0}n=c[n>>2]|0;if((g|0)<(j|0)){j=(n|0)!=0?3:1}else{j=2}Ai(1074424,o,p,d,j,k,n,c[G>>2]|0);fa=c[m>>2]|0;i=l;return fa|0}function Oh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0;l=i;i=i+208|0;s=l+184|0;m=l+40|0;u=l+24|0;o=l+12|0;n=l;q=m+64|0;p=m+8|0;c[p>>2]=1004984;r=m+12|0;c[m>>2]=1005028;c[q>>2]=1005048;c[m+4>>2]=0;k=m+64|0;Ck(k,r);c[m+136>>2]=0;c[m+140>>2]=-1;c[m>>2]=1004964;c[q>>2]=1005004;c[p>>2]=1004984;c[r>>2]=1080120;j=m+16|0;Op(j);h=m+20|0;c[h+0>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[h+20>>2]=0;c[r>>2]=1005064;h=m+44|0;H=m+60|0;c[h+0>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[H>>2]=24;c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;ef(r,s);if(!((a[s>>0]&1)==0)){Ys(c[s+8>>2]|0)}Yb(s|0,0)|0;D=c[s>>2]|0;D=Vt(D|0,((D|0)<0)<<31>>31|0,1e3,0)|0;w=(c[s+4>>2]|0)/1e3|0;t=1024760;s=c[t>>2]|0;t=c[t+4>>2]|0;w=Jt(D|1|0,I|0,w|0,((w|0)<0)<<31>>31|0)|0;t=Ht(w|0,I|0,s|0,t|0)|0;s=I;a[u>>0]=14;w=u+1|0;a[w+0>>0]=a[1073808>>0]|0;a[w+1>>0]=a[1073809>>0]|0;a[w+2>>0]=a[1073810>>0]|0;a[w+3>>0]=a[1073811>>0]|0;a[w+4>>0]=a[1073812>>0]|0;a[w+5>>0]=a[1073813>>0]|0;a[w+6>>0]=a[1073814>>0]|0;w=u+8|0;a[w>>0]=0;D=Ii(Cc(1077312,u)|0)|0;C=((c[1022516>>2]|0)-(c[255628]|0)|0)/20|0;v=C>>>0<D>>>0?C:D;if(!((a[u>>0]&1)==0)){Ys(c[w>>2]|0)}u=c[1074196>>2]|0;w=c[268548]|0;if((u|0)==(w|0)){u=0}else{x=u-w>>2;y=0;u=0;do{H=c[(c[w+(y<<2)>>2]|0)+848>>2]|0;u=(H|0)>(u|0)?H:u;y=y+1|0}while(y>>>0<x>>>0)}if((v|0)!=0){y=(e|0)!=1;v=m+24|0;z=m+28|0;A=m+8|0;w=d+2200|0;x=o+8|0;d=d+2224|0;B=n+8|0;D=~D;C=~C;C=~(D>>>0>C>>>0?D:C);D=0;do{F=D>>>0<=(c[266144]|0)>>>0;if(y|F){E=c[255628]|0;E=c[(F?E+(D*20|0)|0:E+(D*20|0)+4|0)>>2]|0;G=c[v>>2]|0;H=c[z>>2]|0;if(G>>>0<H>>>0){G=H-G|0}else{G=gc[c[(c[r>>2]|0)+28>>2]&127](r)|0}if((G|0)!=0){Fc(A,1058088)|0}F=Fc(ul(Fc(ul(Fc(A,1064584)|0,((F^1)<<31>>31)+e|0)|0,1073896)|0,u)|0,1073912)|0;if((D|0)==(c[266144]|0)){ng(o,E,f,g);G=0;E=1}else{ng(o,E,-32001,32001);G=1;E=0}H=Fc(Ec(F,o)|0,1073920)|0;J=w;J=Fc(xl(H,c[J>>2]|0,c[J+4>>2]|0)|0,1073928)|0;H=w;H=Vt(c[H>>2]|0,c[H+4>>2]|0,1e3,0)|0;H=Wt(H|0,I|0,t|0,s|0)|0;F=D+1|0;Fc(vl(Fc(wl(Fc(xl(J,H,I)|0,1058168)|0,t,s)|0,1073936)|0,F)|0,1073952)|0;if(G?!((a[o>>0]&1)==0):0){Ys(c[x>>2]|0)}if(E?!((a[o>>0]&1)==0):0){Ys(c[x>>2]|0)}if((c[c[(c[255628]|0)+(D*20|0)+8>>2]>>2]|0)==0){D=F}else{E=0;do{J=Fc(A,1073960)|0;og(n,c[(c[(c[255628]|0)+(D*20|0)+8>>2]|0)+(E<<2)>>2]|0,(a[d>>0]|0)!=0);Ec(J,n)|0;if(!((a[n>>0]&1)==0)){Ys(c[B>>2]|0)}E=E+1|0}while((c[(c[(c[255628]|0)+(D*20|0)+8>>2]|0)+(E<<2)>>2]|0)!=0);D=F}}else{D=D+1|0}}while((D|0)!=(C|0))}df(b,r);c[m>>2]=1004964;c[q>>2]=1005004;c[p>>2]=1004984;f=m+12|0;c[f>>2]=1005064;if((a[h>>0]&1)==0){c[f>>2]=1080120;Qp(j);yk(k);i=l;return}Ys(c[m+52>>2]|0);c[f>>2]=1080120;Qp(j);yk(k);i=l;return}function Ph(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;h=i;i=i+96|0;j=h;y=h+80|0;r=h+76|0;z=h+72|0;A=h+68|0;s=h+64|0;l=h+60|0;u=h+56|0;x=h+52|0;w=h+48|0;v=h+44|0;t=h+40|0;m=h+36|0;n=h+32|0;o=h+28|0;p=h+24|0;q=h+20|0;if((e|0)==2){l=c[b>>2]|0;e=l+-20|0;c[b>>2]=e;p=c[a>>2]|0;if((c[e>>2]|0)<=(c[p>>2]|0)){i=h;return}q=p;b=c[q+4>>2]|0;o=j;c[o>>2]=c[q>>2];c[o+4>>2]=b;o=j+8|0;c[o>>2]=0;b=j+12|0;c[b>>2]=0;q=j+16|0;c[q>>2]=0;n=c[p+12>>2]|0;t=c[p+8>>2]|0;m=t;s=n-m|0;r=s>>2;if((r|0)!=0?(k=Vs(s)|0,c[b>>2]=k,c[o>>2]=k,c[q>>2]=k+(r<<2),(t|0)!=(n|0)):0){q=k;while(1){if((q|0)!=0){c[q>>2]=c[t>>2]}t=t+4|0;if((t|0)==(n|0)){break}else{q=q+4|0}}c[b>>2]=k+(((n+-4+(0-m)|0)>>>2)+1<<2)}y=e;z=c[y+4>>2]|0;A=p;c[A>>2]=c[y>>2];c[A+4>>2]=z;if((p|0)!=(e|0)){Gh(p+8|0,c[l+-12>>2]|0,c[l+-8>>2]|0)}y=j;z=c[y+4>>2]|0;A=e;c[A>>2]=c[y>>2];c[A+4>>2]=z;if((j|0)!=(e|0)){Gh(l+-12|0,c[o>>2]|0,c[b>>2]|0)}j=c[o>>2]|0;if((j|0)==0){i=h;return}k=c[b>>2]|0;if((k|0)!=(j|0)){c[b>>2]=k+(~((k+-4+(0-j)|0)>>>2)<<2)}Ys(j);i=h;return}else if((e|0)==1|(e|0)==0){i=h;return}else{if((e|0)<1){c[z>>2]=c[a>>2];c[A>>2]=c[b>>2];c[y+0>>2]=c[z+0>>2];c[j+0>>2]=c[A+0>>2];Qh(y,j,0);i=h;return}k=(e|0)/2|0;a=c[a>>2]|0;z=a+(k*20|0)|0;if((e|0)>(g|0)){c[v>>2]=a;c[t>>2]=z;c[y+0>>2]=c[v+0>>2];c[j+0>>2]=c[t+0>>2];Ph(y,j,d,k,f,g);c[m>>2]=z;x=c[b>>2]|0;c[n>>2]=x;A=e-k|0;c[y+0>>2]=c[m+0>>2];c[j+0>>2]=c[n+0>>2];Ph(y,j,d,A,f,g);c[o>>2]=a;c[p>>2]=z;c[q>>2]=x;c[r+0>>2]=c[o+0>>2];c[y+0>>2]=c[p+0>>2];c[j+0>>2]=c[q+0>>2];Th(r,y,j,d,k,A,f,g);i=h;return}c[s>>2]=a;c[l>>2]=z;c[y+0>>2]=c[s+0>>2];c[j+0>>2]=c[l+0>>2];Rh(y,j,d,k,f);c[u>>2]=z;c[x>>2]=c[b>>2];A=e-k|0;z=f+(k*20|0)|0;c[y+0>>2]=c[u+0>>2];c[j+0>>2]=c[x+0>>2];Rh(y,j,d,A,z);A=f+(e*20|0)|0;c[w>>2]=a;c[j+0>>2]=c[w+0>>2];Sh(f,z,z,A,j,0);if((f|0)==0|(e|0)==0){i=h;return}else{b=0}while(1){l=c[f+8>>2]|0;if((l|0)!=0){k=f+12|0;j=c[k>>2]|0;if((j|0)!=(l|0)){c[k>>2]=j+(~((j+-4+(0-l)|0)>>>2)<<2)}Ys(l)}b=b+1|0;if((b|0)==(e|0)){break}else{f=f+20|0}}i=h;return}}function Qh(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=i;i=i+32|0;h=d;p=c[a>>2]|0;j=c[b>>2]|0;if((p|0)==(j|0)){i=d;return}m=p+20|0;if((m|0)==(j|0)){i=d;return}k=h+8|0;j=h+12|0;l=h+16|0;while(1){r=m;n=c[r>>2]|0;r=c[r+4>>2]|0;o=h;c[o>>2]=n;c[o+4>>2]=r;c[k>>2]=0;c[j>>2]=0;c[l>>2]=0;o=p+32|0;p=p+28|0;r=(c[o>>2]|0)-(c[p>>2]|0)|0;q=r>>2;if((q|0)!=0?(e=Vs(r)|0,c[j>>2]=e,c[k>>2]=e,c[l>>2]=e+(q<<2),f=c[p>>2]|0,g=c[o>>2]|0,(f|0)!=(g|0)):0){q=g+-4|0;o=f;p=e;while(1){if((p|0)!=0){c[p>>2]=c[o>>2]}o=o+4|0;if((o|0)==(g|0)){break}else{p=p+4|0}}c[j>>2]=e+(((q+(0-f)|0)>>>2)+1<<2)}a:do{if((m|0)==(c[a>>2]|0)){o=m}else{o=m;while(1){p=o+-20|0;if((n|0)<=(c[p>>2]|0)){break a}n=p;q=c[n+4>>2]|0;r=o;c[r>>2]=c[n>>2];c[r+4>>2]=q;Gh(o+8|0,c[o+-12>>2]|0,c[o+-8>>2]|0);if((p|0)==(c[a>>2]|0)){o=p;break a}o=p;n=c[h>>2]|0}}}while(0);p=h;q=c[p+4>>2]|0;r=o;c[r>>2]=c[p>>2];c[r+4>>2]=q;if((o|0)!=(h|0)){Gh(o+8|0,c[k>>2]|0,c[j>>2]|0)}n=c[k>>2]|0;if((n|0)!=0){o=c[j>>2]|0;if((o|0)!=(n|0)){c[j>>2]=o+(~((o+-4+(0-n)|0)>>>2)<<2)}Ys(n)}n=m+20|0;if((n|0)==(c[b>>2]|0)){break}else{p=m;m=n}}i=d;return}function Rh(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;g=i;i=i+64|0;M=g+52|0;C=g+48|0;D=g+44|0;O=g+40|0;J=g+36|0;P=g+32|0;L=g+28|0;K=g+24|0;I=g+20|0;H=g+16|0;G=g+12|0;F=g+8|0;E=g+4|0;N=g;if((e|0)==1){if((f|0)==0){i=g;return}l=c[a>>2]|0;m=l;h=c[m+4>>2]|0;k=f;c[k>>2]=c[m>>2];c[k+4>>2]=h;k=f+8|0;c[k>>2]=0;h=f+12|0;c[h>>2]=0;m=f+16|0;c[m>>2]=0;j=l+12|0;l=l+8|0;f=(c[j>>2]|0)-(c[l>>2]|0)|0;n=f>>2;if((n|0)==0){i=g;return}f=Vs(f)|0;c[h>>2]=f;c[k>>2]=f;c[m>>2]=f+(n<<2);k=c[l>>2]|0;n=c[j>>2]|0;if((k|0)==(n|0)){i=g;return}m=n+-4|0;l=k;j=f;while(1){if((j|0)!=0){c[j>>2]=c[l>>2]}l=l+4|0;if((l|0)==(n|0)){break}else{j=j+4|0}}c[h>>2]=f+(((m+(0-k)|0)>>>2)+1<<2);i=g;return}else if((e|0)==0){i=g;return}else if((e|0)==2){C=c[b>>2]|0;D=C+-20|0;c[b>>2]=D;a=c[a>>2]|0;b=(f|0)==0;if((c[D>>2]|0)>(c[a>>2]|0)){if((!b?(B=D,m=c[B+4>>2]|0,z=f,c[z>>2]=c[B>>2],c[z+4>>2]=m,z=f+8|0,c[z>>2]=0,m=f+12|0,c[m>>2]=0,B=f+16|0,c[B>>2]=0,q=C+-8|0,s=C+-12|0,y=(c[q>>2]|0)-(c[s>>2]|0)|0,A=y>>2,(A|0)!=0):0)?(n=Vs(y)|0,c[m>>2]=n,c[z>>2]=n,c[B>>2]=n+(A<<2),o=c[s>>2]|0,p=c[q>>2]|0,(o|0)!=(p|0)):0){h=p+-4|0;j=o;k=n;while(1){if((k|0)!=0){c[k>>2]=c[j>>2]}j=j+4|0;if((j|0)==(p|0)){break}else{k=k+4|0}}c[m>>2]=n+(((h+(0-o)|0)>>>2)+1<<2)}l=a;h=c[l+4>>2]|0;k=f+20|0;c[k>>2]=c[l>>2];c[k+4>>2]=h;k=f+28|0;c[k>>2]=0;h=f+32|0;c[h>>2]=0;l=f+36|0;c[l>>2]=0;j=a+12|0;m=a+8|0;f=(c[j>>2]|0)-(c[m>>2]|0)|0;n=f>>2;if((n|0)==0){i=g;return}f=Vs(f)|0;c[h>>2]=f;c[k>>2]=f;c[l>>2]=f+(n<<2);k=c[m>>2]|0;m=c[j>>2]|0;if((k|0)==(m|0)){i=g;return}l=m+-4|0;j=k;n=f;while(1){if((n|0)!=0){c[n>>2]=c[j>>2]}j=j+4|0;if((j|0)==(m|0)){break}else{n=n+4|0}}c[h>>2]=f+(((l+(0-k)|0)>>>2)+1<<2);i=g;return}else{if((!b?(x=a,l=c[x+4>>2]|0,r=f,c[r>>2]=c[x>>2],c[r+4>>2]=l,r=f+8|0,c[r>>2]=0,l=f+12|0,c[l>>2]=0,x=f+16|0,c[x>>2]=0,v=a+12|0,w=a+8|0,t=(c[v>>2]|0)-(c[w>>2]|0)|0,u=t>>2,(u|0)!=0):0)?(k=Vs(t)|0,c[l>>2]=k,c[r>>2]=k,c[x>>2]=k+(u<<2),j=c[w>>2]|0,h=c[v>>2]|0,(j|0)!=(h|0)):0){m=h+-4|0;o=j;n=k;while(1){if((n|0)!=0){c[n>>2]=c[o>>2]}o=o+4|0;if((o|0)==(h|0)){break}else{n=n+4|0}}c[l>>2]=k+(((m+(0-j)|0)>>>2)+1<<2)}l=D;h=c[l+4>>2]|0;k=f+20|0;c[k>>2]=c[l>>2];c[k+4>>2]=h;k=f+28|0;c[k>>2]=0;h=f+32|0;c[h>>2]=0;l=f+36|0;c[l>>2]=0;j=C+-8|0;m=C+-12|0;f=(c[j>>2]|0)-(c[m>>2]|0)|0;n=f>>2;if((n|0)==0){i=g;return}f=Vs(f)|0;c[h>>2]=f;c[k>>2]=f;c[l>>2]=f+(n<<2);k=c[m>>2]|0;j=c[j>>2]|0;if((k|0)==(j|0)){i=g;return}l=j+-4|0;n=k;m=f;while(1){if((m|0)!=0){c[m>>2]=c[n>>2]}n=n+4|0;if((n|0)==(j|0)){break}else{m=m+4|0}}c[h>>2]=f+(((l+(0-k)|0)>>>2)+1<<2);i=g;return}}else{if((e|0)<9){c[J>>2]=c[a>>2];c[P>>2]=c[b>>2];c[C+0>>2]=c[J+0>>2];c[M+0>>2]=c[P+0>>2];Yh(C,M,f,0);i=g;return}else{B=(e|0)/2|0;a=c[a>>2]|0;J=a+(B*20|0)|0;c[L>>2]=a;c[K>>2]=J;c[C+0>>2]=c[L+0>>2];c[M+0>>2]=c[K+0>>2];Ph(C,M,d,B,f,B);c[I>>2]=J;P=c[b>>2]|0;c[H>>2]=P;e=e-B|0;L=f+(B*20|0)|0;c[C+0>>2]=c[I+0>>2];c[M+0>>2]=c[H+0>>2];Ph(C,M,d,e,L,e);c[G>>2]=a;c[F>>2]=J;c[E>>2]=J;c[N>>2]=P;c[O+0>>2]=c[G+0>>2];c[D+0>>2]=c[F+0>>2];c[C+0>>2]=c[E+0>>2];c[M+0>>2]=c[N+0>>2];Zh(O,D,C,M,f,0);i=g;return}}}function Sh(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0;g=i;a:do{if((a|0)!=(b|0)){while(1){if((d|0)==(e|0)){break}h=c[f>>2]|0;if((c[d>>2]|0)>(c[a>>2]|0)){l=d;k=c[l+4>>2]|0;j=h;c[j>>2]=c[l>>2];c[j+4>>2]=k;if((h|0)!=(d|0)){Gh(h+8|0,c[d+8>>2]|0,c[d+12>>2]|0)}d=d+20|0}else{j=a;k=c[j+4>>2]|0;l=h;c[l>>2]=c[j>>2];c[l+4>>2]=k;if((h|0)!=(a|0)){Gh(h+8|0,c[a+8>>2]|0,c[a+12>>2]|0)}a=a+20|0}c[f>>2]=h+20;if((a|0)==(b|0)){break a}}if((a|0)==(b|0)){i=g;return}e=c[f>>2]|0;do{j=a;k=c[j+4>>2]|0;l=e;c[l>>2]=c[j>>2];c[l+4>>2]=k;if((e|0)!=(a|0)){Gh(e+8|0,c[a+8>>2]|0,c[a+12>>2]|0);e=c[f>>2]|0}a=a+20|0;e=e+20|0;c[f>>2]=e}while((a|0)!=(b|0));i=g;return}}while(0);if((d|0)==(e|0)){i=g;return}b=c[f>>2]|0;do{j=d;k=c[j+4>>2]|0;l=b;c[l>>2]=c[j>>2];c[l+4>>2]=k;if((b|0)!=(d|0)){Gh(b+8|0,c[d+8>>2]|0,c[d+12>>2]|0);b=c[f>>2]|0}d=d+20|0;b=b+20|0;c[f>>2]=b}while((d|0)!=(e|0));i=g;return}function Th(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;k=i;i=i+80|0;l=k;s=k+76|0;r=k+72|0;B=k+68|0;A=k+64|0;z=k+60|0;p=k+56|0;t=k+52|0;q=k+48|0;C=k+44|0;x=k+40|0;w=k+36|0;u=k+32|0;D=k+28|0;y=k+24|0;v=k+20|0;if((g|0)==0){i=k;return}a:while(1){if((f|0)==0){j=46;break}n=c[b>>2]|0;E=c[n>>2]|0;o=c[a>>2]|0;while(1){if((E|0)>(c[o>>2]|0)){break}o=o+20|0;c[a>>2]=o;f=f+-1|0;if((f|0)==0){j=46;break a}}if(!((f|0)>(j|0)&(g|0)>(j|0))){j=8;break}if((f|0)<(g|0)){G=(g|0)/2|0;F=n+(G*20|0)|0;H=o;if((n|0)==(o|0)){J=n}else{E=c[F>>2]|0;J=o;I=(n-H|0)/20|0;do{K=(I|0)/2|0;if((E|0)>(c[J+(K*20|0)>>2]|0)){I=K}else{J=J+((K+1|0)*20|0)|0;I=I+-1-K|0}}while((I|0)!=0)}E=J;H=(J-H|0)/20|0}else{if((f|0)==1){j=17;break}H=(f|0)/2|0;E=o+(H*20|0)|0;J=c[d>>2]|0;G=n;if((J|0)==(n|0)){I=n}else{F=c[E>>2]|0;I=n;J=(J-G|0)/20|0;do{K=(J|0)/2|0;if((c[I+(K*20|0)>>2]|0)>(F|0)){I=I+((K+1|0)*20|0)|0;J=J+-1-K|0}else{J=K}}while((J|0)!=0)}F=I;G=(I-G|0)/20|0}f=f-H|0;g=g-G|0;do{if((E|0)!=(n|0)){if((n|0)==(F|0)){c[C>>2]=E;n=E;break}else{c[B>>2]=E;c[A>>2]=n;c[z>>2]=F;c[r+0>>2]=c[B+0>>2];c[s+0>>2]=c[A+0>>2];c[l+0>>2]=c[z+0>>2];Vh(C,r,s,l);n=c[C>>2]|0;break}}else{c[C>>2]=F;n=F}}while(0);c[b>>2]=n;if((G+H|0)<(g+f|0)){c[x>>2]=o;c[w>>2]=E;c[u>>2]=n;c[r+0>>2]=c[x+0>>2];c[s+0>>2]=c[w+0>>2];c[l+0>>2]=c[u+0>>2];Th(r,s,l,e,H,G,h,j);c[a>>2]=n;E=F}else{c[D>>2]=n;c[y>>2]=F;c[v>>2]=c[d>>2];c[r+0>>2]=c[D+0>>2];c[s+0>>2]=c[y+0>>2];c[l+0>>2]=c[v+0>>2];Th(r,s,l,e,f,g,h,j);c[d>>2]=n;f=H;g=G}c[b>>2]=E;if((g|0)==0){j=46;break}}if((j|0)==8){c[p>>2]=o;c[t>>2]=n;c[q>>2]=c[d>>2];c[r+0>>2]=c[p+0>>2];c[s+0>>2]=c[t+0>>2];c[l+0>>2]=c[q+0>>2];Uh(r,s,l,e,f,g,h);i=k;return}else if((j|0)==17){h=o;d=c[h+4>>2]|0;p=l;c[p>>2]=c[h>>2];c[p+4>>2]=d;p=l+8|0;c[p>>2]=0;d=l+12|0;c[d>>2]=0;h=l+16|0;c[h>>2]=0;q=c[o+12>>2]|0;s=c[o+8>>2]|0;r=s;t=q-r|0;e=t>>2;if((e|0)!=0?(m=Vs(t)|0,c[d>>2]=m,c[p>>2]=m,c[h>>2]=m+(e<<2),(s|0)!=(q|0)):0){h=m;while(1){if((h|0)!=0){c[h>>2]=c[s>>2]}s=s+4|0;if((s|0)==(q|0)){break}else{h=h+4|0}}c[d>>2]=m+(((q+-4+(0-r)|0)>>>2)+1<<2)}I=n;J=c[I+4>>2]|0;K=o;c[K>>2]=c[I>>2];c[K+4>>2]=J;if((o|0)!=(n|0)){Gh(o+8|0,c[n+8>>2]|0,c[n+12>>2]|0)}I=l;J=c[I+4>>2]|0;K=n;c[K>>2]=c[I>>2];c[K+4>>2]=J;if((l|0)!=(n|0)){Gh(n+8|0,c[p>>2]|0,c[d>>2]|0)}l=c[p>>2]|0;if((l|0)==0){i=k;return}m=c[d>>2]|0;if((m|0)!=(l|0)){c[d>>2]=m+(~((m+-4+(0-l)|0)>>>2)<<2)}Ys(l);i=k;return}else if((j|0)==46){i=k;return}}function Uh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;j=i;i=i+128|0;n=j+120|0;k=j+112|0;o=j+104|0;l=j+96|0;m=j+88|0;s=j+80|0;t=j+76|0;u=j+72|0;v=j+68|0;w=j+64|0;x=j+60|0;y=j+56|0;C=j+24|0;r=j+16|0;q=j+8|0;p=j;B=j+48|0;A=j+40|0;z=j+32|0;if((f|0)>(g|0)){u=c[b>>2]|0;if((u|0)==(c[d>>2]|0)){v=0;d=u;t=h}else{v=0;t=h;do{if(((t|0)!=0?(K=u,G=c[K+4>>2]|0,I=t,c[I>>2]=c[K>>2],c[I+4>>2]=G,I=t+8|0,c[I>>2]=0,G=t+12|0,c[G>>2]=0,K=t+16|0,c[K>>2]=0,M=u+12|0,L=u+8|0,H=(c[M>>2]|0)-(c[L>>2]|0)|0,J=H>>2,(J|0)!=0):0)?(D=Vs(H)|0,c[G>>2]=D,c[I>>2]=D,c[K>>2]=D+(J<<2),E=c[L>>2]|0,F=c[M>>2]|0,(E|0)!=(F|0)):0){x=F+-4|0;y=E;w=D;while(1){if((w|0)!=0){c[w>>2]=c[y>>2]}y=y+4|0;if((y|0)==(F|0)){break}else{w=w+4|0}}c[G>>2]=D+(((x+(0-E)|0)>>>2)+1<<2)}v=v+1|0;u=u+20|0;t=t+20|0}while((u|0)!=(c[d>>2]|0));d=c[b>>2]|0}f=d;g=C;c[g>>2]=f;c[g+4>>2]=f;g=c[a>>2]|0;f=r;c[f>>2]=g;c[f+4>>2]=g;f=t;g=q;c[g>>2]=f;c[g+4>>2]=f;g=h;f=p;c[f>>2]=g;c[f+4>>2]=g;c[B>>2]=u;c[B+4>>2]=u;c[A>>2]=e;c[s+0>>2]=c[C+0>>2];c[s+4>>2]=c[C+4>>2];c[m+0>>2]=c[r+0>>2];c[m+4>>2]=c[r+4>>2];c[l+0>>2]=c[q+0>>2];c[l+4>>2]=c[q+4>>2];c[o+0>>2]=c[p+0>>2];c[o+4>>2]=c[p+4>>2];c[k+0>>2]=c[B+0>>2];c[k+4>>2]=c[B+4>>2];c[n+0>>2]=c[A+0>>2];Xh(z,s,m,l,o,k,n)}else{q=c[a>>2]|0;if((q|0)==(c[b>>2]|0)){z=0;b=q;a=q;p=h}else{z=0;p=h;do{if(((p|0)!=0?(U=q,Q=c[U+4>>2]|0,S=p,c[S>>2]=c[U>>2],c[S+4>>2]=Q,S=p+8|0,c[S>>2]=0,Q=p+12|0,c[Q>>2]=0,U=p+16|0,c[U>>2]=0,W=q+12|0,V=q+8|0,R=(c[W>>2]|0)-(c[V>>2]|0)|0,T=R>>2,(T|0)!=0):0)?(N=Vs(R)|0,c[Q>>2]=N,c[S>>2]=N,c[U>>2]=N+(T<<2),O=c[V>>2]|0,P=c[W>>2]|0,(O|0)!=(P|0)):0){s=P+-4|0;r=O;e=N;while(1){if((e|0)!=0){c[e>>2]=c[r>>2]}r=r+4|0;if((r|0)==(P|0)){break}else{e=e+4|0}}c[Q>>2]=N+(((s+(0-O)|0)>>>2)+1<<2)}z=z+1|0;q=q+20|0;p=p+20|0}while((q|0)!=(c[b>>2]|0));b=q;a=c[a>>2]|0}c[t>>2]=h;c[u>>2]=p;c[v>>2]=b;c[w>>2]=c[d>>2];c[x>>2]=a;c[m+0>>2]=c[t+0>>2];c[l+0>>2]=c[u+0>>2];c[o+0>>2]=c[v+0>>2];c[k+0>>2]=c[w+0>>2];c[n+0>>2]=c[x+0>>2];Wh(y,m,l,o,k,n,0);v=z}if((h|0)==0|(v|0)==0){i=j;return}else{m=v;k=0}while(1){l=c[h+8>>2]|0;if((l|0)!=0){m=h+12|0;n=c[m>>2]|0;if((n|0)!=(l|0)){c[m>>2]=n+(~((n+-4+(0-l)|0)>>>2)<<2)}Ys(l);m=v}k=k+1|0;if(!(k>>>0<m>>>0)){break}else{h=h+20|0}}i=j;return}function Vh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=i;i=i+32|0;f=g;m=f+8|0;l=f+12|0;j=f+16|0;n=c[d>>2]|0;q=c[b>>2]|0;while(1){o=q;s=c[o+4>>2]|0;p=f;c[p>>2]=c[o>>2];c[p+4>>2]=s;c[m>>2]=0;c[l>>2]=0;c[j>>2]=0;p=c[q+12>>2]|0;s=c[q+8>>2]|0;o=s;t=p-o|0;r=t>>2;if((r|0)!=0?(k=Vs(t)|0,c[l>>2]=k,c[m>>2]=k,c[j>>2]=k+(r<<2),(s|0)!=(p|0)):0){r=k;while(1){if((r|0)!=0){c[r>>2]=c[s>>2]}s=s+4|0;if((s|0)==(p|0)){break}else{r=r+4|0}}c[l>>2]=k+(((p+-4+(0-o)|0)>>>2)+1<<2)}r=n;s=c[r+4>>2]|0;t=q;c[t>>2]=c[r>>2];c[t+4>>2]=s;if((q|0)!=(n|0)){Gh(q+8|0,c[n+8>>2]|0,c[n+12>>2]|0)}r=f;s=c[r+4>>2]|0;t=n;c[t>>2]=c[r>>2];c[t+4>>2]=s;if((f|0)!=(n|0)){Gh(n+8|0,c[m>>2]|0,c[l>>2]|0)}o=c[m>>2]|0;if((o|0)!=0){p=c[l>>2]|0;if((p|0)!=(o|0)){c[l>>2]=p+(~((p+-4+(0-o)|0)>>>2)<<2)}Ys(o)}q=(c[b>>2]|0)+20|0;c[b>>2]=q;n=n+20|0;if((n|0)==(c[e>>2]|0)){break}if((q|0)!=(c[d>>2]|0)){continue}c[d>>2]=n}c[a>>2]=q;l=c[d>>2]|0;if((q|0)==(l|0)){i=g;return}j=f+8|0;a=f+12|0;k=f+16|0;while(1){m=q;o=c[m+4>>2]|0;n=f;c[n>>2]=c[m>>2];c[n+4>>2]=o;c[j>>2]=0;c[a>>2]=0;c[k>>2]=0;n=c[q+12>>2]|0;o=c[q+8>>2]|0;m=o;r=n-m|0;p=r>>2;if((p|0)!=0?(h=Vs(r)|0,c[a>>2]=h,c[j>>2]=h,c[k>>2]=h+(p<<2),(o|0)!=(n|0)):0){p=h;while(1){if((p|0)!=0){c[p>>2]=c[o>>2]}o=o+4|0;if((o|0)==(n|0)){break}else{p=p+4|0}}c[a>>2]=h+(((n+-4+(0-m)|0)>>>2)+1<<2)}r=l;s=c[r+4>>2]|0;t=q;c[t>>2]=c[r>>2];c[t+4>>2]=s;if((q|0)!=(l|0)){Gh(q+8|0,c[l+8>>2]|0,c[l+12>>2]|0)}r=f;s=c[r+4>>2]|0;t=l;c[t>>2]=c[r>>2];c[t+4>>2]=s;if((f|0)!=(l|0)){Gh(l+8|0,c[j>>2]|0,c[a>>2]|0)}n=c[j>>2]|0;if((n|0)!=0){m=c[a>>2]|0;if((m|0)!=(n|0)){c[a>>2]=m+(~((m+-4+(0-n)|0)>>>2)<<2)}Ys(n)}q=(c[b>>2]|0)+20|0;c[b>>2]=q;n=l+20|0;l=c[d>>2]|0;m=(q|0)==(l|0);if((n|0)==(c[e>>2]|0)){if(m){break}else{continue}}if(!m){l=n;continue}c[d>>2]=n;l=n}i=g;return}function Wh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;h=i;k=c[b>>2]|0;d=c[d>>2]|0;j=c[e>>2]|0;f=c[f>>2]|0;a:do{if((k|0)==(d|0)){l=c[g>>2]|0}else{while(1){if((j|0)==(f|0)){break}l=c[g>>2]|0;if((c[j>>2]|0)>(c[k>>2]|0)){o=j;n=c[o+4>>2]|0;m=l;c[m>>2]=c[o>>2];c[m+4>>2]=n;if((l|0)!=(j|0)){Gh(l+8|0,c[j+8>>2]|0,c[j+12>>2]|0)}j=j+20|0;c[e>>2]=j}else{m=k;n=c[m+4>>2]|0;o=l;c[o>>2]=c[m>>2];c[o+4>>2]=n;if((l|0)!=(k|0)){Gh(l+8|0,c[k+8>>2]|0,c[k+12>>2]|0)}k=k+20|0;c[b>>2]=k}l=l+20|0;c[g>>2]=l;if((k|0)==(d|0)){break a}}f=c[g>>2]|0;if((k|0)!=(d|0)){do{m=k;n=c[m+4>>2]|0;o=f;c[o>>2]=c[m>>2];c[o+4>>2]=n;if((f|0)==(k|0)){k=f}else{Gh(f+8|0,c[k+8>>2]|0,c[k+12>>2]|0)}k=k+20|0;f=f+20|0}while((k|0)!=(d|0))}c[a>>2]=f;i=h;return}}while(0);if((j|0)!=(f|0)){do{m=j;n=c[m+4>>2]|0;o=l;c[o>>2]=c[m>>2];c[o+4>>2]=n;if((l|0)==(j|0)){j=l}else{Gh(l+8|0,c[j+8>>2]|0,c[j+12>>2]|0)}j=j+20|0;l=l+20|0}while((j|0)!=(f|0))}c[a>>2]=l;i=h;return}function Xh(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;p=c[b+4>>2]|0;r=p;o=c[d+4>>2]|0;q=c[e+4>>2]|0;a:do{if((r|0)!=(o|0)){k=e+4|0;j=b+4|0;l=g+4|0;m=b+4|0;n=g+4|0;while(1){if((q|0)==(c[f+4>>2]|0)){break}r=c[k>>2]|0;t=r+-20|0;c[e>>2]=t;q=c[j>>2]|0;o=q+-20|0;c[b>>2]=o;u=(c[t>>2]|0)>(c[o>>2]|0);s=c[l>>2]|0;p=s+-20|0;c[g>>2]=p;if(u){c[b>>2]=o;r=o;t=c[r+4>>2]|0;u=p;c[u>>2]=c[r>>2];c[u+4>>2]=t;if((s|0)!=(q|0)){Gh(s+-12|0,c[q+-12>>2]|0,c[q+-8>>2]|0)}c[m>>2]=(c[m>>2]|0)+-20}else{c[e>>2]=t;q=t;t=c[q+4>>2]|0;u=p;c[u>>2]=c[q>>2];c[u+4>>2]=t;if((s|0)!=(r|0)){Gh(s+-12|0,c[r+-12>>2]|0,c[r+-8>>2]|0)}c[k>>2]=(c[k>>2]|0)+-20}c[n>>2]=(c[n>>2]|0)+-20;p=c[b+4>>2]|0;r=p;o=c[d+4>>2]|0;q=c[e+4>>2]|0;if((r|0)==(o|0)){break a}}f=c[g+4>>2]|0;if((r|0)==(o|0)){g=c[g>>2]|0}else{do{g=f+-20|0;b=p;p=b+-20|0;s=p;t=c[s+4>>2]|0;u=g;c[u>>2]=c[s>>2];c[u+4>>2]=t;if((f|0)!=(b|0)){Gh(f+-12|0,c[b+-12>>2]|0,c[b+-8>>2]|0)}f=g}while((p|0)!=(o|0))}u=a;c[u>>2]=g;c[u+4>>2]=f;i=h;return}}while(0);b=c[g+4>>2]|0;f=c[f+4>>2]|0;if((q|0)==(f|0)){g=c[g>>2]|0}else{do{g=b+-20|0;d=q;q=q+-20|0;s=q;t=c[s+4>>2]|0;u=g;c[u>>2]=c[s>>2];c[u+4>>2]=t;if((b|0)!=(d|0)){Gh(b+-12|0,c[d+-12>>2]|0,c[d+-8>>2]|0)}b=g}while((q|0)!=(f|0))}u=a;c[u>>2]=g;c[u+4>>2]=b;i=h;return}function Yh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,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=i;o=c[a>>2]|0;n=c[b>>2]|0;if((o|0)==(n|0)){i=e;return}if((d|0)!=0){v=o;r=c[v+4>>2]|0;t=d;c[t>>2]=c[v>>2];c[t+4>>2]=r;t=d+8|0;c[t>>2]=0;r=d+12|0;c[r>>2]=0;v=d+16|0;c[v>>2]=0;x=o+12|0;w=o+8|0;s=(c[x>>2]|0)-(c[w>>2]|0)|0;u=s>>2;if((u|0)!=0?(q=Vs(s)|0,c[r>>2]=q,c[t>>2]=q,c[v>>2]=q+(u<<2),p=c[w>>2]|0,m=c[x>>2]|0,(p|0)!=(m|0)):0){s=m+-4|0;u=p;t=q;while(1){if((t|0)!=0){c[t>>2]=c[u>>2]}u=u+4|0;if((u|0)==(m|0)){break}else{t=t+4|0}}c[r>>2]=q+(((s+(0-p)|0)>>>2)+1<<2);m=d}else{m=d}}else{m=0}p=o+20|0;c[a>>2]=p;if((p|0)==(n|0)){i=e;return}do{n=m;m=m+20|0;if((c[p>>2]|0)>(c[n>>2]|0)){r=n;o=c[r+4>>2]|0;t=m;c[t>>2]=c[r>>2];c[t+4>>2]=o;t=n+28|0;c[t>>2]=0;o=n+32|0;c[o>>2]=0;r=n+36|0;c[r>>2]=0;p=n+12|0;q=n+8|0;u=(c[p>>2]|0)-(c[q>>2]|0)|0;s=u>>2;if((s|0)!=0?(h=Vs(u)|0,c[o>>2]=h,c[t>>2]=h,c[r>>2]=h+(s<<2),l=c[q>>2]|0,g=c[p>>2]|0,(l|0)!=(g|0)):0){p=g+-4|0;r=l;q=h;while(1){if((q|0)!=0){c[q>>2]=c[r>>2]}r=r+4|0;if((r|0)==(g|0)){break}else{q=q+4|0}}c[o>>2]=h+(((p+(0-l)|0)>>>2)+1<<2)}a:do{if((n|0)==(d|0)){n=d}else{while(1){o=n;n=n+-20|0;if((c[c[a>>2]>>2]|0)<=(c[n>>2]|0)){n=o;break a}v=n;w=c[v+4>>2]|0;x=o;c[x>>2]=c[v>>2];c[x+4>>2]=w;Gh(o+8|0,c[o+-12>>2]|0,c[o+-8>>2]|0);if((n|0)==(d|0)){n=d;break}}}}while(0);o=c[a>>2]|0;v=o;w=c[v+4>>2]|0;x=n;c[x>>2]=c[v>>2];c[x+4>>2]=w;if((n|0)!=(o|0)){Gh(n+8|0,c[o+8>>2]|0,c[o+12>>2]|0)}}else{r=p;p=c[r+4>>2]|0;q=m;c[q>>2]=c[r>>2];c[q+4>>2]=p;q=n+28|0;c[q>>2]=0;p=n+32|0;c[p>>2]=0;r=n+36|0;
+c[r>>2]=0;n=o+32|0;o=o+28|0;t=(c[n>>2]|0)-(c[o>>2]|0)|0;s=t>>2;if((s|0)!=0?(j=Vs(t)|0,c[p>>2]=j,c[q>>2]=j,c[r>>2]=j+(s<<2),k=c[o>>2]|0,f=c[n>>2]|0,(k|0)!=(f|0)):0){q=f+-4|0;n=k;o=j;while(1){if((o|0)!=0){c[o>>2]=c[n>>2]}n=n+4|0;if((n|0)==(f|0)){break}else{o=o+4|0}}c[p>>2]=j+(((q+(0-k)|0)>>>2)+1<<2)}}o=c[a>>2]|0;p=o+20|0;c[a>>2]=p}while((p|0)!=(c[b>>2]|0));i=e;return}function Zh(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;g=i;W=c[a>>2]|0;X=c[b>>2]|0;a:do{if((W|0)!=(X|0)){while(1){Y=c[d>>2]|0;if((Y|0)==(c[e>>2]|0)){break}X=(f|0)==0;if((c[Y>>2]|0)>(c[W>>2]|0)){if((!X?(E=Y,T=c[E+4>>2]|0,U=f,c[U>>2]=c[E>>2],c[U+4>>2]=T,U=f+8|0,c[U>>2]=0,T=f+12|0,c[T>>2]=0,E=f+16|0,c[E>>2]=0,D=Y+12|0,O=Y+8|0,S=(c[D>>2]|0)-(c[O>>2]|0)|0,V=S>>2,(V|0)!=0):0)?(R=Vs(S)|0,c[T>>2]=R,c[U>>2]=R,c[E>>2]=R+(V<<2),Q=c[O>>2]|0,P=c[D>>2]|0,(Q|0)!=(P|0)):0){Y=P+-4|0;X=Q;W=R;while(1){if((W|0)!=0){c[W>>2]=c[X>>2]}X=X+4|0;if((X|0)==(P|0)){break}else{W=W+4|0}}c[T>>2]=R+(((Y+(0-Q)|0)>>>2)+1<<2)}c[d>>2]=(c[d>>2]|0)+20;W=c[a>>2]|0}else{if((!X?(M=W,I=c[M+4>>2]|0,K=f,c[K>>2]=c[M>>2],c[K+4>>2]=I,K=f+8|0,c[K>>2]=0,I=f+12|0,c[I>>2]=0,M=f+16|0,c[M>>2]=0,C=W+12|0,N=W+8|0,J=(c[C>>2]|0)-(c[N>>2]|0)|0,L=J>>2,(L|0)!=0):0)?(F=Vs(J)|0,c[I>>2]=F,c[K>>2]=F,c[M>>2]=F+(L<<2),G=c[N>>2]|0,H=c[C>>2]|0,(G|0)!=(H|0)):0){Y=H+-4|0;W=G;X=F;while(1){if((X|0)!=0){c[X>>2]=c[W>>2]}W=W+4|0;if((W|0)==(H|0)){break}else{X=X+4|0}}c[I>>2]=F+(((Y+(0-G)|0)>>>2)+1<<2)}W=(c[a>>2]|0)+20|0;c[a>>2]=W}f=f+20|0;X=c[b>>2]|0;if((W|0)==(X|0)){break a}}if((W|0)==(X|0)){i=g;return}while(1){if(((f|0)!=0?(z=W,w=c[z+4>>2]|0,s=f,c[s>>2]=c[z>>2],c[s+4>>2]=w,s=f+8|0,c[s>>2]=0,w=f+12|0,c[w>>2]=0,z=f+16|0,c[z>>2]=0,B=W+12|0,A=W+8|0,v=(c[B>>2]|0)-(c[A>>2]|0)|0,y=v>>2,(y|0)!=0):0)?(u=Vs(v)|0,c[w>>2]=u,c[s>>2]=u,c[z>>2]=u+(y<<2),t=c[A>>2]|0,x=c[B>>2]|0,(t|0)!=(x|0)):0){h=x+-4|0;j=t;k=u;while(1){if((k|0)!=0){c[k>>2]=c[j>>2]}j=j+4|0;if((j|0)==(x|0)){break}else{k=k+4|0}}c[w>>2]=u+(((h+(0-t)|0)>>>2)+1<<2)}W=(c[a>>2]|0)+20|0;c[a>>2]=W;if((W|0)==(c[b>>2]|0)){break}else{f=f+20|0}}i=g;return}}while(0);s=c[d>>2]|0;if((s|0)==(c[e>>2]|0)){i=g;return}while(1){if(((f|0)!=0?(o=s,l=c[o+4>>2]|0,m=f,c[m>>2]=c[o>>2],c[m+4>>2]=l,m=f+8|0,c[m>>2]=0,l=f+12|0,c[l>>2]=0,o=f+16|0,c[o>>2]=0,q=s+12|0,p=s+8|0,k=(c[q>>2]|0)-(c[p>>2]|0)|0,n=k>>2,(n|0)!=0):0)?(j=Vs(k)|0,c[l>>2]=j,c[m>>2]=j,c[o>>2]=j+(n<<2),r=c[p>>2]|0,h=c[q>>2]|0,(r|0)!=(h|0)):0){b=h+-4|0;t=r;s=j;while(1){if((s|0)!=0){c[s>>2]=c[t>>2]}t=t+4|0;if((t|0)==(h|0)){break}else{s=s+4|0}}c[l>>2]=j+(((b+(0-r)|0)>>>2)+1<<2)}s=(c[d>>2]|0)+20|0;c[d>>2]=s;if((s|0)==(c[e>>2]|0)){break}else{f=f+20|0}}i=g;return}function _h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;f=i;g=c[(c[a>>2]|0)+-12>>2]|0;b=a+g|0;c[b>>2]=1074076;d=a+(g+104)|0;c[d>>2]=1074096;h=a+(g+68)|0;j=c[h>>2]|0;e=a+(g+4)|0;do{if((j|0)!=0){k=gc[c[(c[e>>2]|0)+24>>2]&127](e)|0;if((yb(j|0)|0)==0?(c[h>>2]=0,(k|0)==0):0){break}k=c[(c[b>>2]|0)+-12>>2]|0;xk(a+(k+g)|0,c[a+(g+16+k)>>2]|4)}}while(0);c[b>>2]=1074116;c[d>>2]=1074136;Oc(e);yk(d);i=f;return}function $h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;c[a>>2]=1074076;b=a+104|0;c[b>>2]=1074096;f=a+68|0;g=c[f>>2]|0;d=a+4|0;do{if((g|0)!=0){h=gc[c[(c[d>>2]|0)+24>>2]&127](d)|0;if((yb(g|0)|0)==0?(c[f>>2]=0,(h|0)==0):0){break}h=c[(c[a>>2]|0)+-12>>2]|0;xk(a+h|0,c[a+(h+16)>>2]|4)}}while(0);c[a>>2]=1074116;c[b>>2]=1074136;Oc(d);yk(a+104|0);Ys(a);i=e;return}function ai(a){a=a|0;var b=0;b=i;$h(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);i=b;return}function bi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;c[a>>2]=-32001;c[a+4>>2]=-32001;d=a+8|0;c[d>>2]=0;e=a+12|0;c[e>>2]=0;a=a+16|0;c[a>>2]=0;j=Vs(4)|0;h=j+4|0;if((j|0)!=0){c[j>>2]=b}c[d>>2]=j;c[e>>2]=j+4;c[a>>2]=h;b=c[d>>2]|0;h=h-b|0;k=h>>2;j=k+1|0;if(k>>>0<536870911){m=h>>1;m=m>>>0<j>>>0?j:m;if((m|0)==0){l=0;m=0}else{g=5}}else{m=1073741823;g=5}if((g|0)==5){l=m;m=Vs(m<<2)|0}g=m+(k<<2)|0;if((g|0)!=0){c[g>>2]=0}Nt(m|0,b|0,h|0)|0;c[d>>2]=m;c[e>>2]=m+(j<<2);c[a>>2]=m+(l<<2);if((b|0)==0){i=f;return}Ys(b);i=f;return}function ci(){var a=0,b=0,d=0;a=i;d=1022456|0;b=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(b|0));Sa(209,1022456,p|0)|0;c[255628]=0;c[1022516>>2]=0;c[1022520>>2]=0;Sa(210,1022512,p|0)|0;c[256192]=0;Sa(211,1024768,p|0)|0;b=1024776;do{c[b>>2]=0;c[b+4>>2]=0;b=b+8|0}while((b|0)!=(1032968|0));b=1032968;do{c[b>>2]=0;c[b+4>>2]=0;b=b+8|0}while((b|0)!=(1041160|0));i=a;return}function di(a){a=a|0;var b=0,d=0,e=0;b=i;d=c[a>>2]|0;if((d|0)==0){i=b;return}a=a+4|0;e=c[a>>2]|0;if((e|0)!=(d|0)){c[a>>2]=e+(~((e+-4+(0-d)|0)>>>2)<<2)}Ys(d);i=b;return}function ei(a){a=a|0;return}function fi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+128|0;e=d;c[b>>2]=1068752;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;a[b+16>>0]=0;c[b>>2]=1060464;g=b+60|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;g=b+156|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;g=b+252|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;g=b+348|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;g=b+444|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;g=b+540|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;g=b+636|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;g=b+732|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;g=b+796|0;h=Vs(262144)|0;c[g>>2]=h;c[b+792>>2]=h;c[b+800>>2]=h+262144;f=8192;do{if((h|0)==0){h=0}else{c[h+0>>2]=c[e+0>>2];c[h+4>>2]=c[e+4>>2];c[h+8>>2]=c[e+8>>2];c[h+12>>2]=c[e+12>>2];c[h+16>>2]=c[e+16>>2];c[h+20>>2]=c[e+20>>2];c[h+24>>2]=c[e+24>>2];c[h+28>>2]=c[e+28>>2];h=c[g>>2]|0}h=h+32|0;c[g>>2]=h;f=f+-1|0}while((f|0)!=0);rd(b+804|0);k=e+0|0;j=k+120|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(j|0));g=b+832|0;h=Vs(1966080)|0;c[g>>2]=h;c[b+828>>2]=h;c[b+836>>2]=h+1966080;f=16384;do{if((h|0)==0){h=0}else{k=h+0|0;h=e+0|0;j=k+120|0;do{c[k>>2]=c[h>>2];k=k+4|0;h=h+4|0}while((k|0)<(j|0));h=c[g>>2]|0}h=h+120|0;c[g>>2]=h;f=f+-1|0}while((f|0)!=0);a[b+860>>0]=0;k=b+856|0;c[k>>2]=0;c[b+848>>2]=c[k>>2];c[b+852>>2]=0;c[b+840>>2]=0;c[b+844>>2]=(c[1074196>>2]|0)-(c[268548]|0)>>2;i=d;return}function gi(a,b){a=a|0;b=b|0;return 0}function hi(b){b=b|0;var c=0,d=0,e=0,f=0;c=i;d=b+16|0;if((a[d>>0]|0)!=0){i=c;return}f=b+4|0;e=b+8|0;b=b+17|0;do{if((a[d>>0]|0)==0){Lf(e,f,(a[b>>0]|0)!=0?5:2147483647)}if((a[b>>0]|0)!=0){wh()}}while((a[d>>0]|0)==0);i=c;return}function ii(b){b=b|0;var c=0,d=0,e=0;c=i;e=b+861|0;d=b+16|0;b=b+860|0;while(1){a[e>>0]=0;do{if((a[e>>0]|0)!=0){break}}while((a[d>>0]|0)==0);if((a[d>>0]|0)!=0){break}a[b>>0]=1;oh();a[b>>0]=0}i=c;return}function ji(b){b=b|0;var d=0;d=i;b=c[b+852>>2]|0;a:do{if((b|0)==0){b=0}else{while(1){if((a[b+88>>0]|0)!=0){b=1;break a}b=c[b+32>>2]|0;if((b|0)==0){b=0;break}}}}while(0);i=d;return b|0}function ki(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;f=Vs(20)|0;c[f>>2]=1068752;c[f+4>>2]=0;c[f+8>>2]=0;e=f+12|0;c[e>>2]=0;a[f+16>>0]=0;c[f>>2]=1074280;a[f+17>>0]=0;c[e>>2]=0;c[b+24>>2]=f;f=Vs(864)|0;fi(f);c[f>>2]=1074256;a[f+861>>0]=1;c[f+12>>2]=0;e=b+4|0;k=c[e>>2]|0;g=b+8|0;if((k|0)!=(c[g>>2]|0)){if((k|0)==0){f=0}else{c[k>>2]=f;f=c[e>>2]|0}c[e>>2]=f+4;li(b);i=d;return}h=c[b>>2]|0;l=k-h|0;m=l>>2;k=m+1|0;if(m>>>0<536870911){o=l>>1;o=o>>>0<k>>>0?k:o;if((o|0)==0){n=0;o=0}else{j=7}}else{o=1073741823;j=7}if((j|0)==7){n=o;o=Vs(o<<2)|0}j=o+(m<<2)|0;if((j|0)!=0){c[j>>2]=f}Nt(o|0,h|0,l|0)|0;c[b>>2]=o;c[e>>2]=o+(k<<2);c[g>>2]=o+(n<<2);if((h|0)==0){li(b);i=d;return}Ys(h);li(b);i=d;return}function li(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=i;i=i+32|0;f=d+12|0;g=d;l=Vs(16)|0;h=f+8|0;c[h>>2]=l;c[f>>2]=17;c[f+4>>2]=15;m=l+0|0;j=1074224|0;k=m+15|0;do{a[m>>0]=a[j>>0]|0;m=m+1|0;j=j+1|0}while((m|0)<(k|0));a[l+15>>0]=0;j=b+12|0;c[j>>2]=(Ii(Cc(1077312,f)|0)|0)<<1;if(!((a[f>>0]&1)==0)){Ys(c[h>>2]|0)}a[g>>0]=14;h=g+1|0;a[h+0>>0]=a[1074240>>0]|0;a[h+1>>0]=a[1074241>>0]|0;a[h+2>>0]=a[1074242>>0]|0;a[h+3>>0]=a[1074243>>0]|0;a[h+4>>0]=a[1074244>>0]|0;a[h+5>>0]=a[1074245>>0]|0;a[h+6>>0]=a[1074246>>0]|0;h=g+8|0;a[h>>0]=0;f=Ii(Cc(1077312,g)|0)|0;if(!((a[g>>0]&1)==0)){Ys(c[h>>2]|0)}if((c[j>>2]|0)==0){c[j>>2]=f>>>0<8?8:14}g=b+4|0;k=c[g>>2]|0;j=c[b>>2]|0;if(k-j>>2>>>0<f>>>0){h=b+8|0;do{k=Vs(864)|0;fi(k);c[k+12>>2]=0;l=c[g>>2]|0;if((l|0)==(c[h>>2]|0)){j=c[b>>2]|0;l=l-j|0;p=l>>2;m=p+1|0;if(p>>>0<536870911){o=l>>1;o=o>>>0<m>>>0?m:o;if((o|0)==0){n=0;o=0}else{e=17}}else{o=1073741823;e=17}if((e|0)==17){e=0;n=o;o=Vs(o<<2)|0}p=o+(p<<2)|0;if((p|0)!=0){c[p>>2]=k}k=o+(m<<2)|0;Nt(o|0,j|0,l|0)|0;c[b>>2]=o;c[g>>2]=k;c[h>>2]=o+(n<<2);if((j|0)!=0){Ys(j);k=c[g>>2]|0}}else{if((l|0)==0){j=0}else{c[l>>2]=k;j=c[g>>2]|0}k=j+4|0;c[g>>2]=k}j=c[b>>2]|0}while(k-j>>2>>>0<f>>>0)}if(!(k-j>>2>>>0>f>>>0)){i=d;return}do{e=c[k+-4>>2]|0;a[e+16>>0]=1;if((e|0)!=0){dc[c[(c[e>>2]|0)+4>>2]&255](e)}p=c[g>>2]|0;k=p+-4|0;k=p+(~((k+(0-k)|0)>>>2)<<2)|0;c[g>>2]=k}while(k-(c[b>>2]|0)>>2>>>0>f>>>0);i=d;return}function mi(a,b){a=a|0;b=b|0;return 0}function ni(b,d,e,f,g,h,j,k,l,m,n,o){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;p=i;t=b+856|0;v=c[t>>2]|0;u=b+(v*96|0)+24|0;c[b+(v*96|0)+32>>2]=b;r=b+852|0;s=b+(v*96|0)+56|0;c[s>>2]=c[r>>2];q=b+(v*96|0)+64|0;w=b+844|0;c[q+0>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;w=c[w>>2]|0;q=b+(v*96|0)+(w>>>5<<2)+64|0;c[q>>2]=1<<(w&31)|c[q>>2];c[b+(v*96|0)+36>>2]=k;k=b+(v*96|0)+100|0;c[k>>2]=c[h>>2];q=b+(v*96|0)+104|0;c[q>>2]=c[j>>2];c[b+(v*96|0)+96>>2]=f;c[b+(v*96|0)+40>>2]=g;c[b+(v*96|0)+44>>2]=n;a[b+(v*96|0)+48>>0]=o&1;c[b+(v*96|0)+52>>2]=m;c[b+(v*96|0)+108>>2]=l;c[u>>2]=d;n=b+(v*96|0)+88|0;f=n;c[f>>2]=0;c[f+4>>2]=0;a[b+(v*96|0)+112>>0]=0;c[b+(v*96|0)+28>>2]=e;a[b+(v*96|0)+80>>0]=1;c[t>>2]=(c[t>>2]|0)+1;c[r>>2]=u;f=b+840|0;c[f>>2]=0;vh(b);a[b+860>>0]=1;c[t>>2]=(c[t>>2]|0)+-1;c[r>>2]=c[s>>2];c[f>>2]=d;f=d+2200|0;g=f;g=Jt(c[n>>2]|0,c[n+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=I;c[j>>2]=c[q>>2];c[h>>2]=c[k>>2];i=p;return}function oi(a){a=a|0;return}function pi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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=i;i=i+2080|0;s=b+24|0;r=b;Yb(s|0,0)|0;v=c[s>>2]|0;v=Vt(v|0,((v|0)<0)<<31>>31|0,1e3,0)|0;t=(c[s+4>>2]|0)/1e3|0;v=Jt(t|0,((t|0)<0)<<31>>31|0,v|0,I|0)|0;t=1024760;c[t>>2]=v;c[t+4>>2]=I;a[1022450>>0]=0;a[1022449>>0]=a[1022450>>0]|0;a[1022451>>0]=0;a[1022448]=a[1022451>>0]|0;t=c[255628]|0;v=c[1022516>>2]|0;if((v|0)!=(t|0)){do{w=v+-20|0;c[1022516>>2]=w;u=c[v+-12>>2]|0;if((u|0)==0){v=w}else{w=v+-8|0;v=c[w>>2]|0;if((v|0)!=(u|0)){c[w>>2]=v+(~((v+-4+(0-u)|0)>>>2)<<2)}Ys(u);v=c[1022516>>2]|0}}while((v|0)!=(t|0))}Eg(1022528,d)|0;if((e|0)!=1022456){Gh(1022456,c[e>>2]|0,c[e+4>>2]|0)}v=1022468|0;t=e+12|0;u=v+44|0;do{c[v>>2]=c[t>>2];v=v+4|0;t=t+4|0}while((v|0)<(u|0));t=c[f>>2]|0;if((t|0)!=0){c[f>>2]=0;f=c[256192]|0;if(!((f|0)==(t|0)|(f|0)==0)){v=f+4|0;x=c[v>>2]|0;w=f+16|0;z=c[w>>2]|0;B=x+(((z>>>0)/56|0)<<2)|0;u=f+8|0;y=c[u>>2]|0;if((y|0)==(x|0)){C=0;A=0;z=f+20|0}else{D=f+20|0;A=(c[D>>2]|0)+z|0;C=(c[B>>2]|0)+(((z>>>0)%56|0)*72|0)|0;A=(c[x+(((A>>>0)/56|0)<<2)>>2]|0)+(((A>>>0)%56|0)*72|0)|0;z=D}a:while(1){do{if((C|0)==(A|0)){break a}C=C+72|0}while((C-(c[B>>2]|0)|0)!=4032);D=B+4|0;C=c[D>>2]|0;B=D}c[z>>2]=0;y=y-x>>2;if(y>>>0>2){do{Ys(c[x>>2]|0);x=(c[v>>2]|0)+4|0;c[v>>2]=x;y=(c[u>>2]|0)-x>>2}while(y>>>0>2)}if((y|0)==2){c[w>>2]=56}else if((y|0)==1){c[w>>2]=28}x=c[v>>2]|0;w=c[u>>2]|0;if((x|0)!=(w|0)){do{Ys(c[x>>2]|0);x=x+4|0}while((x|0)!=(w|0));w=c[v>>2]|0;v=c[u>>2]|0;if((v|0)!=(w|0)){c[u>>2]=v+(~((v+-4+(0-w)|0)>>>2)<<2)}}u=c[f>>2]|0;if((u|0)!=0){Ys(u)}Ys(f)}c[256192]=t}t=s+2048|0;c[t>>2]=s;v=cg(d,s)|0;c[s+2052>>2]=v;c[v>>2]=0;v=c[c[t>>2]>>2]|0;if((v|0)==0){oh();i=b;return}d=e+4|0;f=r+8|0;s=r+12|0;do{w=c[e>>2]|0;u=c[d>>2]|0;if((w|0)!=(u|0)){x=0;do{x=((c[w>>2]|0)==(v|0)&1)+x|0;w=w+4|0}while((w|0)!=(u|0));if((x|0)!=0){k=38}}else{k=38}if((k|0)==38){k=0;bi(r,v);u=c[1022516>>2]|0;if((u|0)==(c[1022520>>2]|0)){Hh(1022512,r)}else{if(((u|0)!=0?(j=r,o=c[j+4>>2]|0,q=u,c[q>>2]=c[j>>2],c[q+4>>2]=o,q=u+8|0,c[q>>2]=0,o=u+12|0,c[o>>2]=0,j=u+16|0,c[j>>2]=0,m=c[s>>2]|0,p=c[f>>2]|0,g=p,h=m-g|0,n=h>>2,(n|0)!=0):0)?(l=Vs(h)|0,c[o>>2]=l,c[q>>2]=l,c[j>>2]=l+(n<<2),(p|0)!=(m|0)):0){u=p;v=l;while(1){if((v|0)!=0){c[v>>2]=c[u>>2]}u=u+4|0;if((u|0)==(m|0)){break}else{v=v+4|0}}c[o>>2]=l+(((m+-4+(0-g)|0)>>>2)+1<<2)}c[1022516>>2]=(c[1022516>>2]|0)+20}u=c[f>>2]|0;if((u|0)!=0){v=c[s>>2]|0;if((v|0)!=(u|0)){c[s>>2]=v+(~((v+-4+(0-u)|0)>>>2)<<2)}Ys(u)}}v=(c[t>>2]|0)+8|0;c[t>>2]=v;v=c[v>>2]|0}while((v|0)!=0);oh();i=b;return}function qi(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1060464;d=c[a+828>>2]|0;if((d|0)!=0){e=a+832|0;f=c[e>>2]|0;if((f|0)!=(d|0)){c[e>>2]=f+(~(((f+-120+(0-d)|0)>>>0)/120|0)*120|0)}Ys(d)}sd(a+804|0);d=c[a+792>>2]|0;if((d|0)==0){c[a>>2]=1068752;i=b;return}e=a+796|0;f=c[e>>2]|0;if((f|0)!=(d|0)){c[e>>2]=f+(~((f+-32+(0-d)|0)>>>5)<<5)}Ys(d);c[a>>2]=1068752;i=b;return}function ri(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1060464;d=c[a+828>>2]|0;if((d|0)!=0){e=a+832|0;f=c[e>>2]|0;if((f|0)!=(d|0)){c[e>>2]=f+(~(((f+-120+(0-d)|0)>>>0)/120|0)*120|0)}Ys(d)}sd(a+804|0);d=c[a+792>>2]|0;if((d|0)==0){Ys(a);i=b;return}e=a+796|0;f=c[e>>2]|0;if((f|0)!=(d|0)){c[e>>2]=f+(~((f+-32+(0-d)|0)>>>5)<<5)}Ys(d);Ys(a);i=b;return}function si(a){a=a|0;c[a>>2]=1068752;return}function ti(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function ui(){var a=0;a=i;c[268548]=0;c[1074196>>2]=0;c[1074200>>2]=0;c[1074208>>2]=0;c[1074212>>2]=0;Sa(212,1074192,p|0)|0;i=a;return}function vi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;g=i;i=i+80|0;w=g+60|0;m=g+48|0;n=g+36|0;q=g+24|0;o=g+12|0;j=g;k=Vs(32)|0;l=w+8|0;c[l>>2]=k;c[w>>2]=33;c[w+4>>2]=22;u=k+0|0;t=1074296|0;p=u+22|0;do{a[u>>0]=a[t>>0]|0;u=u+1|0;t=t+1|0}while((u|0)<(p|0));a[k+22>>0]=0;k=Ii(Cc(1077312,w)|0)|0;if(!((a[w>>0]&1)==0)){Ys(c[l>>2]|0)}l=Vs(32)|0;w=m+8|0;c[w>>2]=l;c[m>>2]=33;c[m+4>>2]=19;u=l+0|0;t=1074320|0;p=u+19|0;do{a[u>>0]=a[t>>0]|0;u=u+1|0;t=t+1|0}while((u|0)<(p|0));a[l+19>>0]=0;l=Ii(Cc(1077312,m)|0)|0;if(!((a[m>>0]&1)==0)){Ys(c[w>>2]|0)}m=Vs(32)|0;w=n+8|0;c[w>>2]=m;c[n>>2]=33;c[n+4>>2]=19;u=m+0|0;t=1074344|0;p=u+19|0;do{a[u>>0]=a[t>>0]|0;u=u+1|0;t=t+1|0}while((u|0)<(p|0));a[m+19>>0]=0;m=Ii(Cc(1077312,n)|0)|0;if(!((a[n>>0]&1)==0)){Ys(c[w>>2]|0)}n=Vs(32)|0;w=q+8|0;c[w>>2]=n;c[q>>2]=33;c[q+4>>2]=21;u=n+0|0;t=1074368|0;p=u+21|0;do{a[u>>0]=a[t>>0]|0;u=u+1|0;t=t+1|0}while((u|0)<(p|0));a[n+21>>0]=0;n=Ii(Cc(1077312,q)|0)|0;if(!((a[q>>0]&1)==0)){Ys(c[w>>2]|0)}a[o>>0]=20;u=o+1|0;t=1074392|0;p=u+10|0;do{a[u>>0]=a[t>>0]|0;u=u+1|0;t=t+1|0}while((u|0)<(p|0));a[o+11>>0]=0;t=Ii(Cc(1077312,o)|0)|0;if(!((a[o>>0]&1)==0)){Ys(c[o+8>>2]|0)}h[b+8>>3]=1;p=d+(f<<2)+12|0;u=c[p>>2]|0;u=(u|0)<(n|0)?n:u;o=b+4|0;c[o>>2]=u;c[b>>2]=u;q=d+28|0;f=d+(f<<2)+20|0;r=(+(e|0)+-59.8)/9.3;s=+(t|0);d=u;t=u;u=1;while(1){w=c[q>>2]|0;if((w|0)==0){w=50}else{w=c[((w|0)>50?1074408:q)>>2]|0}if((u|0)>(w|0)){break}x=ea(c[f>>2]|0,u+-1|0)|0;x=(c[p>>2]|0)-((ea((k|0)<(u|0)?k:u,m)|0)+l)+x|0;z=(x|0)<0;v=s*(+V(+(+ba(+r)+1),-.172)+2.2250738585072014e-308)/100;w=(u|0)>1;if(w){A=1;y=0;do{y=y+(+V(+(+ba(+((+((A<<1)+e|0)+-59.8)/9.3))+1),-.172)+2.2250738585072014e-308);A=A+1|0}while((A|0)!=(u|0))}else{y=0}C=v+y;B=v/C;C=(v+y*0)/C;y=z?0:+(x|0);x=~~(y*(C<B?C:B))+n|0;if(w){w=1;B=0;do{B=B+(+V(+(+ba(+((+((w<<1)+e|0)+-59.8)/9.3))+1),-.172)+2.2250738585072014e-308);w=w+1|0}while((w|0)!=(u|0))}else{B=0}C=v*7;C=C/(C+B);B=(v+B*.33)/(v+B);A=~~(y*(B<C?B:C))+n|0;z=(x|0)<(d|0)?x:d;c[b>>2]=z;A=(A|0)<(t|0)?A:t;c[o>>2]=A;d=z;t=A;u=u+1|0}a[j>>0]=12;e=j+1|0;a[e+0>>0]=a[1074416>>0]|0;a[e+1>>0]=a[1074417>>0]|0;a[e+2>>0]=a[1074418>>0]|0;a[e+3>>0]=a[1074419>>0]|0;a[e+4>>0]=a[1074420>>0]|0;a[e+5>>0]=a[1074421>>0]|0;a[j+7>>0]=0;e=(Ii(Cc(1077312,j)|0)|0)==0;if(!((a[j>>0]&1)==0)){Ys(c[j+8>>2]|0)}j=c[b>>2]|0;if(e){A=j;z=c[o>>2]|0;x=(z|0)<(A|0);A=x?z:A;c[b>>2]=A;i=g;return}A=((j|0)/4|0)+j|0;c[b>>2]=A;z=c[o>>2]|0;x=(z|0)<(A|0);A=x?z:A;c[b>>2]=A;i=g;return}function wi(a){a=a|0;var b=0;b=i;Qs(c[a+8>>2]|0);i=b;return}function xi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e;h=Mt(b|0,d|0,14)|0;h=4<<(dd(h&-16384,I&67108863)|0);g=h+-4|0;if((c[a>>2]|0)==(g|0)){i=e;return}c[a>>2]=g;j=a+8|0;Qs(c[j>>2]|0);g=Rs((h<<4)+63|0,1)|0;c[j>>2]=g;if((g|0)==0){j=Fc(xl(Fc(1078208,1074440)|0,b,d)|0,1074464)|0;Bk(f,j+(c[(c[j>>2]|0)+-12>>2]|0)|0);h=Sp(f,1082848)|0;h=pc[c[(c[h>>2]|0)+28>>2]&63](h,10)|0;Qp(f);zl(j,h)|0;il(j)|0;Xb(1)}c[a+4>>2]=g+63&-64;i=e;return}function yi(a){a=a|0;var b=0;b=i;Lt(c[a+4>>2]|0,0,(c[a>>2]<<4)+64|0)|0;i=b;return}function zi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;h=0;d=(c[b+4>>2]|0)+((c[b>>2]&d)<<4)|0;while(1){if((c[d>>2]|0)==(e|0)){break}h=h+1|0;if(!(h>>>0<4)){b=0;g=5;break}else{d=d+16|0}}if((g|0)==5){i=f;return b|0}a[d+7>>0]=a[b+12>>0]|0;i=f;return d|0}function Ai(d,f,g,h,j,k,l,m){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0;n=i;f=(c[d+4>>2]|0)+((c[d>>2]&f)<<4)|0;d=d+12|0;p=0;r=f;while(1){s=c[f>>2]|0;if((s|0)==0|(s|0)==(g|0)){o=3;break}s=a[d>>0]|0;if((a[f+7>>0]|0)==s<<24>>24){q=1}else{q=(a[f+6>>0]|0)==3}r=((((a[r+7>>0]|0)==s<<24>>24)<<31>>31)+(q&1)+(((b[f+10>>1]|0)<(b[r+10>>1]|0))<<31>>31)|0)<0?f:r;p=p+1|0;if(!(p>>>0<4)){f=r;break}else{f=f+16|0}}if((o|0)==3){if((l|0)==0){l=e[f+4>>1]|0}}s=a[d>>0]|0;c[f>>2]=g;b[f+4>>1]=l;a[f+6>>0]=j;a[f+7>>0]=s;b[f+8>>1]=h;b[f+10>>1]=k;b[f+12>>1]=m;i=n;return}function Bi(){var a=0;a=i;Sa(213,1074424,p|0)|0;i=a;return}function Ci(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+2256|0;e=g;f=g+2232|0;d=Vs(64)|0;h=f+8|0;c[h>>2]=d;c[f>>2]=65;c[f+4>>2]=56;k=d+0|0;j=1077248|0;b=k+56|0;do{a[k>>0]=a[j>>0]|0;k=k+1|0;j=j+1|0}while((k|0)<(b|0));a[d+56>>0]=0;Gg(e,f,0,c[c[268548]>>2]|0);Eg(1074504,e)|0;if((a[f>>0]&1)==0){i=g;return}Ys(c[h>>2]|0);i=g;return}function Di(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,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=i;i=i+640|0;m=f+616|0;o=f+472|0;q=f+456|0;r=f+444|0;w=f+432|0;x=f+420|0;s=f+408|0;t=f+396|0;v=f+384|0;z=f+372|0;y=f+360|0;u=f;n=f+304|0;p=f+288|0;j=f+276|0;h=f+136|0;H=f+132|0;F=f+120|0;E=f+108|0;G=f+96|0;D=f+84|0;A=f+72|0;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;k=h+60|0;B=h+8|0;c[h>>2]=1022420;c[k>>2]=1022440;c[h+4>>2]=0;g=h+60|0;Ck(g,B);c[h+132>>2]=0;c[h+136>>2]=-1;c[h>>2]=1022380;c[k>>2]=1022400;c[B>>2]=1080120;d=h+12|0;Op(d);e=h+16|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[B>>2]=1005064;e=h+40|0;C=h+56|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[C>>2]=8;ef(B,b);B=h+((c[(c[h>>2]|0)+-12>>2]|0)+4)|0;c[B>>2]=c[B>>2]|4096;Bc(h,j)|0;B=a[j>>0]|0;C=(B&1)==0;if(C){l=(B&255)>>>1;I=j+1|0}else{l=c[j+4>>2]|0;I=c[j+8>>2]|0}J=l>>>0>4;if((Ft(I,1076736,J?4:l)|0)==0?l>>>0>3&(J^1):0){l=16}else{l=6}a:do{if((l|0)==6){if(C){K=(B&255)>>>1;J=j+1|0}else{K=c[j+4>>2]|0;J=c[j+8>>2]|0}I=K>>>0>4;if((Ft(J,1076744,I?4:K)|0)==0?K>>>0>3&(I^1):0){l=16;break}if(C){J=(B&255)>>>1;I=j+1|0}else{J=c[j+4>>2]|0;I=c[j+8>>2]|0}K=J>>>0>9;if((Ft(I,1076752,K?9:J)|0)==0?J>>>0>8&(K^1):0){l=16;break}if(C){K=(B&255)>>>1;J=j+1|0}else{K=c[j+4>>2]|0;J=c[j+8>>2]|0}I=K>>>0>5;if(!((Ft(J,1076768,I?5:K)|0)==0?K>>>0>4&(I^1):0)){l=28}do{if((l|0)==28){if(C){K=(B&255)>>>1;I=j+1|0}else{K=c[j+4>>2]|0;I=c[j+8>>2]|0}J=K>>>0>6;if((Ft(I,1076776,J?6:K)|0)==0?K>>>0>5&(J^1):0){break}if(C){E=(B&255)>>>1;F=j+1|0}else{E=c[j+4>>2]|0;F=c[j+8>>2]|0}H=E>>>0>3;if((Ft(F,1076816,H?3:E)|0)==0?E>>>0>2&(H^1):0){J=If(1078120,0)|0;K=J+((c[(c[J>>2]|0)+-12>>2]|0)+4)|0;c[K>>2]=c[K>>2]&-75|8;K=J+((c[(c[J>>2]|0)+-12>>2]|0)+4)|0;c[K>>2]=c[K>>2]|16384;c[J+((c[(c[J>>2]|0)+-12>>2]|0)+76)>>2]=48;J=Fc(J,1076824)|0;c[J+((c[(c[J>>2]|0)+-12>>2]|0)+12)>>2]=16;K=(c[1076724>>2]|0)+48|0;K=Fc(xl(J,c[K>>2]|0,c[K+4>>2]|0)|0,1076840)|0;c[K+((c[(c[K>>2]|0)+-12>>2]|0)+12)>>2]=16;J=(c[1076724>>2]|0)+8|0;J=Fc(xl(K,c[J>>2]|0,c[J+4>>2]|0)|0,1076856)|0;c[J+((c[(c[J>>2]|0)+-12>>2]|0)+12)>>2]=16;K=c[1076724>>2]|0;K=xl(J,c[K>>2]|0,c[K+4>>2]|0)|0;J=K+((c[(c[K>>2]|0)+-12>>2]|0)+4)|0;c[J>>2]=c[J>>2]&-75|2;J=K+((c[(c[K>>2]|0)+-12>>2]|0)+4)|0;c[J>>2]=c[J>>2]&-16385;c[K+((c[(c[K>>2]|0)+-12>>2]|0)+76)>>2]=32;Bk(m,K+(c[(c[K>>2]|0)+-12>>2]|0)|0);J=Sp(m,1082848)|0;J=pc[c[(c[J>>2]|0)+28>>2]&63](J,10)|0;Qp(m);zl(K,J)|0;il(K)|0;If(K,1)|0;break a}if(C){E=(B&255)>>>1;F=j+1|0}else{E=c[j+4>>2]|0;F=c[j+8>>2]|0}H=E>>>0>3;if((Ft(F,1076872,H?3:E)|0)==0?E>>>0>2&(H^1):0){K=Fc(If(1078120,0)|0,1076880)|0;Gf(G,1);K=Fc(Pi(Fc(Ec(K,G)|0,1076896)|0,1077312)|0,1076904)|0;Bk(m,K+(c[(c[K>>2]|0)+-12>>2]|0)|0);J=Sp(m,1082848)|0;J=pc[c[(c[J>>2]|0)+28>>2]&63](J,10)|0;Qp(m);zl(K,J)|0;il(K)|0;If(K,1)|0;if((a[G>>0]&1)==0){break a}Ys(c[G+8>>2]|0);break a}if(C){F=(B&255)>>>1;E=j+1|0}else{F=c[j+4>>2]|0;E=c[j+8>>2]|0}G=F>>>0>10;if((Ft(E,1076912,G?10:F)|0)==0?F>>>0>9&(G^1):0){yi(1074424);break a}if(C){E=(B&255)>>>1;F=j+1|0}else{E=c[j+4>>2]|0;F=c[j+8>>2]|0}G=E>>>0>2;do{if((Ft(F,1076928,G?2:E)|0)==0){if(!(E>>>0>1&(G^1))){break}q=n+0|0;r=q+56|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;K=Bc(h,p)|0;if((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0){A=p+1|0;C=n+4|0;B=n+8|0;o=n+12|0;q=n+16|0;r=n+20|0;s=n+24|0;t=n+28|0;v=n+32|0;x=n+36|0;z=n+40|0;y=n+44|0;w=n+48|0;u=n+52|0;m=p+4|0;b=p+8|0;do{D=a[p>>0]|0;E=(D&1)==0;if(E){G=(D&255)>>>1;H=A}else{G=c[m>>2]|0;H=c[b>>2]|0}F=G>>>0>11;do{if((Ft(H,1077120,F?11:G)|0)==0){if(!(G>>>0>10&(F^1))){l=86;break}K=Bc(h,p)|0;if((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)!=0){break}do{E=pg(1074504,p)|0;F=c[C>>2]|0;do{if((F|0)==(c[B>>2]|0)){D=c[n>>2]|0;F=F-D|0;H=F>>2;G=H+1|0;if(H>>>0<536870911){J=F>>1;J=J>>>0<G>>>0?G:J;if((J|0)==0){I=0;J=0}else{l=81}}else{J=1073741823;l=81}if((l|0)==81){l=0;I=J;J=Vs(J<<2)|0}H=J+(H<<2)|0;if((H|0)!=0){c[H>>2]=E}Nt(J|0,D|0,F|0)|0;c[n>>2]=J;c[C>>2]=J+(G<<2);c[B>>2]=J+(I<<2);if((D|0)==0){break}Ys(D)}else{if((F|0)!=0){c[F>>2]=E}c[C>>2]=F+4}}while(0);K=Bc(h,p)|0}while((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0)}else{l=86}}while(0);b:do{if((l|0)==86){l=0;if(E){H=(D&255)>>>1;G=A}else{H=c[m>>2]|0;G=c[b>>2]|0}F=H>>>0>5;do{if((Ft(G,1077136,F?5:H)|0)==0){if(!(H>>>0>4&(F^1))){break}jl(h,o)|0;break b}}while(0);if(E){H=(D&255)>>>1;G=A}else{H=c[m>>2]|0;G=c[b>>2]|0}F=H>>>0>5;do{if((Ft(G,1077144,F?5:H)|0)==0){if(!(H>>>0>4&(F^1))){break}jl(h,q)|0;break b}}while(0);if(E){H=(D&255)>>>1;G=A}else{H=c[m>>2]|0;G=c[b>>2]|0}F=H>>>0>4;do{if((Ft(G,1077152,F?4:H)|0)==0){if(!(H>>>0>3&(F^1))){break}jl(h,r)|0;break b}}while(0);if(E){H=(D&255)>>>1;G=A}else{H=c[m>>2]|0;G=c[b>>2]|0}F=H>>>0>4;do{if((Ft(G,1077160,F?4:H)|0)==0){if(!(H>>>0>3&(F^1))){break}jl(h,s)|0;break b}}while(0);if(E){H=(D&255)>>>1;G=A}else{H=c[m>>2]|0;G=c[b>>2]|0}F=H>>>0>9;do{if((Ft(G,1077168,F?9:H)|0)==0){if(!(H>>>0>8&(F^1))){break}jl(h,t)|0;break b}}while(0);if(E){F=(D&255)>>>1;H=A}else{F=c[m>>2]|0;H=c[b>>2]|0}G=F>>>0>5;do{if((Ft(H,1077184,G?5:F)|0)==0){if(!(F>>>0>4&(G^1))){break}jl(h,v)|0;break b}}while(0);if(E){F=(D&255)>>>1;G=A}else{F=c[m>>2]|0;G=c[b>>2]|0}H=F>>>0>5;do{if((Ft(G,1077192,H?5:F)|0)==0){if(!(F>>>0>4&(H^1))){break}jl(h,x)|0;break b}}while(0);if(E){F=(D&255)>>>1;G=A}else{F=c[m>>2]|0;G=c[b>>2]|0}H=F>>>0>8;do{if((Ft(G,1077200,H?8:F)|0)==0){if(!(F>>>0>7&(H^1))){break}jl(h,z)|0;break b}}while(0);if(E){F=(D&255)>>>1;G=A}else{F=c[m>>2]|0;G=c[b>>2]|0}H=F>>>0>4;do{if((Ft(G,1077216,H?4:F)|0)==0){if(!(F>>>0>3&(H^1))){break}jl(h,y)|0;break b}}while(0);if(E){F=(D&255)>>>1;G=A}else{F=c[m>>2]|0;G=c[b>>2]|0}H=F>>>0>8;do{if((Ft(G,1077224,H?8:F)|0)==0){if(!(F>>>0>7&(H^1))){break}c[w>>2]=1;break b}}while(0);if(E){E=(D&255)>>>1;F=A}else{E=c[m>>2]|0;F=c[b>>2]|0}D=E>>>0>6;if((Ft(F,1077240,D?6:E)|0)!=0){break}if(!(E>>>0>5&(D^1))){break}c[u>>2]=1}}while(0);K=Bc(h,p)|0}while((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0)}pi(1074192,1074504,n,1074496);if(!((a[p>>0]&1)==0)){Ys(c[p+8>>2]|0)}m=c[n>>2]|0;if((m|0)==0){break a}o=n+4|0;n=c[o>>2]|0;if((n|0)!=(m|0)){c[o>>2]=n+(~((n+-4+(0-m)|0)>>>2)<<2)}Ys(m);break a}}while(0);if(C){E=(B&255)>>>1;n=j+1|0}else{E=c[j+4>>2]|0;n=c[j+8>>2]|0}p=E>>>0>8;do{if((Ft(n,1076936,p?8:E)|0)==0){if(!(E>>>0>7&(p^1))){break}c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[v+0>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;Bc(h,m)|0;n=a[m>>0]|0;o=(n&1)==0;if(o){p=(n&255)>>>1;l=m+1|0}else{p=c[m+4>>2]|0;l=c[m+8>>2]|0}q=p>>>0>8;do{if((Ft(l,1077072,q?8:p)|0)==0){if(!(p>>>0>7&(q^1))){l=170;break}ek(v,1077248,56)|0;Bc(h,m)|0;l=193}else{l=170}}while(0);c:do{if((l|0)==170){if(o){n=(n&255)>>>1;o=m+1|0}else{n=c[m+4>>2]|0;o=c[m+8>>2]|0}p=n>>>0>3;if((Ft(o,1077088,p?3:n)|0)!=0){break}if(!(n>>>0>2&(p^1))){break}K=Bc(h,m)|0;if((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)!=0){l=193;break}l=m+1|0;p=z+1|0;n=z+8|0;q=z+4|0;o=m+4|0;r=m+8|0;while(1){t=a[m>>0]|0;w=(t&1)==0;if(w){x=(t&255)>>>1;s=l}else{x=c[o>>2]|0;s=c[r>>2]|0}if((Ft(s,1077096,x>>>0>5?5:x)|0)==0&(x|0)==5){l=193;break c}c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;if(w){t=(t&255)>>>1;s=l}else{t=c[o>>2]|0;s=c[r>>2]|0}if((t+1|0)>>>0<11){a[z>>0]=t<<1;w=p}else{K=t+17&-16;w=Vs(K)|0;c[n>>2]=w;c[z>>2]=K|1;c[q>>2]=t}Nt(w|0,s|0,t|0)|0;a[w+t>>0]=0;jk(z,1076784,1)|0;t=a[z>>0]|0;if((t&1)==0){s=p;t=(t&255)>>>1}else{s=c[n>>2]|0;t=c[q>>2]|0}jk(v,s,t)|0;if(!((a[z>>0]&1)==0)){Ys(c[n>>2]|0)}K=Bc(h,m)|0;if((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)!=0){l=193;break}}}}while(0);d:do{if((l|0)==193){o=Vs(16)|0;n=y+8|0;c[n>>2]=o;c[y>>2]=17;c[y+4>>2]=12;q=o+0|0;p=1077104|0;r=q+12|0;do{a[q>>0]=a[p>>0]|0;q=q+1|0;p=p+1|0}while((q|0)<(r|0));a[o+12>>0]=0;K=(Ii(Cc(1077312,y)|0)|0)!=0;Gg(1074504,v,K,c[c[268548]>>2]|0);if(!((a[y>>0]&1)==0)){Ys(c[n>>2]|0)}o=Vs(24)|0;c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;n=c[268624]|0;if(!((n|0)==(o|0)|(n|0)==0)){Ei(n);Ys(n)}c[268624]=o;K=Bc(h,m)|0;if((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)!=0){break}do{n=pg(1074504,m)|0;if((n|0)==0){break d}t=c[268624]|0;q=u+0|0;r=q+72|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));s=t+8|0;w=c[s>>2]|0;q=t+4|0;p=c[q>>2]|0;o=w-p>>2;if((o|0)==0){z=0}else{z=(o*56|0)+-1|0}x=t+16|0;y=c[x>>2]|0;o=t+20|0;r=c[o>>2]|0;if((z-y|0)==(r|0)){sg(t);r=c[o>>2]|0;y=c[x>>2]|0;w=c[s>>2]|0;p=c[q>>2]|0}q=r+y|0;do{if((w|0)!=(p|0)){p=(c[p+(((q>>>0)/56|0)<<2)>>2]|0)+(((q>>>0)%56|0)*72|0)|0;if((p|0)==0){break}q=p+0|0;p=u+0|0;r=q+72|0;do{c[q>>2]=c[p>>2];q=q+4|0;p=p+4|0}while((q|0)<(r|0));r=c[o>>2]|0}}while(0);c[o>>2]=r+1;J=c[268624]|0;K=(c[J+20>>2]|0)+-1+(c[J+16>>2]|0)|0;Sg(1074504,n,(c[(c[J+4>>2]|0)+(((K>>>0)/56|0)<<2)>>2]|0)+(((K>>>0)%56|0)*72|0)|0);K=Bc(h,m)|0}while((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0)}}while(0);if(!((a[v>>0]&1)==0)){Ys(c[v+8>>2]|0)}if((a[m>>0]&1)==0){break a}Ys(c[m+8>>2]|0);break a}}while(0);if(C){u=(B&255)>>>1;p=j+1|0}else{u=c[j+4>>2]|0;p=c[j+8>>2]|0}n=u>>>0>9;do{if((Ft(p,1076952,n?9:u)|0)==0){if(!(u>>>0>8&(n^1))){break}c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[q+0>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[r+0>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Bc(h,o)|0;K=Bc(h,o)|0;e:do{if((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0){n=o+1|0;A=x+1|0;b=w+1|0;v=x+8|0;z=w+8|0;C=w+4|0;p=o+8|0;u=o+4|0;y=x+4|0;B=q+4|0;do{F=a[o>>0]|0;D=(F&1)==0;if(D){E=(F&255)>>>1;G=n}else{E=c[u>>2]|0;G=c[p>>2]|0}if((Ft(G,1077040,E>>>0>5?5:E)|0)==0&(E|0)==5){break e}E=a[q>>0]|0;if((E&1)==0){E=(E&255)>>>1}else{E=c[B>>2]|0}G=(E|0)!=0&1;a[x>>0]=G<<1;Nt(A|0,1076784,G|0)|0;a[x+G+1>>0]=0;c[w+0>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;G=a[x>>0]|0;E=(G&1)==0;if(E){G=(G&255)>>>1}else{G=c[y>>2]|0}if(D){H=(F&255)>>>1}else{H=c[u>>2]|0}F=c[v>>2]|0;I=H+G|0;if(I>>>0<11){a[w>>0]=G<<1;I=b}else{K=I+16&-16;I=Vs(K)|0;c[z>>2]=I;c[w>>2]=K|1;c[C>>2]=G}Nt(I|0,(E?A:F)|0,G|0)|0;a[I+G>>0]=0;jk(w,D?n:c[p>>2]|0,H)|0;G=a[w>>0]|0;if((G&1)==0){D=b;G=(G&255)>>>1}else{D=c[z>>2]|0;G=c[C>>2]|0}jk(q,D,G)|0;if(!((a[w>>0]&1)==0)){Ys(c[z>>2]|0)}if(!E){Ys(F)}K=Bc(h,o)|0}while((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0)}}while(0);K=Bc(h,o)|0;if((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0){v=t+1|0;x=s+1|0;n=o+1|0;z=t+8|0;y=s+8|0;w=s+4|0;p=o+8|0;A=o+4|0;u=t+4|0;b=r+4|0;do{B=a[r>>0]|0;if((B&1)==0){B=(B&255)>>>1}else{B=c[b>>2]|0}C=(B|0)!=0&1;a[t>>0]=C<<1;Nt(v|0,1076784,C|0)|0;a[t+C+1>>0]=0;c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;C=a[t>>0]|0;B=(C&1)==0;if(B){E=(C&255)>>>1}else{E=c[u>>2]|0}C=a[o>>0]|0;D=(C&1)==0;if(D){F=(C&255)>>>1}else{F=c[A>>2]|0}C=c[z>>2]|0;G=F+E|0;if(G>>>0<11){a[s>>0]=E<<1;G=x}else{K=G+16&-16;G=Vs(K)|0;c[y>>2]=G;c[s>>2]=K|1;c[w>>2]=E}Nt(G|0,(B?v:C)|0,E|0)|0;a[G+E>>0]=0;jk(s,D?n:c[p>>2]|0,F)|0;E=a[s>>0]|0;if((E&1)==0){D=x;E=(E&255)>>>1}else{D=c[y>>2]|0;E=c[w>>2]|0}jk(r,D,E)|0;if(!((a[s>>0]&1)==0)){Ys(c[y>>2]|0)}if(!B){Ys(C)}K=Bc(h,o)|0}while((c[K+((c[(c[K>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0)}p=c[1077316>>2]|0;f:do{if((p|0)==0){l=271}else{while(1){n=p+16|0;if(!(Ni(1077320|0,q,n)|0)){if(!(Ni(1077320|0,n,q)|0)){break}p=p+4|0}p=c[p>>2]|0;if((p|0)==0){l=271;break f}}Ui(Cc(1077312,q)|0,r)|0}}while(0);if((l|0)==271){K=Ec(Fc(If(1078120,0)|0,1077048)|0,q)|0;Bk(m,K+(c[(c[K>>2]|0)+-12>>2]|0)|0);J=Sp(m,1082848)|0;J=pc[c[(c[J>>2]|0)+28>>2]&63](J,10)|0;Qp(m);zl(K,J)|0;il(K)|0;If(K,1)|0}if(!((a[r>>0]&1)==0)){Ys(c[r+8>>2]|0)}if(!((a[q>>0]&1)==0)){Ys(c[q+8>>2]|0)}if((a[o>>0]&1)==0){break a}Ys(c[o+8>>2]|0);break a}}while(0);if(C){p=(B&255)>>>1;n=j+1|0}else{p=c[j+4>>2]|0;n=c[j+8>>2]|0}o=p>>>0>4;do{if((Ft(n,1076968,o?4:p)|0)==0){if(!(p>>>0>3&(o^1))){break}ah(1074504);break a}}while(0);if(C){p=(B&255)>>>1;o=j+1|0}else{p=c[j+4>>2]|0;o=c[j+8>>2]|0}n=p>>>0>5;do{if((Ft(o,1076976,n?5:p)|0)==0){if(!(p>>>0>4&(n^1))){break}Ac(1074504,h);break a}}while(0);if(C){o=(B&255)>>>1;n=j+1|0}else{o=c[j+4>>2]|0;n=c[j+8>>2]|0}p=o>>>0>1;do{if((Ft(n,1076984,p?1:o)|0)==0){if(!((o|0)!=0&(p^1))){break}K=If(1078120,0)|0;Mg(D,1074504,0);K=Ec(K,D)|0;Bk(m,K+(c[(c[K>>2]|0)+-12>>2]|0)|0);J=Sp(m,1082848)|0;J=pc[c[(c[J>>2]|0)+28>>2]&63](J,10)|0;Qp(m);zl(K,J)|0;il(K)|0;If(K,1)|0;if((a[D>>0]&1)==0){break a}Ys(c[D+8>>2]|0);break a}}while(0);if(C){n=(B&255)>>>1;o=j+1|0}else{n=c[j+4>>2]|0;o=c[j+8>>2]|0}p=n>>>0>7;do{if((Ft(o,1076992,p?7:n)|0)==0){if(!(n>>>0>6&(p^1))){break}K=Fc(If(1078120,0)|0,1077e3)|0;Bk(m,K+(c[(c[K>>2]|0)+-12>>2]|0)|0);J=Sp(m,1082848)|0;J=pc[c[(c[J>>2]|0)+28>>2]&63](J,10)|0;Qp(m);zl(K,J)|0;il(K)|0;If(K,1)|0;break a}}while(0);if(C){o=(B&255)>>>1;p=j+1|0}else{o=c[j+4>>2]|0;p=c[j+8>>2]|0}n=o>>>0>4;do{if((Ft(p,1077008,n?4:o)|0)==0){p=If(1078120,0)|0;if(!(o>>>0>3&(n^1))){break}Oe(A,1074504);K=Ec(p,A)|0;Bk(m,K+(c[(c[K>>2]|0)+-12>>2]|0)|0);J=Sp(m,1082848)|0;J=pc[c[(c[J>>2]|0)+28>>2]&63](J,10)|0;Qp(m);zl(K,J)|0;il(K)|0;If(K,1)|0;if((a[A>>0]&1)==0){break a}Ys(c[A+8>>2]|0);break a}else{p=If(1078120,0)|0}}while(0);K=Ec(Fc(p,1077016)|0,b)|0;Bk(m,K+(c[(c[K>>2]|0)+-12>>2]|0)|0);J=Sp(m,1082848)|0;J=pc[c[(c[J>>2]|0)+28>>2]&63](J,10)|0;Qp(m);zl(K,J)|0;il(K)|0;If(K,1)|0;break a}}while(0);s=o+64|0;r=o+8|0;c[r>>2]=1004984;K=o+12|0;c[o>>2]=1005028;c[s>>2]=1005048;c[o+4>>2]=0;q=o+64|0;Ck(q,K);c[o+136>>2]=0;c[o+140>>2]=-1;c[o>>2]=1004964;c[s>>2]=1005004;c[r>>2]=1004984;c[K>>2]=1080120;p=o+16|0;Op(p);n=o+20|0;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;c[n+20>>2]=0;c[K>>2]=1005064;n=o+44|0;J=o+60|0;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[J>>2]=24;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;ef(K,m);if(!((a[m>>0]&1)==0)){Ys(c[m+8>>2]|0)}jl(h,H)|0;a[F>>0]=8;K=F+1|0;a[K>>0]=1752392008;a[K+1>>0]=6845281;a[K+2>>0]=26739;a[K+3>>0]=104;a[F+5>>0]=0;K=Fc(ul(o+8|0,Ii(Cc(1077312,F)|0)|0)|0,1076784)|0;a[E>>0]=14;m=E+1|0;a[m+0>>0]=a[1076792>>0]|0;a[m+1>>0]=a[1076793>>0]|0;a[m+2>>0]=a[1076794>>0]|0;a[m+3>>0]=a[1076795>>0]|0;a[m+4>>0]=a[1076796>>0]|0;a[m+5>>0]=a[1076797>>0]|0;a[m+6>>0]=a[1076798>>0]|0;m=E+8|0;a[m>>0]=0;K=Fc(ul(K,Ii(Cc(1077312,E)|0)|0)|0,1076784)|0;Ec(Fc(ul(K,c[H>>2]|0)|0,1076800)|0,j)|0;if(!((a[E>>0]&1)==0)){Ys(c[m>>2]|0)}if(!((a[F>>0]&1)==0)){Ys(c[F+8>>2]|0)}Ac(1074504,o);c[o>>2]=1004964;c[s>>2]=1005004;c[r>>2]=1004984;m=o+12|0;c[m>>2]=1005064;if(!((a[n>>0]&1)==0)){Ys(c[o+52>>2]|0)}c[m>>2]=1080120;Qp(p);yk(q)}}while(0);do{if((l|0)==16){if(C){l=(B&255)>>>1;m=j+1|0}else{l=c[j+4>>2]|0;m=c[j+8>>2]|0}if((Ft(m,1076752,l>>>0>9?9:l)|0)==0&(l|0)==9?(a[1022449>>0]|0)==0:0){c[1022508>>2]=0;break}a[1022448]=1}}while(0);
+c[h>>2]=1022380;c[k>>2]=1022400;k=h+8|0;c[k>>2]=1005064;if(!((a[e>>0]&1)==0)){Ys(c[h+48>>2]|0)}c[k>>2]=1080120;Qp(d);yk(g);if((a[j>>0]&1)==0){i=f;return}Ys(c[j+8>>2]|0);i=f;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;b=i;e=a+4|0;g=c[e>>2]|0;f=a+16|0;m=c[f>>2]|0;l=g+(((m>>>0)/56|0)<<2)|0;d=a+8|0;h=c[d>>2]|0;if((h|0)==(g|0)){k=0;j=a+20|0;m=0}else{j=a+20|0;k=(c[j>>2]|0)+m|0;k=(c[g+(((k>>>0)/56|0)<<2)>>2]|0)+(((k>>>0)%56|0)*72|0)|0;m=(c[l>>2]|0)+(((m>>>0)%56|0)*72|0)|0}a:while(1){do{if((m|0)==(k|0)){break a}m=m+72|0}while((m-(c[l>>2]|0)|0)!=4032);n=l+4|0;m=c[n>>2]|0;l=n}c[j>>2]=0;h=h-g>>2;if(h>>>0>2){do{Ys(c[g>>2]|0);g=(c[e>>2]|0)+4|0;c[e>>2]=g;h=(c[d>>2]|0)-g>>2}while(h>>>0>2)}if((h|0)==2){c[f>>2]=56}else if((h|0)==1){c[f>>2]=28}g=c[e>>2]|0;f=c[d>>2]|0;if((g|0)!=(f|0)){do{Ys(c[g>>2]|0);g=g+4|0}while((g|0)!=(f|0));e=c[e>>2]|0;f=c[d>>2]|0;if((f|0)!=(e|0)){c[d>>2]=f+(~((f+-4+(0-e)|0)>>>2)<<2)}}a=c[a>>2]|0;if((a|0)==0){i=b;return}Ys(a);i=b;return}function Fi(){var a=0;a=i;c[268624]=0;Sa(211,1074496,p|0)|0;i=a;return}function Gi(a){a=a|0;var b=0;b=i;Vi(a,c[a+4>>2]|0);i=b;return}function Hi(a){a=a|0;var b=0;b=i;Jf((Ii(a)|0)!=0);i=b;return}function Ii(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;f=b+24|0;e=a[f>>0]|0;if((e&1)==0){e=(e&255)>>>1;g=f+1|0}else{e=c[b+28>>2]|0;g=c[b+32>>2]|0}f=e>>>0>4;if((Ft(g,1077968,f?4:e)|0)==0){g=b+12|0;if(e>>>0>3&(f^1)){if((a[g>>0]&1)==0){b=g+1|0}else{b=c[b+20>>2]|0}g=At(b)|0;i=d;return g|0}}else{g=b+12|0}b=a[g>>0]|0;if((b&1)==0){b=(b&255)>>>1;f=g+1|0}else{b=c[g+4>>2]|0;f=c[g+8>>2]|0}e=b>>>0>4;f=Ft(f,1078008,e?4:b)|0;if((f|0)==0){f=b>>>0<4?-1:e&1}g=(f|0)==0&1;i=d;return g|0}function Ji(a){a=a|0;a=i;Qe();i=a;return}function Ki(a){a=a|0;a=i;li(1074192);i=a;return}function Li(a){a=a|0;var b=0;b=i;a=Ii(a)|0;xi(1074424,a,((a|0)<0)<<31>>31);i=b;return}function Mi(a){a=a|0;a=i;yi(1074424);i=a;return}function Ni(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;b=i;g=a[d>>0]|0;if((g&1)==0){f=d+1|0;g=(g&255)>>>1;d=d+1|0}else{h=c[d+8>>2]|0;f=h;g=c[d+4>>2]|0;d=h}f=f+g|0;h=a[e>>0]|0;if((h&1)==0){g=e+1|0;h=(h&255)>>>1;e=e+1|0}else{j=c[e+8>>2]|0;g=j;h=c[e+4>>2]|0;e=j}g=g+h|0;if((e|0)==(g|0)){j=0;i=b;return j|0}while(1){if((d|0)==(f|0)){d=1;e=12;break}j=a[e>>0]|0;h=ft(a[d>>0]|0)|0;if((h|0)<(ft(j<<24>>24)|0)){d=1;e=12;break}j=a[d>>0]|0;h=ft(a[e>>0]|0)|0;if((h|0)<(ft(j<<24>>24)|0)){d=0;e=12;break}e=e+1|0;if((e|0)==(g|0)){d=0;e=12;break}else{d=d+1|0}}if((e|0)==12){i=b;return d|0}return 0}function Oi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;f=i;i=i+1920|0;ma=f+1908|0;oa=f+1856|0;la=f+1844|0;ka=f+1792|0;ja=f+1780|0;ia=f+1728|0;ha=f+1716|0;ga=f+1664|0;ca=f+1652|0;ba=f+1600|0;aa=f+1588|0;$=f+1536|0;_=f+1524|0;Z=f+1472|0;Y=f+1460|0;X=f+1408|0;V=f+1396|0;W=f+1344|0;U=f+1332|0;T=f+1280|0;R=f+1268|0;S=f+1216|0;Q=f+1204|0;P=f+1152|0;O=f+1140|0;N=f+1088|0;M=f+1076|0;L=f+1024|0;J=f+1012|0;K=f+960|0;I=f+948|0;D=f+896|0;H=f+884|0;G=f+832|0;F=f+820|0;E=f+768|0;B=f+756|0;C=f+704|0;A=f+692|0;z=f+640|0;y=f+628|0;x=f+576|0;w=f+564|0;v=f+512|0;u=f+500|0;t=f+448|0;s=f+436|0;r=f+384|0;q=f+372|0;p=f+320|0;o=f+308|0;n=f+256|0;m=f+244|0;l=f+192|0;k=f+180|0;j=f+128|0;h=f+116|0;g=f+64|0;e=f+52|0;d=f;pa=Vs(16)|0;na=ma+8|0;c[na>>2]=pa;c[ma>>2]=17;c[ma+4>>2]=15;ea=pa+0|0;fa=1077328|0;da=ea+15|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[pa+15>>0]=0;fa=Cc(b,ma)|0;ea=oa+12|0;da=oa+24|0;c[oa+0>>2]=0;c[oa+4>>2]=0;c[oa+8>>2]=0;c[oa+12>>2]=0;c[oa+16>>2]=0;c[oa+20>>2]=0;a[da>>0]=10;ra=da+1|0;a[ra+0>>0]=a[1078e3>>0]|0;a[ra+1>>0]=a[1078001>>0]|0;a[ra+2>>0]=a[1078002>>0]|0;a[ra+3>>0]=a[1078003>>0]|0;a[ra+4>>0]=a[1078004>>0]|0;a[da+6>>0]=0;c[oa+36>>2]=0;c[oa+40>>2]=0;c[oa+48>>2]=214;ra=ek(ea,1078016,5)|0;if((oa|0)!=(ra|0)){qa=a[ra>>0]|0;if((qa&1)==0){pa=ra+1|0;qa=(qa&255)>>>1}else{pa=c[ra+8>>2]|0;qa=c[ra+4>>2]|0}ek(oa,pa,qa)|0}Ti(fa,oa)|0;ra=c[269506]|0;c[269506]=ra+1;c[fa+44>>2]=ra;if(!((a[da>>0]&1)==0)){Ys(c[oa+32>>2]|0)}if(!((a[ea>>0]&1)==0)){Ys(c[oa+20>>2]|0)}if(!((a[oa>>0]&1)==0)){Ys(c[oa+8>>2]|0)}if(!((a[ma>>0]&1)==0)){Ys(c[na>>2]|0)}na=Vs(32)|0;ma=la+8|0;c[ma>>2]=na;c[la>>2]=33;c[la+4>>2]=16;ea=na+0|0;fa=1077344|0;da=ea+16|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[na+16>>0]=0;ea=Cc(b,la)|0;da=ka+12|0;fa=ka+24|0;c[ka+0>>2]=0;c[ka+4>>2]=0;c[ka+8>>2]=0;c[ka+12>>2]=0;c[ka+16>>2]=0;c[ka+20>>2]=0;a[fa>>0]=10;pa=fa+1|0;a[pa+0>>0]=a[1078e3>>0]|0;a[pa+1>>0]=a[1078001>>0]|0;a[pa+2>>0]=a[1078002>>0]|0;a[pa+3>>0]=a[1078003>>0]|0;a[pa+4>>0]=a[1078004>>0]|0;a[fa+6>>0]=0;c[ka+36>>2]=0;c[ka+40>>2]=0;c[ka+48>>2]=0;pa=ek(da,1078016,5)|0;if((ka|0)!=(pa|0)){oa=a[pa>>0]|0;if((oa&1)==0){na=pa+1|0;oa=(oa&255)>>>1}else{na=c[pa+8>>2]|0;oa=c[pa+4>>2]|0}ek(ka,na,oa)|0}Ti(ea,ka)|0;ra=c[269506]|0;c[269506]=ra+1;c[ea+44>>2]=ra;if(!((a[fa>>0]&1)==0)){Ys(c[ka+32>>2]|0)}if(!((a[da>>0]&1)==0)){Ys(c[ka+20>>2]|0)}if(!((a[ka>>0]&1)==0)){Ys(c[ka+8>>2]|0)}if(!((a[la>>0]&1)==0)){Ys(c[ma>>2]|0)}la=Vs(32)|0;ka=ja+8|0;c[ka>>2]=la;c[ja>>2]=33;c[ja+4>>2]=19;ea=la+0|0;fa=1077368|0;da=ea+19|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[la+19>>0]=0;la=Cc(b,ja)|0;ea=ia+12|0;fa=ia+24|0;c[ia+0>>2]=0;c[ia+4>>2]=0;c[ia+8>>2]=0;c[ia+12>>2]=0;c[ia+16>>2]=0;c[ia+20>>2]=0;a[fa>>0]=12;ma=fa+1|0;a[ma+0>>0]=a[1077992>>0]|0;a[ma+1>>0]=a[1077993>>0]|0;a[ma+2>>0]=a[1077994>>0]|0;a[ma+3>>0]=a[1077995>>0]|0;a[ma+4>>0]=a[1077996>>0]|0;a[ma+5>>0]=a[1077997>>0]|0;a[fa+7>>0]=0;c[ia+36>>2]=0;c[ia+40>>2]=0;c[ia+48>>2]=0;ma=ek(ea,1077392,13)|0;if((ia|0)!=(ma|0)){na=a[ma>>0]|0;if((na&1)==0){da=ma+1|0;ma=(na&255)>>>1}else{da=c[ma+8>>2]|0;ma=c[ma+4>>2]|0}ek(ia,da,ma)|0}Ti(la,ia)|0;ra=c[269506]|0;c[269506]=ra+1;c[la+44>>2]=ra;if(!((a[fa>>0]&1)==0)){Ys(c[ia+32>>2]|0)}if(!((a[ea>>0]&1)==0)){Ys(c[ia+20>>2]|0)}if(!((a[ia>>0]&1)==0)){Ys(c[ia+8>>2]|0)}if(!((a[ja>>0]&1)==0)){Ys(c[ka>>2]|0)}a[ha>>0]=18;ea=ha+1|0;fa=1077408|0;da=ea+9|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[ha+10>>0]=0;ea=Cc(b,ha)|0;da=ga+12|0;fa=ga+24|0;c[ga+0>>2]=0;c[ga+4>>2]=0;c[ga+8>>2]=0;c[ga+12>>2]=0;c[ga+16>>2]=0;c[ga+20>>2]=0;a[fa>>0]=12;ka=fa+1|0;a[ka+0>>0]=a[1077992>>0]|0;a[ka+1>>0]=a[1077993>>0]|0;a[ka+2>>0]=a[1077994>>0]|0;a[ka+3>>0]=a[1077995>>0]|0;a[ka+4>>0]=a[1077996>>0]|0;a[ka+5>>0]=a[1077997>>0]|0;a[fa+7>>0]=0;c[ga+36>>2]=0;c[ga+40>>2]=0;c[ga+48>>2]=0;ka=ek(da,1077424,8)|0;if((ga|0)!=(ka|0)){ja=a[ka>>0]|0;if((ja&1)==0){ia=ka+1|0;ja=(ja&255)>>>1}else{ia=c[ka+8>>2]|0;ja=c[ka+4>>2]|0}ek(ga,ia,ja)|0}Ti(ea,ga)|0;ra=c[269506]|0;c[269506]=ra+1;c[ea+44>>2]=ra;if(!((a[fa>>0]&1)==0)){Ys(c[ga+32>>2]|0)}if(!((a[da>>0]&1)==0)){Ys(c[ga+20>>2]|0)}if(!((a[ga>>0]&1)==0)){Ys(c[ga+8>>2]|0)}if(!((a[ha>>0]&1)==0)){Ys(c[ha+8>>2]|0)}ha=Vs(16)|0;ga=ca+8|0;c[ga>>2]=ha;c[ca>>2]=17;c[ca+4>>2]=14;ea=ha+0|0;fa=1077440|0;da=ea+14|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[ha+14>>0]=0;fa=Cc(b,ca)|0;ea=ba+12|0;ha=ba+24|0;c[ba+0>>2]=0;c[ba+4>>2]=0;c[ba+8>>2]=0;c[ba+12>>2]=0;c[ba+16>>2]=0;c[ba+20>>2]=0;a[ha>>0]=10;ja=ha+1|0;a[ja+0>>0]=a[1078e3>>0]|0;a[ja+1>>0]=a[1078001>>0]|0;a[ja+2>>0]=a[1078002>>0]|0;a[ja+3>>0]=a[1078003>>0]|0;a[ja+4>>0]=a[1078004>>0]|0;a[ha+6>>0]=0;c[ba+36>>2]=0;c[ba+40>>2]=0;c[ba+48>>2]=0;ja=ek(ea,1078016,5)|0;if((ba|0)!=(ja|0)){ia=a[ja>>0]|0;if((ia&1)==0){da=ja+1|0;ia=(ia&255)>>>1}else{da=c[ja+8>>2]|0;ia=c[ja+4>>2]|0}ek(ba,da,ia)|0}Ti(fa,ba)|0;ra=c[269506]|0;c[269506]=ra+1;c[fa+44>>2]=ra;if(!((a[ha>>0]&1)==0)){Ys(c[ba+32>>2]|0)}if(!((a[ea>>0]&1)==0)){Ys(c[ba+20>>2]|0)}if(!((a[ba>>0]&1)==0)){Ys(c[ba+8>>2]|0)}if(!((a[ca>>0]&1)==0)){Ys(c[ga>>2]|0)}ba=Vs(16)|0;ca=aa+8|0;c[ca>>2]=ba;c[aa>>2]=17;c[aa+4>>2]=15;ea=ba+0|0;fa=1077456|0;da=ea+15|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[ba+15>>0]=0;ra=Cc(b,aa)|0;Ri($,0,-50,50,0);Ti(ra,$)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[$+24>>0]&1)==0)){Ys(c[$+32>>2]|0)}if(!((a[$+12>>0]&1)==0)){Ys(c[$+20>>2]|0)}if(!((a[$>>0]&1)==0)){Ys(c[$+8>>2]|0)}if(!((a[aa>>0]&1)==0)){Ys(c[ca>>2]|0)}aa=Vs(32)|0;$=_+8|0;c[$>>2]=aa;c[_>>2]=33;c[_+4>>2]=18;ea=aa+0|0;fa=1077472|0;da=ea+18|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[aa+18>>0]=0;ra=Cc(b,_)|0;Ri(Z,100,0,200,215);Ti(ra,Z)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[Z+24>>0]&1)==0)){Ys(c[Z+32>>2]|0)}if(!((a[Z+12>>0]&1)==0)){Ys(c[Z+20>>2]|0)}if(!((a[Z>>0]&1)==0)){Ys(c[Z+8>>2]|0)}if(!((a[_>>0]&1)==0)){Ys(c[$>>2]|0)}Z=Vs(32)|0;_=Y+8|0;c[_>>2]=Z;c[Y>>2]=33;c[Y+4>>2]=18;ea=Z+0|0;fa=1077496|0;da=ea+18|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[Z+18>>0]=0;ra=Cc(b,Y)|0;Ri(X,100,0,200,215);Ti(ra,X)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[X+24>>0]&1)==0)){Ys(c[X+32>>2]|0)}if(!((a[X+12>>0]&1)==0)){Ys(c[X+20>>2]|0)}if(!((a[X>>0]&1)==0)){Ys(c[X+8>>2]|0)}if(!((a[Y>>0]&1)==0)){Ys(c[_>>2]|0)}Y=Vs(32)|0;X=V+8|0;c[X>>2]=Y;c[V>>2]=33;c[V+4>>2]=24;ea=Y+0|0;fa=1077520|0;da=ea+24|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[Y+24>>0]=0;ra=Cc(b,V)|0;Ri(W,100,0,200,215);Ti(ra,W)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[W+24>>0]&1)==0)){Ys(c[W+32>>2]|0)}if(!((a[W+12>>0]&1)==0)){Ys(c[W+20>>2]|0)}if(!((a[W>>0]&1)==0)){Ys(c[W+8>>2]|0)}if(!((a[V>>0]&1)==0)){Ys(c[X>>2]|0)}W=Vs(32)|0;V=U+8|0;c[V>>2]=W;c[U>>2]=33;c[U+4>>2]=24;ea=W+0|0;fa=1077552|0;da=ea+24|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[W+24>>0]=0;ra=Cc(b,U)|0;Ri(T,100,0,200,215);Ti(ra,T)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[T+24>>0]&1)==0)){Ys(c[T+32>>2]|0)}if(!((a[T+12>>0]&1)==0)){Ys(c[T+20>>2]|0)}if(!((a[T>>0]&1)==0)){Ys(c[T+8>>2]|0)}if(!((a[U>>0]&1)==0)){Ys(c[V>>2]|0)}U=Vs(32)|0;T=R+8|0;c[T>>2]=U;c[R>>2]=33;c[R+4>>2]=22;ea=U+0|0;fa=1077584|0;da=ea+22|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[U+22>>0]=0;ra=Cc(b,R)|0;Ri(S,100,0,200,215);Ti(ra,S)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[S+24>>0]&1)==0)){Ys(c[S+32>>2]|0)}if(!((a[S+12>>0]&1)==0)){Ys(c[S+20>>2]|0)}if(!((a[S>>0]&1)==0)){Ys(c[S+8>>2]|0)}if(!((a[R>>0]&1)==0)){Ys(c[T>>2]|0)}R=Vs(32)|0;S=Q+8|0;c[S>>2]=R;c[Q>>2]=33;c[Q+4>>2]=22;ea=R+0|0;fa=1077608|0;da=ea+22|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[R+22>>0]=0;ra=Cc(b,Q)|0;Ri(P,100,0,200,215);Ti(ra,P)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[P+24>>0]&1)==0)){Ys(c[P+32>>2]|0)}if(!((a[P+12>>0]&1)==0)){Ys(c[P+20>>2]|0)}if(!((a[P>>0]&1)==0)){Ys(c[P+8>>2]|0)}if(!((a[Q>>0]&1)==0)){Ys(c[S>>2]|0)}a[O>>0]=10;ra=O+1|0;a[ra+0>>0]=a[1077632>>0]|0;a[ra+1>>0]=a[1077633>>0]|0;a[ra+2>>0]=a[1077634>>0]|0;a[ra+3>>0]=a[1077635>>0]|0;a[ra+4>>0]=a[1077636>>0]|0;a[O+6>>0]=0;ra=Cc(b,O)|0;Ri(N,100,0,200,215);Ti(ra,N)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[N+24>>0]&1)==0)){Ys(c[N+32>>2]|0)}if(!((a[N+12>>0]&1)==0)){Ys(c[N+20>>2]|0)}if(!((a[N>>0]&1)==0)){Ys(c[N+8>>2]|0)}if(!((a[O>>0]&1)==0)){Ys(c[O+8>>2]|0)}N=Vs(16)|0;O=M+8|0;c[O>>2]=N;c[M>>2]=17;c[M+4>>2]=11;ea=N+0|0;fa=1077640|0;da=ea+11|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[N+11>>0]=0;ra=Cc(b,M)|0;Ri(L,100,0,200,215);Ti(ra,L)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[L+24>>0]&1)==0)){Ys(c[L+32>>2]|0)}if(!((a[L+12>>0]&1)==0)){Ys(c[L+20>>2]|0)}if(!((a[L>>0]&1)==0)){Ys(c[L+8>>2]|0)}if(!((a[M>>0]&1)==0)){Ys(c[O>>2]|0)}M=Vs(16)|0;L=J+8|0;c[L>>2]=M;c[J>>2]=17;c[J+4>>2]=15;ea=M+0|0;fa=1077656|0;da=ea+15|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[M+15>>0]=0;ra=Cc(b,J)|0;Ri(K,0,0,12,216);Ti(ra,K)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[K+24>>0]&1)==0)){Ys(c[K+32>>2]|0)}if(!((a[K+12>>0]&1)==0)){Ys(c[K+20>>2]|0)}if(!((a[K>>0]&1)==0)){Ys(c[K+8>>2]|0)}if(!((a[J>>0]&1)==0)){Ys(c[L>>2]|0)}a[I>>0]=14;J=I+1|0;a[J+0>>0]=a[1077672>>0]|0;a[J+1>>0]=a[1077673>>0]|0;a[J+2>>0]=a[1077674>>0]|0;a[J+3>>0]=a[1077675>>0]|0;a[J+4>>0]=a[1077676>>0]|0;a[J+5>>0]=a[1077677>>0]|0;a[J+6>>0]=a[1077678>>0]|0;J=I+8|0;a[J>>0]=0;ra=Cc(b,I)|0;Ri(D,1,1,128,216);Ti(ra,D)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[D+24>>0]&1)==0)){Ys(c[D+32>>2]|0)}if(!((a[D+12>>0]&1)==0)){Ys(c[D+20>>2]|0)}if(!((a[D>>0]&1)==0)){Ys(c[D+8>>2]|0)}if(!((a[I>>0]&1)==0)){Ys(c[J>>2]|0)}a[H>>0]=8;ra=H+1|0;a[ra>>0]=1752392008;a[ra+1>>0]=6845281;a[ra+2>>0]=26739;a[ra+3>>0]=104;a[H+5>>0]=0;ra=Cc(b,H)|0;Ri(G,32,1,16384,217);Ti(ra,G)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[G+24>>0]&1)==0)){Ys(c[G+32>>2]|0)}if(!((a[G+12>>0]&1)==0)){Ys(c[G+20>>2]|0)}if(!((a[G>>0]&1)==0)){Ys(c[G+8>>2]|0)}if(!((a[H>>0]&1)==0)){Ys(c[H+8>>2]|0)}a[F>>0]=20;ea=F+1|0;fa=1077680|0;da=ea+10|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[F+11>>0]=0;qa=Cc(b,F)|0;ra=E+24|0;c[E+0>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;c[E+16>>2]=0;c[E+20>>2]=0;a[ra>>0]=12;pa=ra+1|0;a[pa+0>>0]=a[1077944>>0]|0;a[pa+1>>0]=a[1077945>>0]|0;a[pa+2>>0]=a[1077946>>0]|0;a[pa+3>>0]=a[1077947>>0]|0;a[pa+4>>0]=a[1077948>>0]|0;a[pa+5>>0]=a[1077949>>0]|0;a[ra+7>>0]=0;c[E+36>>2]=0;c[E+40>>2]=0;c[E+48>>2]=218;Ti(qa,E)|0;pa=c[269506]|0;c[269506]=pa+1;c[qa+44>>2]=pa;if(!((a[ra>>0]&1)==0)){Ys(c[E+32>>2]|0)}if(!((a[E+12>>0]&1)==0)){Ys(c[E+20>>2]|0)}if(!((a[E>>0]&1)==0)){Ys(c[E+8>>2]|0)}if(!((a[F>>0]&1)==0)){Ys(c[F+8>>2]|0)}a[B>>0]=12;E=B+1|0;a[E+0>>0]=a[1077696>>0]|0;a[E+1>>0]=a[1077697>>0]|0;a[E+2>>0]=a[1077698>>0]|0;a[E+3>>0]=a[1077699>>0]|0;a[E+4>>0]=a[1077700>>0]|0;a[E+5>>0]=a[1077701>>0]|0;a[B+7>>0]=0;E=Cc(b,B)|0;D=C+12|0;F=C+24|0;c[C+0>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[C+12>>2]=0;c[C+16>>2]=0;c[C+20>>2]=0;a[F>>0]=10;I=F+1|0;a[I+0>>0]=a[1078e3>>0]|0;a[I+1>>0]=a[1078001>>0]|0;a[I+2>>0]=a[1078002>>0]|0;a[I+3>>0]=a[1078003>>0]|0;a[I+4>>0]=a[1078004>>0]|0;a[F+6>>0]=0;c[C+36>>2]=0;c[C+40>>2]=0;c[C+48>>2]=0;I=ek(D,1078008,4)|0;if((C|0)!=(I|0)){H=a[I>>0]|0;if((H&1)==0){G=I+1|0;H=(H&255)>>>1}else{G=c[I+8>>2]|0;H=c[I+4>>2]|0}ek(C,G,H)|0}Ti(E,C)|0;ra=c[269506]|0;c[269506]=ra+1;c[E+44>>2]=ra;if(!((a[F>>0]&1)==0)){Ys(c[C+32>>2]|0)}if(!((a[D>>0]&1)==0)){Ys(c[C+20>>2]|0)}if(!((a[C>>0]&1)==0)){Ys(c[C+8>>2]|0)}if(!((a[B>>0]&1)==0)){Ys(c[B+8>>2]|0)}a[A>>0]=14;C=A+1|0;a[C+0>>0]=a[1077704>>0]|0;a[C+1>>0]=a[1077705>>0]|0;a[C+2>>0]=a[1077706>>0]|0;a[C+3>>0]=a[1077707>>0]|0;a[C+4>>0]=a[1077708>>0]|0;a[C+5>>0]=a[1077709>>0]|0;a[C+6>>0]=a[1077710>>0]|0;C=A+8|0;a[C>>0]=0;E=Cc(b,A)|0;D=z+12|0;F=z+24|0;c[z+0>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;a[F>>0]=10;G=F+1|0;a[G+0>>0]=a[1078e3>>0]|0;a[G+1>>0]=a[1078001>>0]|0;a[G+2>>0]=a[1078002>>0]|0;a[G+3>>0]=a[1078003>>0]|0;a[G+4>>0]=a[1078004>>0]|0;a[F+6>>0]=0;c[z+36>>2]=0;c[z+40>>2]=0;c[z+48>>2]=0;G=ek(D,1078016,5)|0;if((z|0)!=(G|0)){H=a[G>>0]|0;if((H&1)==0){B=G+1|0;G=(H&255)>>>1}else{B=c[G+8>>2]|0;G=c[G+4>>2]|0}ek(z,B,G)|0}Ti(E,z)|0;ra=c[269506]|0;c[269506]=ra+1;c[E+44>>2]=ra;if(!((a[F>>0]&1)==0)){Ys(c[z+32>>2]|0)}if(!((a[D>>0]&1)==0)){Ys(c[z+20>>2]|0)}if(!((a[z>>0]&1)==0)){Ys(c[z+8>>2]|0)}if(!((a[A>>0]&1)==0)){Ys(c[C>>2]|0)}a[y>>0]=14;z=y+1|0;a[z+0>>0]=a[1077712>>0]|0;a[z+1>>0]=a[1077713>>0]|0;a[z+2>>0]=a[1077714>>0]|0;a[z+3>>0]=a[1077715>>0]|0;a[z+4>>0]=a[1077716>>0]|0;a[z+5>>0]=a[1077717>>0]|0;a[z+6>>0]=a[1077718>>0]|0;z=y+8|0;a[z>>0]=0;ra=Cc(b,y)|0;Ri(x,1,1,500,0);Ti(ra,x)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[x+24>>0]&1)==0)){Ys(c[x+32>>2]|0)}if(!((a[x+12>>0]&1)==0)){Ys(c[x+20>>2]|0)}if(!((a[x>>0]&1)==0)){Ys(c[x+8>>2]|0)}if(!((a[y>>0]&1)==0)){Ys(c[z>>2]|0)}x=Vs(16)|0;y=w+8|0;c[y>>2]=x;c[w>>2]=17;c[w+4>>2]=11;ea=x+0|0;fa=1077720|0;da=ea+11|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[x+11>>0]=0;ra=Cc(b,w)|0;Ri(v,20,0,20,0);Ti(ra,v)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[v+24>>0]&1)==0)){Ys(c[v+32>>2]|0)}if(!((a[v+12>>0]&1)==0)){Ys(c[v+20>>2]|0)}if(!((a[v>>0]&1)==0)){Ys(c[v+8>>2]|0)}if(!((a[w>>0]&1)==0)){Ys(c[y>>2]|0)}w=Vs(32)|0;v=u+8|0;c[v>>2]=w;c[u>>2]=33;c[u+4>>2]=25;ea=w+0|0;fa=1077736|0;da=ea+25|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[w+25>>0]=0;ra=Cc(b,u)|0;Ri(t,2,1,100,0);Ti(ra,t)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[t+24>>0]&1)==0)){Ys(c[t+32>>2]|0)}if(!((a[t+12>>0]&1)==0)){Ys(c[t+20>>2]|0)}if(!((a[t>>0]&1)==0)){Ys(c[t+8>>2]|0)}if(!((a[u>>0]&1)==0)){Ys(c[v>>2]|0)}t=Vs(32)|0;u=s+8|0;c[u>>2]=t;c[s>>2]=33;c[s+4>>2]=23;ea=t+0|0;fa=1077768|0;da=ea+23|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[t+23>>0]=0;ra=Cc(b,s)|0;Ri(r,128,1,1e3,0);Ti(ra,r)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[r+24>>0]&1)==0)){Ys(c[r+32>>2]|0)}if(!((a[r+12>>0]&1)==0)){Ys(c[r+20>>2]|0)}if(!((a[r>>0]&1)==0)){Ys(c[r+8>>2]|0)}if(!((a[s>>0]&1)==0)){Ys(c[u>>2]|0)}r=Vs(32)|0;s=q+8|0;c[s>>2]=r;c[q>>2]=33;c[q+4>>2]=22;ea=r+0|0;fa=1077792|0;da=ea+22|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[r+22>>0]=0;ra=Cc(b,q)|0;Ri(p,40,0,50,0);Ti(ra,p)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[p+24>>0]&1)==0)){Ys(c[p+32>>2]|0)}if(!((a[p+12>>0]&1)==0)){Ys(c[p+20>>2]|0)}if(!((a[p>>0]&1)==0)){Ys(c[p+8>>2]|0)}if(!((a[q>>0]&1)==0)){Ys(c[s>>2]|0)}p=Vs(32)|0;q=o+8|0;c[q>>2]=p;c[o>>2]=33;c[o+4>>2]=19;ea=p+0|0;fa=1077816|0;da=ea+19|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[p+19>>0]=0;ra=Cc(b,o)|0;Ri(n,60,0,3e4,0);Ti(ra,n)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[n+24>>0]&1)==0)){Ys(c[n+32>>2]|0)}if(!((a[n+12>>0]&1)==0)){Ys(c[n+20>>2]|0)}if(!((a[n>>0]&1)==0)){Ys(c[n+8>>2]|0)}if(!((a[o>>0]&1)==0)){Ys(c[q>>2]|0)}n=Vs(32)|0;o=m+8|0;c[o>>2]=n;c[m>>2]=33;c[m+4>>2]=19;ea=n+0|0;fa=1077840|0;da=ea+19|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[n+19>>0]=0;ra=Cc(b,m)|0;Ri(l,30,0,5e3,0);Ti(ra,l)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[l+24>>0]&1)==0)){Ys(c[l+32>>2]|0)}if(!((a[l+12>>0]&1)==0)){Ys(c[l+20>>2]|0)}if(!((a[l>>0]&1)==0)){Ys(c[l+8>>2]|0)}if(!((a[m>>0]&1)==0)){Ys(c[o>>2]|0)}l=Vs(32)|0;m=k+8|0;c[m>>2]=l;c[k>>2]=33;c[k+4>>2]=21;ea=l+0|0;fa=1077864|0;da=ea+21|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[l+21>>0]=0;ra=Cc(b,k)|0;Ri(j,20,0,5e3,0);Ti(ra,j)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[j+24>>0]&1)==0)){Ys(c[j+32>>2]|0)}if(!((a[j+12>>0]&1)==0)){Ys(c[j+20>>2]|0)}if(!((a[j>>0]&1)==0)){Ys(c[j+8>>2]|0)}if(!((a[k>>0]&1)==0)){Ys(c[m>>2]|0)}a[h>>0]=20;ea=h+1|0;fa=1077888|0;da=ea+10|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[h+11>>0]=0;ra=Cc(b,h)|0;Ri(g,80,10,1e3,0);Ti(ra,g)|0;qa=c[269506]|0;c[269506]=qa+1;c[ra+44>>2]=qa;if(!((a[g+24>>0]&1)==0)){Ys(c[g+32>>2]|0)}if(!((a[g+12>>0]&1)==0)){Ys(c[g+20>>2]|0)}if(!((a[g>>0]&1)==0)){Ys(c[g+8>>2]|0)}if(!((a[h>>0]&1)==0)){Ys(c[h+8>>2]|0)}h=Vs(16)|0;g=e+8|0;c[g>>2]=h;c[e>>2]=17;c[e+4>>2]=12;ea=h+0|0;fa=1077904|0;da=ea+12|0;do{a[ea>>0]=a[fa>>0]|0;ea=ea+1|0;fa=fa+1|0}while((ea|0)<(da|0));a[h+12>>0]=0;j=Cc(b,e)|0;k=d+12|0;h=d+24|0;c[d+0>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;a[h>>0]=10;l=h+1|0;a[l+0>>0]=a[1078e3>>0]|0;a[l+1>>0]=a[1078001>>0]|0;a[l+2>>0]=a[1078002>>0]|0;a[l+3>>0]=a[1078003>>0]|0;a[l+4>>0]=a[1078004>>0]|0;a[h+6>>0]=0;c[d+36>>2]=0;c[d+40>>2]=0;c[d+48>>2]=0;l=ek(k,1078016,5)|0;if((d|0)!=(l|0)){m=a[l>>0]|0;if((m&1)==0){b=l+1|0;l=(m&255)>>>1}else{b=c[l+8>>2]|0;l=c[l+4>>2]|0}ek(d,b,l)|0}Ti(j,d)|0;ra=c[269506]|0;c[269506]=ra+1;c[j+44>>2]=ra;if(!((a[h>>0]&1)==0)){Ys(c[d+32>>2]|0)}if(!((a[k>>0]&1)==0)){Ys(c[d+20>>2]|0)}if(!((a[d>>0]&1)==0)){Ys(c[d+8>>2]|0)}if((a[e>>0]&1)==0){i=f;return}Ys(c[g>>2]|0);i=f;return}function Pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;h=i;g=d+8|0;if((c[g>>2]|0)==0){i=h;return b|0}e=d+4|0;f=0;do{j=c[d>>2]|0;a:do{if((j|0)!=(e|0)){while(1){if((c[j+72>>2]|0)==(f|0)){break}k=c[j+4>>2]|0;if((k|0)==0){while(1){k=c[j+8>>2]|0;if((c[k>>2]|0)==(j|0)){j=k;break}else{j=k}}}else{j=k;while(1){k=c[j>>2]|0;if((k|0)==0){break}else{j=k}}}if((j|0)==(e|0)){break a}}k=j+52|0;Ec(Fc(Ec(Fc(b,1077920)|0,j+16|0)|0,1077936)|0,k)|0;l=a[k>>0]|0;if((l&1)==0){n=(l&255)>>>1;m=k+1|0}else{n=c[j+56>>2]|0;m=c[j+60>>2]|0}if(!((Ft(m,1077944,n>>>0>6?6:n)|0)==0&(n|0)==6)){Ec(Fc(b,1077952)|0,j+28|0)|0;l=a[k>>0]|0}if((l&1)==0){l=(l&255)>>>1;k=k+1|0}else{l=c[j+56>>2]|0;k=c[j+60>>2]|0}m=l>>>0>4;if((Ft(k,1077968,m?4:l)|0)==0?l>>>0>3&(m^1):0){n=Fc(b,1077976)|0;n=Fc(ul(n,c[j+64>>2]|0)|0,1077984)|0;ul(n,c[j+68>>2]|0)|0}}}while(0);f=f+1|0}while(f>>>0<(c[g>>2]|0)>>>0);i=h;return b|0}function Qi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;f=b+24|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;a[f>>0]=12;g=f+1|0;a[g+0>>0]=a[1077944>>0]|0;a[g+1>>0]=a[1077945>>0]|0;a[g+2>>0]=a[1077946>>0]|0;a[g+3>>0]=a[1077947>>0]|0;a[g+4>>0]=a[1077948>>0]|0;a[g+5>>0]=a[1077949>>0]|0;a[f+7>>0]=0;c[b+36>>2]=0;c[b+40>>2]=0;c[b+48>>2]=d;i=e;return}function Ri(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;i=i+176|0;n=h+152|0;j=h+16|0;k=h;l=b+12|0;m=b+24|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;a[m>>0]=8;o=m+1|0;a[o>>0]=1852403827;a[o+1>>0]=7235952;a[o+2>>0]=28265;a[o+3>>0]=110;a[m+5>>0]=0;c[b+36>>2]=e;c[b+40>>2]=f;c[b+48>>2]=g;m=j+56|0;o=j+4|0;c[j>>2]=1022340;c[m>>2]=1022360;f=j+56|0;Ck(f,o);c[j+128>>2]=0;c[j+132>>2]=-1;c[j>>2]=1022300;c[m>>2]=1022320;c[o>>2]=1080120;e=j+8|0;Op(e);g=j+12|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[o>>2]=1005064;g=j+36|0;p=j+52|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[p>>2]=16;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;ef(o,n);if(!((a[n>>0]&1)==0)){Ys(c[n+8>>2]|0)}ul(j,d)|0;df(k,o);if((l|0)!=(k|0)){n=a[k>>0]|0;if((n&1)==0){d=k+1|0;n=(n&255)>>>1}else{d=c[k+8>>2]|0;n=c[k+4>>2]|0}ek(l,d,n)|0}d=a[l>>0]|0;if((d&1)==0){l=l+1|0;d=(d&255)>>>1}else{l=c[b+20>>2]|0;d=c[b+16>>2]|0}ek(b,l,d)|0;if(!((a[k>>0]&1)==0)){Ys(c[k+8>>2]|0)}c[j>>2]=1022300;c[m>>2]=1022320;b=j+4|0;c[b>>2]=1005064;if((a[g>>0]&1)==0){c[b>>2]=1080120;Qp(e);yk(f);i=h;return}Ys(c[j+44>>2]|0);c[b>>2]=1080120;Qp(e);yk(f);i=h;return}function Si(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;f=d+12|0;if((a[f>>0]&1)==0){c[b+0>>2]=c[f+0>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];i=e;return}f=c[d+20>>2]|0;d=c[d+16>>2]|0;if(d>>>0<11){a[b>>0]=d<<1;b=b+1|0}else{h=d+16&-16;g=Vs(h)|0;c[b+8>>2]=g;c[b>>2]=h|1;c[b+4>>2]=d;b=g}Nt(b|0,f|0,d|0)|0;a[b+d>>0]=0;i=e;return}function Ti(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;f=(b|0)==(d|0);do{if(!f){g=a[d>>0]|0;if(!((g&1)==0)){ek(b,c[d+8>>2]|0,c[d+4>>2]|0)|0;if(f){break}}else{ek(b,d+1|0,(g&255)>>>1)|0}h=d+12|0;g=a[h>>0]|0;if((g&1)==0){h=h+1|0;g=(g&255)>>>1}else{h=c[d+20>>2]|0;g=c[d+16>>2]|0}ek(b+12|0,h,g)|0;g=b+24|0;h=d+24|0;if(!f){j=a[h>>0]|0;if((j&1)==0){f=h+1|0;h=(j&255)>>>1}else{f=c[d+32>>2]|0;h=c[d+28>>2]|0}ek(g,f,h)|0}}}while(0);j=b+36|0;h=d+36|0;c[j+0>>2]=c[h+0>>2];c[j+4>>2]=c[h+4>>2];c[j+8>>2]=c[h+8>>2];c[j+12>>2]=c[h+12>>2];i=e;return b|0}function Ui(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;g=b+24|0;h=a[g>>0]|0;j=(h&1)==0;if(j){k=(h&255)>>>1;l=g+1|0}else{k=c[b+28>>2]|0;l=c[b+32>>2]|0}if(!((Ft(l,1077944,k>>>0>6?6:k)|0)==0&(k|0)==6)){k=a[d>>0]|0;if((k&1)==0){k=(k&255)>>>1}else{k=c[d+4>>2]|0}if((k|0)==0){i=e;return b|0}}if(j){k=(h&255)>>>1;m=g+1|0}else{k=c[b+28>>2]|0;m=c[b+32>>2]|0}l=k>>>0>5;if((Ft(m,1078e3,l?5:k)|0)==0?k>>>0>4&(l^1):0){n=a[d>>0]|0;m=(n&1)==0;if(m){l=(n&255)>>>1;k=d+1|0}else{l=c[d+4>>2]|0;k=c[d+8>>2]|0}if(!((Ft(k,1078008,l>>>0>4?4:l)|0)==0&(l|0)==4)){if(m){l=(n&255)>>>1;k=d+1|0}else{l=c[d+4>>2]|0;k=c[d+8>>2]|0}if(!((Ft(k,1078016,l>>>0>5?5:l)|0)==0&(l|0)==5)){i=e;return b|0}}}if(j){m=(h&255)>>>1;k=g+1|0}else{m=c[b+28>>2]|0;k=c[b+32>>2]|0}l=m>>>0>4;if((Ft(k,1077968,l?4:m)|0)==0?m>>>0>3&(l^1):0){l=(a[d>>0]&1)==0;if(l){k=d+1|0}else{k=c[d+8>>2]|0}n=At(k)|0;if((n|0)<(c[b+36>>2]|0)){i=e;return b|0}if(l){k=d+1|0}else{k=c[d+8>>2]|0}n=At(k)|0;if((n|0)>(c[b+40>>2]|0)){i=e;return b|0}}if(j){h=(h&255)>>>1;g=g+1|0}else{h=c[b+28>>2]|0;g=c[b+32>>2]|0}if(!((Ft(g,1077944,h>>>0>6?6:h)|0)==0&(h|0)==6)?(f=b+12|0,(f|0)!=(d|0)):0){h=a[d>>0]|0;if((h&1)==0){g=d+1|0;d=(h&255)>>>1}else{g=c[d+8>>2]|0;d=c[d+4>>2]|0}ek(f,g,d)|0}f=c[b+48>>2]|0;if((f|0)==0){i=e;return b|0}dc[f&255](b);i=e;return b|0}function Vi(b,d){b=b|0;d=d|0;var e=0;e=i;if((d|0)==0){i=e;return}Vi(b,c[d>>2]|0);Vi(b,c[d+4>>2]|0);if(!((a[d+52>>0]&1)==0)){Ys(c[d+60>>2]|0)}if(!((a[d+40>>0]&1)==0)){Ys(c[d+48>>2]|0)}if(!((a[d+28>>0]&1)==0)){Ys(c[d+36>>2]|0)}if(!((a[d+16>>0]&1)==0)){Ys(c[d+24>>2]|0)}Ys(d);i=e;return}function Wi(){var a=0;a=i;c[1077316>>2]=0;c[1077320>>2]=0;c[269328]=1077316;Sa(219,1077312,p|0)|0;i=a;return}function Xi(a){a=a|0;fb(a|0)|0;Ja()}function Yi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;b=i;i=i+16|0;e=b;g=c[r>>2]|0;sj(1078744,g,1078800);c[269508]=1080252;c[1078040>>2]=1080272;c[1078036>>2]=0;Ck(1078040|0,1078744);c[1078112>>2]=0;c[1078116>>2]=-1;f=c[s>>2]|0;c[269712]=1080120;Op(1078852|0);c[1078856>>2]=0;c[1078860>>2]=0;c[1078864>>2]=0;c[1078868>>2]=0;c[1078872>>2]=0;c[1078876>>2]=0;c[269712]=1079360;c[1078880>>2]=f;Pp(e,1078852|0);d=Sp(e,1082912)|0;Qp(e);c[1078884>>2]=d;c[1078888>>2]=1078808;a[1078892>>0]=(gc[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;c[269530]=1080332;c[1078124>>2]=1080352;Ck(1078124|0,1078848);c[1078196>>2]=0;c[1078200>>2]=-1;d=c[q>>2]|0;c[269724]=1080120;Op(1078900|0);c[1078904>>2]=0;c[1078908>>2]=0;c[1078912>>2]=0;c[1078916>>2]=0;c[1078920>>2]=0;c[1078924>>2]=0;c[269724]=1079360;c[1078928>>2]=d;Pp(e,1078900|0);h=Sp(e,1082912)|0;Qp(e);c[1078932>>2]=h;c[1078936>>2]=1078816;a[1078940>>0]=(gc[c[(c[h>>2]|0)+28>>2]&127](h)|0)&1;c[269552]=1080332;c[1078212>>2]=1080352;Ck(1078212|0,1078896);c[1078284>>2]=0;c[1078288>>2]=-1;h=c[(c[(c[269552]|0)+-12>>2]|0)+1078232>>2]|0;c[269574]=1080332;c[1078300>>2]=1080352;Ck(1078300|0,h);c[1078372>>2]=0;c[1078376>>2]=-1;c[(c[(c[269508]|0)+-12>>2]|0)+1078104>>2]=1078120;h=(c[(c[269552]|0)+-12>>2]|0)+1078212|0;c[h>>2]=c[h>>2]|8192;c[(c[(c[269552]|0)+-12>>2]|0)+1078280>>2]=1078120;ej(1078944,g,1078824|0);c[269596]=1080292;c[1078392>>2]=1080312;c[1078388>>2]=0;Ck(1078392|0,1078944);c[1078464>>2]=0;c[1078468>>2]=-1;c[269750]=1080184;Op(1079004|0);c[1079008>>2]=0;c[1079012>>2]=0;c[1079016>>2]=0;c[1079020>>2]=0;c[1079024>>2]=0;c[1079028>>2]=0;c[269750]=1079104;c[1079032>>2]=f;Pp(e,1079004|0);f=Sp(e,1082920)|0;Qp(e);c[1079036>>2]=f;c[1079040>>2]=1078832;a[1079044>>0]=(gc[c[(c[f>>2]|0)+28>>2]&127](f)|0)&1;c[269618]=1080372;c[1078476>>2]=1080392;Ck(1078476|0,1079e3);c[1078548>>2]=0;c[1078552>>2]=-1;c[269762]=1080184;Op(1079052|0);c[1079056>>2]=0;c[1079060>>2]=0;c[1079064>>2]=0;c[1079068>>2]=0;c[1079072>>2]=0;c[1079076>>2]=0;c[269762]=1079104;c[1079080>>2]=d;Pp(e,1079052|0);d=Sp(e,1082920)|0;Qp(e);c[1079084>>2]=d;c[1079088>>2]=1078840;a[1079092>>0]=(gc[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;c[269640]=1080372;c[1078564>>2]=1080392;Ck(1078564|0,1079048);c[1078636>>2]=0;c[1078640>>2]=-1;d=c[(c[(c[269640]|0)+-12>>2]|0)+1078584>>2]|0;c[269662]=1080372;c[1078652>>2]=1080392;Ck(1078652|0,d);c[1078724>>2]=0;c[1078728>>2]=-1;c[(c[(c[269596]|0)+-12>>2]|0)+1078456>>2]=1078472;d=(c[(c[269640]|0)+-12>>2]|0)+1078564|0;c[d>>2]=c[d>>2]|8192;c[(c[(c[269640]|0)+-12>>2]|0)+1078632>>2]=1078472;i=b;return}function Zi(a){a=a|0;a=i;il(1078120)|0;il(1078296)|0;ol(1078472)|0;ol(1078648)|0;i=a;return}function _i(a){a=a|0;var b=0;b=i;c[a>>2]=1080184;Qp(a+4|0);i=b;return}function $i(a){a=a|0;var b=0;b=i;c[a>>2]=1080184;Qp(a+4|0);Ys(a);i=b;return}function aj(b,d){b=b|0;d=d|0;var e=0;e=i;gc[c[(c[b>>2]|0)+24>>2]&127](b)|0;d=Sp(d,1082920)|0;c[b+36>>2]=d;a[b+44>>0]=(gc[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;i=e;return}function bj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+16|0;g=b+8|0;d=b;e=a+36|0;f=a+40|0;h=g+8|0;j=g;a=a+32|0;while(1){k=c[e>>2]|0;k=qc[c[(c[k>>2]|0)+20>>2]&15](k,c[f>>2]|0,g,h,d)|0;l=(c[d>>2]|0)-j|0;if((Qb(g|0,1,l|0,c[a>>2]|0)|0)!=(l|0)){e=-1;d=5;break}if((k|0)==2){e=-1;d=5;break}else if((k|0)!=1){d=4;break}}if((d|0)==4){l=((Wa(c[a>>2]|0)|0)!=0)<<31>>31;i=b;return l|0}else if((d|0)==5){i=b;return e|0}return 0}function cj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;if((a[b+44>>0]|0)!=0){g=Qb(d|0,4,e|0,c[b+32>>2]|0)|0;i=f;return g|0}if((e|0)>0){g=0}else{g=0;i=f;return g|0}while(1){if((pc[c[(c[b>>2]|0)+52>>2]&63](b,c[d>>2]|0)|0)==-1){e=6;break}g=g+1|0;if((g|0)<(e|0)){d=d+4|0}else{e=6;break}}if((e|0)==6){i=f;return g|0}return 0}function dj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+32|0;k=e+16|0;p=e+8|0;j=e+4|0;h=e;f=(d|0)==-1;a:do{if(!f){c[p>>2]=d;if((a[b+44>>0]|0)!=0){if((Qb(p|0,4,1,c[b+32>>2]|0)|0)==1){break}else{d=-1}i=e;return d|0}c[j>>2]=k;l=p+4|0;n=b+36|0;o=b+40|0;g=k+8|0;m=k;b=b+32|0;while(1){q=c[n>>2]|0;q=lc[c[(c[q>>2]|0)+12>>2]&15](q,c[o>>2]|0,p,l,h,k,g,j)|0;if((c[h>>2]|0)==(p|0)){d=-1;g=12;break}if((q|0)==3){g=7;break}r=(q|0)==1;if(!(q>>>0<2)){d=-1;g=12;break}q=(c[j>>2]|0)-m|0;if((Qb(k|0,1,q|0,c[b>>2]|0)|0)!=(q|0)){d=-1;g=12;break}if(r){p=r?c[h>>2]|0:p}else{break a}}if((g|0)==7){if((Qb(p|0,1,1,c[b>>2]|0)|0)==1){break}else{d=-1}i=e;return d|0}else if((g|0)==12){i=e;return d|0}}}while(0);r=f?0:d;i=e;return r|0}function ej(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f;c[b>>2]=1080184;h=b+4|0;Op(h);j=b+8|0;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;c[b>>2]=1079216;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=-1;a[b+52>>0]=0;Pp(g,h);h=Sp(g,1082920)|0;e=b+36|0;c[e>>2]=h;d=b+44|0;c[d>>2]=gc[c[(c[h>>2]|0)+24>>2]&127](h)|0;e=c[e>>2]|0;a[b+53>>0]=(gc[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8){$o(1079312)}else{Qp(g);i=f;return}}function fj(a){a=a|0;var b=0;b=i;c[a>>2]=1080184;Qp(a+4|0);i=b;return}function gj(a){a=a|0;var b=0;b=i;c[a>>2]=1080184;Qp(a+4|0);Ys(a);i=b;return}function hj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;g=Sp(d,1082920)|0;f=b+36|0;c[f>>2]=g;d=b+44|0;c[d>>2]=gc[c[(c[g>>2]|0)+24>>2]&127](g)|0;f=c[f>>2]|0;a[b+53>>0]=(gc[c[(c[f>>2]|0)+28>>2]&127](f)|0)&1;if((c[d>>2]|0)>8){$o(1079312)}else{i=e;return}}function ij(a){a=a|0;var b=0;b=i;a=lj(a,0)|0;i=b;return a|0}function jj(a){a=a|0;var b=0;b=i;a=lj(a,1)|0;i=b;return a|0}function kj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;j=e+16|0;f=e+8|0;l=e+4|0;k=e;g=b+52|0;m=(a[g>>0]|0)!=0;if((d|0)==-1){if(m){m=-1;i=e;return m|0}m=c[b+48>>2]|0;a[g>>0]=(m|0)!=-1&1;i=e;return m|0}h=b+48|0;a:do{if(m){c[l>>2]=c[h>>2];m=c[b+36>>2]|0;k=lc[c[(c[m>>2]|0)+12>>2]&15](m,c[b+40>>2]|0,l,l+4|0,k,j,j+8|0,f)|0;if((k|0)==1|(k|0)==2){m=-1;i=e;return m|0}else if((k|0)==3){a[j>>0]=c[h>>2];c[f>>2]=j+1}b=b+32|0;while(1){k=c[f>>2]|0;if(!(k>>>0>j>>>0)){break a}m=k+-1|0;c[f>>2]=m;if((Qa(a[m>>0]|0,c[b>>2]|0)|0)==-1){f=-1;break}}i=e;return f|0}}while(0);c[h>>2]=d;a[g>>0]=1;m=d;i=e;return m|0}function lj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,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=i;i=i+32|0;g=e+16|0;j=e+8|0;m=e+4|0;l=e;n=b+52|0;if((a[n>>0]|0)!=0){f=b+48|0;g=c[f>>2]|0;if(!d){v=g;i=e;return v|0}c[f>>2]=-1;a[n>>0]=0;v=g;i=e;return v|0}s=c[b+44>>2]|0;s=(s|0)>1?s:1;a:do{if((s|0)>0){p=b+32|0;n=0;while(1){o=Ab(c[p>>2]|0)|0;if((o|0)==-1){h=-1;break}a[g+n>>0]=o;n=n+1|0;if((n|0)>=(s|0)){break a}}i=e;return h|0}}while(0);b:do{if((a[b+53>>0]|0)==0){p=b+40|0;q=b+36|0;n=j+4|0;o=b+32|0;while(1){v=c[p>>2]|0;u=v;t=c[u>>2]|0;u=c[u+4>>2]|0;w=c[q>>2]|0;r=g+s|0;v=lc[c[(c[w>>2]|0)+16>>2]&15](w,v,g,r,m,j,n,l)|0;if((v|0)==3){f=14;break}else if((v|0)==2){h=-1;f=22;break}else if((v|0)!=1){k=s;break b}w=c[p>>2]|0;c[w>>2]=t;c[w+4>>2]=u;if((s|0)==8){h=-1;f=22;break}t=Ab(c[o>>2]|0)|0;if((t|0)==-1){h=-1;f=22;break}a[r>>0]=t;s=s+1|0}if((f|0)==14){c[j>>2]=a[g>>0]|0;k=s;break}else if((f|0)==22){i=e;return h|0}}else{c[j>>2]=a[g>>0]|0;k=s}}while(0);if(d){w=c[j>>2]|0;c[b+48>>2]=w;i=e;return w|0}d=b+32|0;while(1){if((k|0)<=0){break}k=k+-1|0;if((Qa(a[g+k>>0]|0,c[d>>2]|0)|0)==-1){h=-1;f=22;break}}if((f|0)==22){i=e;return h|0}w=c[j>>2]|0;i=e;return w|0}function mj(a){a=a|0;var b=0;b=i;c[a>>2]=1080120;Qp(a+4|0);i=b;return}function nj(a){a=a|0;var b=0;b=i;c[a>>2]=1080120;Qp(a+4|0);Ys(a);i=b;return}function oj(b,d){b=b|0;d=d|0;var e=0;e=i;gc[c[(c[b>>2]|0)+24>>2]&127](b)|0;d=Sp(d,1082912)|0;c[b+36>>2]=d;a[b+44>>0]=(gc[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;
+i=e;return}function pj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+16|0;g=b+8|0;d=b;e=a+36|0;f=a+40|0;h=g+8|0;j=g;a=a+32|0;while(1){k=c[e>>2]|0;k=qc[c[(c[k>>2]|0)+20>>2]&15](k,c[f>>2]|0,g,h,d)|0;l=(c[d>>2]|0)-j|0;if((Qb(g|0,1,l|0,c[a>>2]|0)|0)!=(l|0)){e=-1;d=5;break}if((k|0)==2){e=-1;d=5;break}else if((k|0)!=1){d=4;break}}if((d|0)==4){l=((Wa(c[a>>2]|0)|0)!=0)<<31>>31;i=b;return l|0}else if((d|0)==5){i=b;return e|0}return 0}function qj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0;g=i;if((a[b+44>>0]|0)!=0){h=Qb(e|0,1,f|0,c[b+32>>2]|0)|0;i=g;return h|0}if((f|0)>0){h=0}else{h=0;i=g;return h|0}while(1){if((pc[c[(c[b>>2]|0)+52>>2]&63](b,d[e>>0]|0)|0)==-1){f=6;break}h=h+1|0;if((h|0)<(f|0)){e=e+1|0}else{f=6;break}}if((f|0)==6){i=g;return h|0}return 0}function rj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+32|0;k=e+16|0;p=e+8|0;j=e+4|0;h=e;f=(d|0)==-1;a:do{if(!f){a[p>>0]=d;if((a[b+44>>0]|0)!=0){if((Qb(p|0,1,1,c[b+32>>2]|0)|0)==1){break}else{d=-1}i=e;return d|0}c[j>>2]=k;l=p+1|0;n=b+36|0;o=b+40|0;g=k+8|0;m=k;b=b+32|0;while(1){q=c[n>>2]|0;q=lc[c[(c[q>>2]|0)+12>>2]&15](q,c[o>>2]|0,p,l,h,k,g,j)|0;if((c[h>>2]|0)==(p|0)){d=-1;g=12;break}if((q|0)==3){g=7;break}r=(q|0)==1;if(!(q>>>0<2)){d=-1;g=12;break}q=(c[j>>2]|0)-m|0;if((Qb(k|0,1,q|0,c[b>>2]|0)|0)!=(q|0)){d=-1;g=12;break}if(r){p=r?c[h>>2]|0:p}else{break a}}if((g|0)==7){if((Qb(p|0,1,1,c[b>>2]|0)|0)==1){break}else{d=-1}i=e;return d|0}else if((g|0)==12){i=e;return d|0}}}while(0);r=f?0:d;i=e;return r|0}function sj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f;c[b>>2]=1080120;h=b+4|0;Op(h);j=b+8|0;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;c[b>>2]=1079472;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=-1;a[b+52>>0]=0;Pp(g,h);h=Sp(g,1082912)|0;e=b+36|0;c[e>>2]=h;d=b+44|0;c[d>>2]=gc[c[(c[h>>2]|0)+24>>2]&127](h)|0;e=c[e>>2]|0;a[b+53>>0]=(gc[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8){$o(1079312)}else{Qp(g);i=f;return}}function tj(a){a=a|0;var b=0;b=i;c[a>>2]=1080120;Qp(a+4|0);i=b;return}function uj(a){a=a|0;var b=0;b=i;c[a>>2]=1080120;Qp(a+4|0);Ys(a);i=b;return}function vj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;g=Sp(d,1082912)|0;f=b+36|0;c[f>>2]=g;d=b+44|0;c[d>>2]=gc[c[(c[g>>2]|0)+24>>2]&127](g)|0;f=c[f>>2]|0;a[b+53>>0]=(gc[c[(c[f>>2]|0)+28>>2]&127](f)|0)&1;if((c[d>>2]|0)>8){$o(1079312)}else{i=e;return}}function wj(a){a=a|0;var b=0;b=i;a=zj(a,0)|0;i=b;return a|0}function xj(a){a=a|0;var b=0;b=i;a=zj(a,1)|0;i=b;return a|0}function yj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;e=i;i=i+32|0;j=e+16|0;f=e+4|0;l=e+8|0;k=e;g=b+52|0;m=(a[g>>0]|0)!=0;if((d|0)==-1){if(m){m=-1;i=e;return m|0}m=c[b+48>>2]|0;a[g>>0]=(m|0)!=-1&1;i=e;return m|0}h=b+48|0;a:do{if(m){a[l>>0]=c[h>>2];m=c[b+36>>2]|0;k=lc[c[(c[m>>2]|0)+12>>2]&15](m,c[b+40>>2]|0,l,l+1|0,k,j,j+8|0,f)|0;if((k|0)==1|(k|0)==2){m=-1;i=e;return m|0}else if((k|0)==3){a[j>>0]=c[h>>2];c[f>>2]=j+1}b=b+32|0;while(1){k=c[f>>2]|0;if(!(k>>>0>j>>>0)){break a}m=k+-1|0;c[f>>2]=m;if((Qa(a[m>>0]|0,c[b>>2]|0)|0)==-1){f=-1;break}}i=e;return f|0}}while(0);c[h>>2]=d;a[g>>0]=1;m=d;i=e;return m|0}function Cg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=i;i=i+16|0;g=d;l=b+2212|0;o=c[l>>2]|0;e=o^1;f=a+80|0;c[f>>2]=c[b+(e<<9)+784>>2];m=c[b+(o<<9)+784>>2]|0;h=b+288|0;p=h;j=b+296|0;n=j;r=c[n>>2]|0;n=c[n+4>>2]|0;q=113696+(m<<3)|0;k=b+280|0;u=k;t=113184+(m<<3)|0;s=b+(e<<3)+320|0;r=((c[u>>2]|r)&c[t>>2]|(r|c[p>>2])&c[q>>2])&c[s>>2];s=((c[u+4>>2]|n)&c[t+4>>2]|(n|c[p+4>>2])&c[q+4>>2])&c[s+4>>2];q=g;c[q>>2]=r;c[q+4>>2]=s;if((r|0)==0&(s|0)==0){p=0;r=0}else{n=b+256|0;o=b+(o<<3)+320|0;p=0;r=0;do{q=38944+(m<<9)+((cd(g)|0)<<3)|0;u=n;s=c[u>>2]&c[q>>2];q=c[u+4>>2]&c[q+4>>2];u=Jt(s|0,q|0,-1,-1)|0;if((u&s|0)==0&(I&q|0)==0){u=o;p=c[u>>2]&s|p;r=c[u+4>>2]&q|r}u=g}while(!((c[u>>2]|0)==0&(c[u+4>>2]|0)==0));o=c[l>>2]|0}l=a+8|0;c[l>>2]=p;c[l+4>>2]=r;l=c[b+((o^1)<<9)+784>>2]|0;r=h;q=j;t=c[q>>2]|0;q=c[q+4>>2]|0;s=113696+(l<<3)|0;n=k;p=113184+(l<<3)|0;h=b+(o<<3)+320|0;u=h;t=((c[n>>2]|t)&c[p>>2]|(t|c[r>>2])&c[s>>2])&c[u>>2];u=((c[n+4>>2]|q)&c[p+4>>2]|(q|c[r+4>>2])&c[s+4>>2])&c[u+4>>2];s=g;c[s>>2]=t;c[s+4>>2]=u;b=b+256|0;if((t|0)==0&(u|0)==0){j=0;k=0}else{j=0;k=0;do{m=38944+(l<<9)+((cd(g)|0)<<3)|0;u=b;n=c[u>>2]&c[m>>2];m=c[u+4>>2]&c[m+4>>2];u=Jt(n|0,m|0,-1,-1)|0;if((u&n|0)==0&(I&m|0)==0){u=h;j=c[u>>2]&n|j;k=c[u+4>>2]&m|k}u=g}while(!((c[u>>2]|0)==0&(c[u+4>>2]|0)==0))}t=a;c[t>>2]=j;c[t+4>>2]=k;t=c[f>>2]|0;q=30752+((e<<3|1)<<9)+(t<<3)|0;u=c[q+4>>2]|0;s=a+24|0;c[s>>2]=c[q>>2];c[s+4>>2]=u;s=31776+(t<<3)|0;u=c[s+4>>2]|0;q=a+32|0;c[q>>2]=c[s>>2];c[q+4>>2]=u;q=b;u=28384+(t<<3)|0;s=28896+(t<<3)|0;s=(ea(c[u+4>>2]&c[q+4>>2],c[s+4>>2]|0)|0)^(ea(c[u>>2]&c[q>>2],c[s>>2]|0)|0);s=(c[29408+(t<<2)>>2]|0)+(s>>>(c[29664+(t<<2)>>2]|0)<<3)|0;q=c[s>>2]|0;s=c[s+4>>2]|0;u=a+40|0;c[u>>2]=q;c[u+4>>2]=s;u=b;p=26848+(t<<3)|0;r=27360+(t<<3)|0;r=(ea(c[p+4>>2]&c[u+4>>2],c[r+4>>2]|0)|0)^(ea(c[p>>2]&c[u>>2],c[r>>2]|0)|0);t=(c[27872+(t<<2)>>2]|0)+(r>>>(c[28128+(t<<2)>>2]|0)<<3)|0;r=c[t>>2]|0;t=c[t+4>>2]|0;u=a+48|0;c[u>>2]=r;c[u+4>>2]=t;u=a+56|0;c[u>>2]=q|r;c[u+4>>2]=s|t;u=a+64|0;c[u>>2]=0;c[u+4>>2]=0;i=d;return}function Dg(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a=i;i=i+16|0;b=a;d=0;j=-167529152;k=1188910975;f=-87058309;g=-1006142499;m=1912662104;n=-1141581509;l=-733365474;h=-740264497;do{e=0;do{p=Mt(f|0,g|0,7)|0;o=I;q=Kt(f|0,g|0,57)|0;o=Ht(j|0,k|0,q|p|0,I|o|0)|0;p=I;j=Mt(m|0,n|0,13)|0;k=I;q=Kt(m|0,n|0,51)|0;j=(q|j)^f;k=(I|k)^g;g=Mt(l|0,h|0,37)|0;f=I;q=Kt(l|0,h|0,27)|0;f=Jt(q|g|0,I|f|0,m|0,n|0)|0;g=I;m=Jt(o|0,p|0,l|0,h|0)|0;n=I;l=Jt(o|0,p|0,j|0,k|0)|0;h=I;p=1009512+(d<<12)+(e<<3)+512|0;c[p>>2]=l;c[p+4>>2]=h;e=e+1|0}while((e|0)!=64);e=0;do{q=Mt(f|0,g|0,7)|0;p=I;o=Kt(f|0,g|0,57)|0;p=Ht(j|0,k|0,o|q|0,I|p|0)|0;q=I;j=Mt(m|0,n|0,13)|0;k=I;o=Kt(m|0,n|0,51)|0;j=(o|j)^f;k=(I|k)^g;g=Mt(l|0,h|0,37)|0;f=I;o=Kt(l|0,h|0,27)|0;f=Jt(o|g|0,I|f|0,m|0,n|0)|0;g=I;m=Jt(p|0,q|0,l|0,h|0)|0;n=I;l=Jt(p|0,q|0,j|0,k|0)|0;h=I;q=1009512+(d<<12)+(e<<3)+1024|0;c[q>>2]=l;c[q+4>>2]=h;e=e+1|0}while((e|0)!=64);e=0;do{q=Mt(f|0,g|0,7)|0;p=I;o=Kt(f|0,g|0,57)|0;p=Ht(j|0,k|0,o|q|0,I|p|0)|0;q=I;j=Mt(m|0,n|0,13)|0;k=I;o=Kt(m|0,n|0,51)|0;j=(o|j)^f;k=(I|k)^g;g=Mt(l|0,h|0,37)|0;f=I;o=Kt(l|0,h|0,27)|0;f=Jt(o|g|0,I|f|0,m|0,n|0)|0;g=I;m=Jt(p|0,q|0,l|0,h|0)|0;n=I;l=Jt(p|0,q|0,j|0,k|0)|0;h=I;q=1009512+(d<<12)+(e<<3)+1536|0;c[q>>2]=l;c[q+4>>2]=h;e=e+1|0}while((e|0)!=64);e=0;do{q=Mt(f|0,g|0,7)|0;p=I;o=Kt(f|0,g|0,57)|0;p=Ht(j|0,k|0,o|q|0,I|p|0)|0;q=I;j=Mt(m|0,n|0,13)|0;k=I;o=Kt(m|0,n|0,51)|0;j=(o|j)^f;k=(I|k)^g;g=Mt(l|0,h|0,37)|0;f=I;o=Kt(l|0,h|0,27)|0;f=Jt(o|g|0,I|f|0,m|0,n|0)|0;g=I;m=Jt(p|0,q|0,l|0,h|0)|0;n=I;l=Jt(p|0,q|0,j|0,k|0)|0;h=I;q=1009512+(d<<12)+(e<<3)+2048|0;c[q>>2]=l;c[q+4>>2]=h;e=e+1|0}while((e|0)!=64);e=0;do{q=Mt(f|0,g|0,7)|0;p=I;o=Kt(f|0,g|0,57)|0;p=Ht(j|0,k|0,o|q|0,I|p|0)|0;q=I;j=Mt(m|0,n|0,13)|0;k=I;o=Kt(m|0,n|0,51)|0;j=(o|j)^f;k=(I|k)^g;g=Mt(l|0,h|0,37)|0;f=I;o=Kt(l|0,h|0,27)|0;f=Jt(o|g|0,I|f|0,m|0,n|0)|0;g=I;m=Jt(p|0,q|0,l|0,h|0)|0;n=I;l=Jt(p|0,q|0,j|0,k|0)|0;h=I;q=1009512+(d<<12)+(e<<3)+2560|0;c[q>>2]=l;c[q+4>>2]=h;e=e+1|0}while((e|0)!=64);e=0;do{q=Mt(f|0,g|0,7)|0;p=I;o=Kt(f|0,g|0,57)|0;p=Ht(j|0,k|0,o|q|0,I|p|0)|0;q=I;o=Mt(m|0,n|0,13)|0;r=I;s=Kt(m|0,n|0,51)|0;j=(s|o)^f;k=(I|r)^g;r=Mt(l|0,h|0,37)|0;o=I;s=Kt(l|0,h|0,27)|0;f=Jt(s|r|0,I|o|0,m|0,n|0)|0;g=I;m=Jt(p|0,q|0,l|0,h|0)|0;n=I;l=Jt(p|0,q|0,j|0,k|0)|0;h=I;q=1009512+(d<<12)+(e<<3)+3072|0;c[q>>2]=l;c[q+4>>2]=h;e=e+1|0}while((e|0)!=64);d=d+1|0}while((d|0)!=2);d=0;do{s=Mt(f|0,g|0,7)|0;r=I;q=Kt(f|0,g|0,57)|0;r=Ht(j|0,k|0,q|s|0,I|r|0)|0;s=I;j=Mt(m|0,n|0,13)|0;k=I;q=Kt(m|0,n|0,51)|0;j=(q|j)^f;k=(I|k)^g;g=Mt(l|0,h|0,37)|0;f=I;q=Kt(l|0,h|0,27)|0;f=Jt(q|g|0,I|f|0,m|0,n|0)|0;g=I;m=Jt(r|0,s|0,l|0,h|0)|0;n=I;l=Jt(r|0,s|0,j|0,k|0)|0;h=I;s=1017704+(d<<3)|0;c[s>>2]=l;c[s+4>>2]=h;d=d+1|0}while((d|0)!=8);d=0;while(1){s=b;c[s>>2]=d;c[s+4>>2]=((d|0)<0)<<31>>31;if((d|0)==0){d=d+1|0;continue}e=1017768+(d<<3)|0;do{p=Mt(1,0,cd(b)|0)|0;p=1017768+(p<<3)|0;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0){o=Mt(f|0,g|0,7)|0;p=I;s=Kt(f|0,g|0,57)|0;p=Ht(j|0,k|0,s|o|0,I|p|0)|0;o=I;j=Mt(m|0,n|0,13)|0;k=I;s=Kt(m|0,n|0,51)|0;j=(s|j)^f;k=(I|k)^g;g=Mt(l|0,h|0,37)|0;f=I;s=Kt(l|0,h|0,27)|0;f=Jt(s|g|0,I|f|0,m|0,n|0)|0;g=I;m=Jt(p|0,o|0,l|0,h|0)|0;n=I;l=Jt(p|0,o|0,j|0,k|0)|0;h=I;o=l;p=h}q=e;r=c[q+4>>2]^p;s=e;c[s>>2]=c[q>>2]^o;c[s+4>>2]=r;s=b}while(!((c[s>>2]|0)==0&(c[s+4>>2]|0)==0));d=d+1|0;if((d|0)==16){break}}o=Mt(f|0,g|0,7)|0;q=I;b=Kt(f|0,g|0,57)|0;q=Ht(j|0,k|0,b|o|0,I|q|0)|0;o=I;k=Mt(m|0,n|0,13)|0;b=I;s=Kt(m|0,n|0,51)|0;k=(s|k)^f;b=(I|b)^g;s=Mt(l|0,h|0,37)|0;r=I;p=Kt(l|0,h|0,27)|0;r=Jt(p|s|0,I|r|0,m|0,n|0)|0;s=I;m=Jt(q|0,o|0,l|0,h|0)|0;p=I;n=Jt(q|0,o|0,k|0,b|0)|0;o=1017896;c[o>>2]=n;c[o+4>>2]=I;o=Mt(r|0,s|0,7)|0;n=I;q=Kt(r|0,s|0,57)|0;n=Ht(k|0,b|0,q|o|0,I|n|0)|0;o=I;q=Mt(m|0,p|0,13)|0;b=I;p=Kt(m|0,p|0,51)|0;s=Jt(n|0,o|0,(p|q)^r|0,(I|b)^s|0)|0;b=1017904;c[b>>2]=s;c[b+4>>2]=I;b=1;do{e=1009384+(b<<2)|0;s=b|8;c[1009384+(s<<2)>>2]=c[e>>2];d=1009448+(b<<2)|0;c[1009448+(s<<2)>>2]=c[d>>2];d=(c[e>>2]<<16)+(c[d>>2]|0)|0;e=0;do{s=(c[1007560+(b<<8)+(e<<2)>>2]|0)+d|0;c[1017912+(b<<8)+(e<<2)>>2]=s;c[1017912+(b<<8)+((e^56)<<2)+2048>>2]=0-s;e=e+1|0}while((e|0)!=64);b=b+1|0}while((b|0)!=7);i=a;return}function Eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;Nt(a|0,b|0,2232)|0;e=a+2128|0;f=a+2220|0;h=e+0|0;g=(c[f>>2]|0)+0|0;b=h+72|0;do{c[h>>2]=c[g>>2];h=h+4|0;g=g+4|0}while((h|0)<(b|0));c[f>>2]=e;h=a+2200|0;c[h>>2]=0;c[h+4>>2]=0;i=d;return a|0}function Fg(a){a=a|0;var b=0,d=0;b=i;Lt(a|0,0,2232)|0;c[a+2168>>2]=64;c[a+2220>>2]=a+2128;d=0;do{c[a+(d<<6)+912>>2]=64;c[a+(d<<6)+400>>2]=64;c[a+(d<<6)+916>>2]=64;c[a+(d<<6)+404>>2]=64;c[a+(d<<6)+920>>2]=64;c[a+(d<<6)+408>>2]=64;c[a+(d<<6)+924>>2]=64;c[a+(d<<6)+412>>2]=64;c[a+(d<<6)+928>>2]=64;c[a+(d<<6)+416>>2]=64;c[a+(d<<6)+932>>2]=64;c[a+(d<<6)+420>>2]=64;c[a+(d<<6)+936>>2]=64;c[a+(d<<6)+424>>2]=64;c[a+(d<<6)+940>>2]=64;c[a+(d<<6)+428>>2]=64;c[a+(d<<6)+944>>2]=64;c[a+(d<<6)+432>>2]=64;c[a+(d<<6)+948>>2]=64;c[a+(d<<6)+436>>2]=64;c[a+(d<<6)+952>>2]=64;c[a+(d<<6)+440>>2]=64;c[a+(d<<6)+956>>2]=64;c[a+(d<<6)+444>>2]=64;c[a+(d<<6)+960>>2]=64;c[a+(d<<6)+448>>2]=64;c[a+(d<<6)+964>>2]=64;c[a+(d<<6)+452>>2]=64;c[a+(d<<6)+968>>2]=64;c[a+(d<<6)+456>>2]=64;c[a+(d<<6)+972>>2]=64;c[a+(d<<6)+460>>2]=64;d=d+1|0}while((d|0)!=8);i=b;return}function Gg(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;m=i;i=i+144|0;p=m+141|0;r=m+140|0;j=m;n=j+60|0;s=j+8|0;c[j>>2]=1022420;c[n>>2]=1022440;c[j+4>>2]=0;l=j+60|0;Ck(l,s);c[j+132>>2]=0;c[j+136>>2]=-1;c[j>>2]=1022380;c[n>>2]=1022400;c[s>>2]=1080120;k=j+12|0;Op(k);h=j+16|0;c[h+0>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[h+20>>2]=0;c[s>>2]=1005064;h=j+40|0;q=j+56|0;c[h+0>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[q>>2]=8;ef(s,e);Fg(b);e=j+((c[(c[j>>2]|0)+-12>>2]|0)+4)|0;c[e>>2]=c[e>>2]&-4097;e=b+256|0;s=0;q=56;a:while(1){while(1){hl(p,j,0);do{if((a[p>>0]|0)!=0){t=c[j+((c[(c[j>>2]|0)+-12>>2]|0)+24)>>2]|0;v=t+12|0;u=c[v>>2]|0;if((u|0)==(c[t+16>>2]|0)){t=gc[c[(c[t>>2]|0)+40>>2]&127](t)|0;if((t|0)==-1){v=c[(c[j>>2]|0)+-12>>2]|0;xk(j+v|0,c[j+(v+16)>>2]|6);break}}else{c[v>>2]=u+1;t=d[u>>0]|0}s=t&255}}while(0);if((c[j+((c[(c[j>>2]|0)+-12>>2]|0)+16)>>2]&5|0)!=0){break a}t=s&255;if((dt(t)|0)!=0){break a}if((t+-48|0)>>>0<10){u=12;break}if(s<<24>>24==47){u=14;break}v=a[1009352]|0;u=(v&1)==0;if(u){v=(v&255)>>>1}else{v=c[1009356>>2]|0}if((v|0)==0){continue}u=u?1009353|0:c[1009360>>2]|0;t=Et(u,t,v)|0;if((t|0)==0){continue}t=t-u|0;if(!((t|0)==-1)){u=21;break}}if((u|0)==12){q=q+-48+t|0;continue}else if((u|0)==14){s=47;q=q+-16|0;continue}else if((u|0)==21){w=t>>3;u=t&7;c[b+(q<<2)>>2]=w<<3|u;x=29920+(q<<3)|0;z=x;y=e;v=c[y+4>>2]|c[z+4>>2];t=e;c[t>>2]=c[y>>2]|c[z>>2];c[t+4>>2]=v;t=b+(u<<3)+256|0;v=x;z=t;y=c[z+4>>2]|c[v+4>>2];c[t>>2]=c[z>>2]|c[v>>2];c[t+4>>2]=y;t=b+(w<<3)+320|0;y=t;v=c[y+4>>2]|c[x+4>>2];c[t>>2]=c[y>>2]|c[x>>2];c[t+4>>2]=v;t=b+(w<<5)+(u<<2)+336|0;v=c[t>>2]|0;c[t>>2]=v+1;c[b+(q<<2)+1424>>2]=v;c[b+(w<<9)+(u<<6)+(v<<2)+400>>2]=q;q=q+1|0;continue}}hl(p,j,0);do{if((a[p>>0]|0)!=0){q=c[j+((c[(c[j>>2]|0)+-12>>2]|0)+24)>>2]|0;t=q+12|0;u=c[t>>2]|0;if((u|0)==(c[q+16>>2]|0)){q=gc[c[(c[q>>2]|0)+40>>2]&127](q)|0;if((q|0)==-1){z=c[(c[j>>2]|0)+-12>>2]|0;xk(j+z|0,c[j+(z+16)>>2]|6);break}}else{c[t>>2]=u+1;q=d[u>>0]|0}s=q&255}}while(0);q=b+2212|0;c[q>>2]=s<<24>>24!=119&1;hl(r,j,0);do{if((a[r>>0]|0)!=0){r=c[j+((c[(c[j>>2]|0)+-12>>2]|0)+24)>>2]|0;u=r+12|0;t=c[u>>2]|0;if((t|0)==(c[r+16>>2]|0)){r=gc[c[(c[r>>2]|0)+40>>2]&127](r)|0;if((r|0)==-1){z=c[(c[j>>2]|0)+-12>>2]|0;xk(j+z|0,c[j+(z+16)>>2]|6);break}}else{c[u>>2]=t+1;r=d[t>>0]|0}s=r&255}}while(0);while(1){hl(p,j,0);do{if((a[p>>0]|0)!=0){r=c[j+((c[(c[j>>2]|0)+-12>>2]|0)+24)>>2]|0;u=r+12|0;t=c[u>>2]|0;if((t|0)==(c[r+16>>2]|0)){r=gc[c[(c[r>>2]|0)+40>>2]&127](r)|0;if((r|0)==-1){z=c[(c[j>>2]|0)+-12>>2]|0;xk(j+z|0,c[j+(z+16)>>2]|6);break}}else{c[u>>2]=t+1;r=d[t>>0]|0}s=r&255}}while(0);if((c[j+((c[(c[j>>2]|0)+-12>>2]|0)+16)>>2]&5|0)!=0){break}s=s&255;if((dt(s)|0)!=0){break}t=(Yr(s)|0)!=0;r=t&1;u=_r(s)|0;s=u&255;u=u&255;if((u|0)==75){t=t?63:7;while(1){if((c[b+(t<<2)>>2]&7|0)==4){break}else{t=t+-1|0}}}else if((u|0)==81){t=t?56:0;while(1){if((c[b+(t<<2)>>2]&7|0)==4){break}else{t=t+1|0}}}else{u=u+-65|0;if(!(u>>>0<8)){continue}t=u|(t?56:0)}Hg(b,r,t)}hl(p,j,0);do{if((a[p>>0]|0)==0){r=0}else{r=c[j+((c[(c[j>>2]|0)+-12>>2]|0)+24)>>2]|0;t=r+12|0;s=c[t>>2]|0;if((s|0)==(c[r+16>>2]|0)){r=gc[c[(c[r>>2]|0)+40>>2]&127](r)|0;if((r|0)==-1){r=c[(c[j>>2]|0)+-12>>2]|0;xk(j+r|0,c[j+(r+16)>>2]|6);r=0;break}}else{c[t>>2]=s+1;r=d[s>>0]|0}r=r&255}}while(0);s=c[j>>2]|0;if((c[j+((c[s+-12>>2]|0)+16)>>2]&5|0)==0?(r+-97<<24>>24&255)<8:0){hl(p,j,0);do{if((a[p>>0]|0)==0){p=0}else{t=c[j+((c[(c[j>>2]|0)+-12>>2]|0)+24)>>2]|0;s=t+12|0;p=c[s>>2]|0;if((p|0)==(c[t+16>>2]|0)){p=gc[c[(c[t>>2]|0)+40>>2]&127](t)|0;if((p|0)==-1){p=c[(c[j>>2]|0)+-12>>2]|0;xk(j+p|0,c[j+(p+16)>>2]|6);p=0;break}}else{c[s>>2]=p+1;p=d[p>>0]|0}p=p&255}}while(0);s=c[j>>2]|0;if(((c[j+((c[s+-12>>2]|0)+16)>>2]&5|0)==0?p<<24>>24==54|p<<24>>24==51:0)?(z=((p&255)<<3)+-392|(r&255)+-97,o=(c[b+2220>>2]|0)+40|0,c[o>>2]=z,E=e,v=c[E>>2]|0,E=c[E+4>>2]|0,A=35360+(z<<3)|0,B=b+320|0,e=b+264|0,G=c[e>>2]|0,e=c[e+4>>2]|0,D=31264+(z<<3)|0,C=b+328|0,r=31776+(z<<3)|0,p=b+272|0,t=26848+(z<<3)|0,u=27360+(z<<3)|0,u=(ea(c[t+4>>2]&E,c[u+4>>2]|0)|0)^(ea(c[t>>2]&v,c[u>>2]|0)|0),u=(c[27872+(z<<2)>>2]|0)+(u>>>(c[28128+(z<<2)>>2]|0)<<3)|0,t=b+288|0,w=b+296|0,F=c[w>>2]|0,w=c[w+4>>2]|0,y=28384+(z<<3)|0,x=28896+(z<<3)|0,x=(ea(c[y+4>>2]&E,c[x+4>>2]|0)|0)^(ea(c[y>>2]&v,c[x>>2]|0)|0),x=(c[29408+(z<<2)>>2]|0)+(x>>>(c[29664+(z<<2)>>2]|0)<<3)|0,v=b+280|0,z=33824+(z<<3)|0,y=b+304|0,E=b+(c[q>>2]<<3)+320|0,(c[E>>2]&G&(c[D>>2]&G&c[C>>2]|c[B>>2]&c[A>>2]&G|c[p>>2]&c[r>>2]|(F|c[t>>2])&c[u>>2]|(c[v>>2]|F)&c[x>>2]|c[y>>2]&c[z>>2])|0)==0?(c[E+4>>2]&e&(c[D+4>>2]&e&c[C+4>>2]|c[B+4>>2]&c[A+4>>2]&e|c[p+4>>2]&c[r+4>>2]|(w|c[t+4>>2])&c[u+4>>2]|(c[v+4>>2]|w)&c[x+4>>2]|c[y+4>>2]&c[z+4>>2])|0)==0:0):0){c[o>>2]=64}}G=j+((c[s+-12>>2]|0)+4)|0;c[G>>2]=c[G>>2]|4096;G=b+2220|0;F=b+2208|0;jl(jl(j,(c[G>>2]|0)+28|0)|0,F)|0;E=(c[F>>2]<<1)+-2|0;c[F>>2]=((E|0)<0?0:E)|(c[q>>2]|0)==1;a[b+2224>>0]=f&1;c[b+2216>>2]=g;Ig(b,c[G>>2]|0);c[j>>2]=1022380;c[n>>2]=1022400;b=j+8|0;c[b>>2]=1005064;if((a[h>>0]&1)==0){c[b>>2]=1080120;Qp(k);yk(l);i=m;return}Ys(c[j+48>>2]|0);c[b>>2]=1080120;Qp(k);yk(l);i=m;return}function Hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;f=i;e=c[a+(b<<9)+784>>2]|0;g=(e|0)<(d|0);k=1<<((g&1|b<<1)^1);j=(c[a+2220>>2]|0)+24|0;c[j>>2]=k|c[j>>2];j=a+(e<<2)+1680|0;c[j>>2]=k|c[j>>2];j=a+(d<<2)+1680|0;c[j>>2]=k|c[j>>2];c[a+(k<<2)+1936>>2]=d;b=b*56|0;j=(g?5:3)|b;h=(j|0)>(d|0)?j:d;a=a+(k<<3)+2e3|0;j=(j|0)<(d|0)?j:d;while(1){if(!((j|0)==(e|0)|(j|0)==(d|0))){m=29920+(j<<3)|0;n=a;l=c[n+4>>2]|c[m+4>>2];k=a;c[k>>2]=c[n>>2]|c[m>>2];c[k+4>>2]=l}if((j|0)<(h|0)){j=j+1|0}else{break}}b=(g?6:2)|b;g=(e|0)<(b|0)?b:e;b=(b|0)<(e|0)?b:e;while(1){if(!((b|0)==(e|0)|(b|0)==(d|0))){l=29920+(b<<3)|0;k=a;m=c[k+4>>2]|c[l+4>>2];n=a;c[n>>2]=c[k>>2]|c[l>>2];c[n+4>>2]=m}if((b|0)<(g|0)){b=b+1|0}else{break}}i=f;return}function Ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,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=i;i=i+16|0;n=f+8|0;j=f;d=b+8|0;h=b+48|0;e=h;c[e>>2]=0;c[e+4>>2]=0;e=b+20|0;g=b+16|0;l=b+36|0;c[l>>2]=0;m=a+2212|0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;r=c[m>>2]|0;s=c[a+(r<<9)+784>>2]|0;o=a+256|0;G=o;w=c[G>>2]|0;G=c[G+4>>2]|0;C=35360+(s<<3)|0;D=a+320|0;k=a+264|0;p=k;B=c[p>>2]|0;p=c[p+4>>2]|0;F=31264+(s<<3)|0;E=a+328|0;z=31776+(s<<3)|0;A=a+272|0;y=26848+(s<<3)|0;x=27360+(s<<3)|0;x=(ea(c[y+4>>2]&G,c[x+4>>2]|0)|0)^(ea(c[y>>2]&w,c[x>>2]|0)|0);x=(c[27872+(s<<2)>>2]|0)+(x>>>(c[28128+(s<<2)>>2]|0)<<3)|0;y=a+288|0;q=a+296|0;v=c[q>>2]|0;q=c[q+4>>2]|0;t=28384+(s<<3)|0;u=28896+(s<<3)|0;u=(ea(c[t+4>>2]&G,c[u+4>>2]|0)|0)^(ea(c[t>>2]&w,c[u>>2]|0)|0);u=(c[29408+(s<<2)>>2]|0)+(u>>>(c[29664+(s<<2)>>2]|0)<<3)|0;w=a+280|0;s=33824+(s<<3)|0;t=a+304|0;r=a+((r^1)<<3)+320|0;q=(c[F+4>>2]&p&c[E+4>>2]|c[D+4>>2]&c[C+4>>2]&p|c[A+4>>2]&c[z+4>>2]|(q|c[y+4>>2])&c[x+4>>2]|(c[w+4>>2]|q)&c[u+4>>2]|c[t+4>>2]&c[s+4>>2])&c[r+4>>2];p=b+56|0;c[p>>2]=(c[F>>2]&B&c[E>>2]|c[D>>2]&c[C>>2]&B|c[A>>2]&c[z>>2]|(v|c[y>>2])&c[x>>2]|(c[w>>2]|v)&c[u>>2]|c[t>>2]&c[s>>2])&c[r>>2];c[p+4>>2]=q;p=c[o>>2]|0;o=c[o+4>>2]|0;q=n;c[q>>2]=p;c[q+4>>2]=o;if(!((p|0)==0&(o|0)==0)){do{G=cd(n)|0;E=c[a+(G<<2)>>2]|0;F=E&7;E=E>>3;B=1009512+(E<<12)+(F<<9)+(G<<3)|0;A=h;C=c[A+4>>2]^c[B+4>>2];D=h;c[D>>2]=c[A>>2]^c[B>>2];c[D+4>>2]=C;c[l>>2]=(c[l>>2]|0)+(c[1017912+(E<<11)+(F<<8)+(G<<2)>>2]|0);G=n}while(!((c[G>>2]|0)==0&(c[G+4>>2]|0)==0))}l=c[a+2220>>2]|0;n=c[l+40>>2]|0;if((n|0)!=64){E=1017704+((n&7)<<3)|0;D=h;F=c[D+4>>2]^c[E+4>>2];G=h;c[G>>2]=c[D>>2]^c[E>>2];c[G+4>>2]=F}if((c[m>>2]|0)==1){n=1017896;G=h;m=c[G>>2]^c[n>>2];n=c[G+4>>2]^c[n+4>>2];G=h;c[G>>2]=m;c[G+4>>2]=n}else{n=h;m=c[n>>2]|0;n=c[n+4>>2]|0}E=1017768+(c[l+24>>2]<<3)|0;F=n^c[E+4>>2];G=h;c[G>>2]=m^c[E>>2];c[G+4>>2]=F;G=k;F=c[G>>2]|0;G=c[G+4>>2]|0;E=j;c[E>>2]=F;c[E+4>>2]=G;if((F|0)==0&(G|0)==0){h=0}else{do{E=cd(j)|0;E=1009512+(c[a+(E<<2)>>2]>>3<<12)+(E<<3)+512|0;D=b;F=c[D+4>>2]^c[E+4>>2];G=b;c[G>>2]=c[D>>2]^c[E>>2];c[G+4>>2]=F;G=j}while(!((c[G>>2]|0)==0&(c[G+4>>2]|0)==0));h=0}do{j=c[a+(h<<5)+340>>2]|0;if((j|0)>0){k=d;l=c[k>>2]|0;k=c[k+4>>2]|0;b=0;do{G=1009512+(h<<12)+(b<<3)+512|0;l=l^c[G>>2];k=k^c[G+4>>2];G=d;c[G>>2]=l;c[G+4>>2]=k;b=b+1|0}while((b|0)<(j|0))}j=c[a+(h<<5)+344>>2]|0;if((j|0)>0){k=d;l=c[k>>2]|0;k=c[k+4>>2]|0;b=0;do{G=1009512+(h<<12)+(b<<3)+1024|0;l=l^c[G>>2];k=k^c[G+4>>2];G=d;c[G>>2]=l;c[G+4>>2]=k;b=b+1|0}while((b|0)<(j|0))}j=c[a+(h<<5)+348>>2]|0;if((j|0)>0){k=d;l=c[k>>2]|0;k=c[k+4>>2]|0;b=0;do{G=1009512+(h<<12)+(b<<3)+1536|0;l=l^c[G>>2];k=k^c[G+4>>2];G=d;c[G>>2]=l;c[G+4>>2]=k;b=b+1|0}while((b|0)<(j|0))}j=c[a+(h<<5)+352>>2]|0;if((j|0)>0){k=d;l=c[k>>2]|0;k=c[k+4>>2]|0;b=0;do{G=1009512+(h<<12)+(b<<3)+2048|0;l=l^c[G>>2];k=k^c[G+4>>2];G=d;c[G>>2]=l;c[G+4>>2]=k;b=b+1|0}while((b|0)<(j|0))}j=c[a+(h<<5)+356>>2]|0;if((j|0)>0){k=d;l=c[k>>2]|0;k=c[k+4>>2]|0;b=0;do{G=1009512+(h<<12)+(b<<3)+2560|0;l=l^c[G>>2];k=k^c[G+4>>2];G=d;c[G>>2]=l;c[G+4>>2]=k;b=b+1|0}while((b|0)<(j|0))}b=c[a+(h<<5)+360>>2]|0;if((b|0)>0){l=d;j=c[l>>2]|0;l=c[l+4>>2]|0;k=0;do{G=1009512+(h<<12)+(k<<3)+3072|0;j=j^c[G>>2];l=l^c[G+4>>2];G=d;c[G>>2]=j;c[G+4>>2]=l;k=k+1|0}while((k|0)<(b|0))}h=h+1|0}while((h|0)!=2);G=ea(c[1009392>>2]|0,c[a+344>>2]|0)|0;G=(c[g>>2]|0)+G|0;c[g>>2]=G;G=G+(ea(c[1009396>>2]|0,c[a+348>>2]|0)|0)|0;c[g>>2]=G;G=G+(ea(c[1009400>>2]|0,c[a+352>>2]|0)|0)|0;c[g>>2]=G;c[g>>2]=G+(ea(c[1009404>>2]|0,c[a+356>>2]|0)|0);G=ea(c[1009392>>2]|0,c[a+376>>2]|0)|0;G=(c[e>>2]|0)+G|0;c[e>>2]=G;G=G+(ea(c[1009396>>2]|0,c[a+380>>2]|0)|0)|0;c[e>>2]=G;G=G+(ea(c[1009400>>2]|0,c[a+384>>2]|0)|0)|0;c[e>>2]=G;c[e>>2]=G+(ea(c[1009404>>2]|0,c[a+388>>2]|0)|0);i=f;return}function Jg(b){b=b|0;var d=0,e=0;d=i;c[b>>2]=1022380;c[b+60>>2]=1022400;e=b+8|0;c[e>>2]=1005064;if(!((a[b+40>>0]&1)==0)){Ys(c[b+48>>2]|0)}c[e>>2]=1080120;Qp(b+12|0);yk(b+60|0);i=d;return}function Kg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+192|0;p=h+188|0;q=h+176|0;j=h+40|0;o=h+24|0;k=h+12|0;l=h;n=j+56|0;m=j+4|0;c[j>>2]=1022340;c[n>>2]=1022360;g=j+56|0;Ck(g,m);c[j+128>>2]=0;c[j+132>>2]=-1;c[j>>2]=1022300;c[n>>2]=1022320;c[m>>2]=1080120;f=j+8|0;Op(f);e=j+12|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[m>>2]=1005064;e=j+36|0;u=j+52|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[u>>2]=16;c[q+0>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;ef(m,q);if(!((a[q>>0]&1)==0)){Ys(c[q+8>>2]|0)}r=7;while(1){q=r<<3;s=0;do{do{if((s|0)<8){u=0;while(1){if((c[d+((s|q)<<2)>>2]|0)!=0){t=1;break}u=u+1|0;s=s+1|0;if((s|0)>=8){t=0;break}}if((u|0)==0){if(!t){break}}else{ul(j,u)|0;if(!t){break}}Hc(j,a[((a[1009352]&1)==0?1009353|0:c[1009360>>2]|0)+(c[d+((s|q)<<2)>>2]|0)>>0]|0)|0}}while(0);s=s+1|0}while((s|0)<8);if((r|0)<=0){break}Hc(j,47)|0;r=r+-1|0}r=d+2212|0;Fc(j,(c[r>>2]|0)==0?1022008:1022016)|0;q=d+2220|0;s=c[q>>2]|0;t=c[s+24>>2]|0;if((t&1|0)!=0){if((a[d+2224>>0]|0)==0){s=75}else{s=(c[d+1940>>2]&7)+65&255}Hc(j,s)|0;t=c[q>>2]|0;s=t;t=c[t+24>>2]|0}if((t&2|0)!=0){if((a[d+2224>>0]|0)==0){s=81}else{s=(c[d+1944>>2]&7)+65&255}Hc(j,s)|0;t=c[q>>2]|0;s=t;t=c[t+24>>2]|0}if((t&4|0)!=0){if((a[d+2224>>0]|0)==0){s=107}else{s=(c[d+1952>>2]&7)+97&255}Hc(j,s)|0;t=c[q>>2]|0;s=t;t=c[t+24>>2]|0}if((t&8|0)!=0){if((a[d+2224>>0]|0)==0){s=113}else{s=(c[d+1968>>2]&7)+97&255}Hc(j,s)|0;t=c[q>>2]|0;s=t;t=c[t+24>>2]|0}if((t&15|0)==0){Hc(j,45)|0;s=c[q>>2]|0}s=c[s+40>>2]|0;if((s|0)==64){a[o>>0]=6;p=o+1|0;a[p+0>>0]=a[1022024>>0]|0;a[p+1>>0]=a[1022025>>0]|0;a[p+2>>0]=a[1022026>>0]|0;a[o+4>>0]=0;p=0;s=1}else{a[p>>0]=(s&7)+97;a[p+1>>0]=(s>>>3)+49;a[p+2>>0]=0;u=It(p|0)|0;if(u>>>0<11){s=u<<1&255;a[l>>0]=s;t=l+1|0}else{s=u+16&-16;t=Vs(s)|0;c[l+8>>2]=t;s=s|1;c[l>>2]=s;c[l+4>>2]=u;s=s&255}Nt(t|0,p|0,u|0)|0;a[t+u>>0]=0;c[k+0>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;if((s&1)==0){p=(s&255)>>>1}else{p=c[l+4>>2]|0}if((p+1|0)>>>0<11){a[k>>0]=2;t=k+1|0}else{u=p+17&-16;t=Vs(u)|0;c[k+8>>2]=t;c[k>>2]=u|1;c[k+4>>2]=1}a[t>>0]=32;a[t+1>>0]=0;if((s&1)==0){s=l+1|0}else{s=c[l+8>>2]|0}jk(k,s,p)|0;c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;p=a[k>>0]|0;if((p&1)==0){p=(p&255)>>>1;s=k+1|0}else{p=c[k+4>>2]|0;s=c[k+8>>2]|0}if((p+1|0)>>>0<11){a[o>>0]=p<<1;t=o+1|0}else{u=p+17&-16;t=Vs(u)|0;c[o+8>>2]=t;c[o>>2]=u|1;c[o+4>>2]=p}Nt(t|0,s|0,p|0)|0;a[t+p>>0]=0;jk(o,1022032,1)|0;p=1;s=0}u=Ec(j,o)|0;u=Fc(ul(u,c[(c[q>>2]|0)+28>>2]|0)|0,1022032)|0;ul(u,(((c[d+2208>>2]|0)-((c[r>>2]|0)==1&1)|0)/2|0)+1|0)|0;if(p){if(!((a[o>>0]&1)==0)){Ys(c[o+8>>2]|0)}if(!((a[k>>0]&1)==0)){Ys(c[k+8>>2]|0)}if(!((a[l>>0]&1)==0)){Ys(c[l+8>>2]|0)}}if(s?!((a[o>>0]&1)==0):0){Ys(c[o+8>>2]|0)}df(b,m);c[j>>2]=1022300;c[n>>2]=1022320;b=j+4|0;c[b>>2]=1005064;if((a[e>>0]&1)==0){c[b>>2]=1080120;Qp(f);yk(g);i=h;return}Ys(c[j+44>>2]|0);c[b>>2]=1080120;Qp(f);yk(g);i=h;return}function Lg(b){b=b|0;var d=0,e=0;d=i;c[b>>2]=1022300;c[b+56>>2]=1022320;e=b+4|0;c[e>>2]=1005064;if(!((a[b+36>>0]&1)==0)){Ys(c[b+44>>2]|0)}c[e>>2]=1080120;Qp(b+8|0);yk(b+56|0);i=d;return}function Mg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;h=i;i=i+2272|0;o=h+208|0;g=h+72|0;t=h+56|0;s=h+44|0;r=h;q=h+32|0;p=h+20|0;l=h+8|0;n=g+56|0;m=g+4|0;c[g>>2]=1022340;c[n>>2]=1022360;f=g+56|0;Ck(f,m);c[g+128>>2]=0;c[g+132>>2]=-1;c[g>>2]=1022300;c[n>>2]=1022320;c[m>>2]=1080120;j=g+8|0;Op(j);k=g+12|0;c[k+0>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[m>>2]=1005064;k=g+36|0;x=g+52|0;c[k+0>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[x>>2]=16;c[o+0>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;ef(m,o);if(!((a[o>>0]&1)==0)){Ys(c[o+8>>2]|0)}if((e|0)!=0?(x=Fc(g,1022040)|0,x=Fc(x,(c[d+2212>>2]|0)==1?1022048:1022056)|0,qg(t,d,e),Ec(x,t)|0,!((a[t>>0]&1)==0)):0){Ys(c[t+8>>2]|0)}Fc(g,1022064)|0;t=7;while(1){u=t<<3;e=0;do{x=Fc(g,1022104)|0;Hc(x,a[((a[1009352]&1)==0?1009353|0:c[1009360>>2]|0)+(c[d+((e|u)<<2)>>2]|0)>>0]|0)|0;e=e+1|0}while((e|0)!=8);Fc(g,1022112)|0;if((t|0)>0){t=t+-1|0}else{break}}w=Fc(g,1022152)|0;Kg(s,d);w=Fc(Ec(w,s)|0,1022160)|0;e=w+((c[(c[w>>2]|0)+-12>>2]|0)+4)|0;c[e>>2]=c[e>>2]&-75|8;e=w+((c[(c[w>>2]|0)+-12>>2]|0)+4)|0;c[e>>2]=c[e>>2]|16384;c[w+((c[(c[w>>2]|0)+-12>>2]|0)+76)>>2]=48;c[w+((c[(c[w>>2]|0)+-12>>2]|0)+12)>>2]=16;e=d+2220|0;x=(c[e>>2]|0)+48|0;Fc(xl(w,c[x>>2]|0,c[x+4>>2]|0)|0,1022168)|0;if(!((a[s>>0]&1)==0)){Ys(c[s+8>>2]|0)}x=(c[e>>2]|0)+56|0;w=c[x>>2]|0;x=c[x+4>>2]|0;v=r;c[v>>2]=w;c[v+4>>2]=x;if(!((w|0)==0&(x|0)==0)){x=o+1|0;t=o+2|0;v=q+1|0;u=q+8|0;w=q+4|0;do{e=cd(r)|0;a[o>>0]=(e&7)+97;a[x>>0]=(e>>>3)+49;a[t>>0]=0;e=It(o|0)|0;if(e>>>0<11){a[q>>0]=e<<1;s=v}else{y=e+16&-16;s=Vs(y)|0;c[u>>2]=s;c[q>>2]=y|1;c[w>>2]=e}Nt(s|0,o|0,e|0)|0;a[s+e>>0]=0;Fc(Ec(g,q)|0,1022032)|0;if(!((a[q>>0]&1)==0)){Ys(c[u>>2]|0)}y=r}while(!((c[y>>2]|0)==0&(c[y+4>>2]|0)==0))}Fc(g,1022184)|0;r=o+2048|0;c[r>>2]=o;s=cg(d,o)|0;c[o+2052>>2]=s;c[s>>2]=0;s=c[c[r>>2]>>2]|0;if((s|0)!=0){q=p+8|0;do{qg(p,d,s);Fc(Ec(g,p)|0,1022032)|0;if(!((a[p>>0]&1)==0)){Ys(c[q>>2]|0)}s=(c[r>>2]|0)+8|0;c[r>>2]=s;s=c[s>>2]|0}while((s|0)!=0)}Fc(g,1022200)|0;p=o+2048|0;c[p>>2]=o;y=cg(d,o)|0;c[o+2052>>2]=y;c[y>>2]=0;o=c[c[p>>2]>>2]|0;if((o|0)!=0){q=d+2224|0;d=l+8|0;do{og(l,o,(a[q>>0]|0)!=0);Fc(Ec(g,l)|0,1022032)|0;if(!((a[l>>0]&1)==0)){Ys(c[d>>2]|0)}o=(c[p>>2]|0)+8|0;c[p>>2]=o;o=c[o>>2]|0}while((o|0)!=0)}df(b,m);c[g>>2]=1022300;c[n>>2]=1022320;b=g+4|0;c[b>>2]=1005064;if((a[k>>0]&1)==0){c[b>>2]=1080120;Qp(j);yk(f);i=h;return}Ys(c[g+44>>2]|0);c[b>>2]=1080120;Qp(j);yk(f);i=h;return}function Ng(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+16|0;f=e;g=c[a+(d<<9)+784>>2]|0;l=a+288|0;m=a+296|0;j=c[m>>2]|0;m=c[m+4>>2]|0;h=113696+(g<<3)|0;o=a+280|0;n=113184+(g<<3)|0;k=a+((d^1)<<3)+320|0;j=((c[o>>2]|j)&c[n>>2]|(j|c[l>>2])&c[h>>2])&c[k>>2];k=((c[o+4>>2]|m)&c[n+4>>2]|(m|c[l+4>>2])&c[h+4>>2])&c[k+4>>2];h=f;c[h>>2]=j;c[h+4>>2]=k;if((j|0)==0&(k|0)==0){n=0;o=0;I=n;i=e;return o|0}d=a+256|0;b=a+(b<<3)+320|0;a=0;j=0;do{h=38944+(g<<9)+((cd(f)|0)<<3)|0;o=d;k=c[o>>2]&c[h>>2];h=c[o+4>>2]&c[h+4>>2];o=Jt(k|0,h|0,-1,-1)|0;if((o&k|0)==0&(I&h|0)==0){o=b;a=c[o>>2]&k|a;j=c[o+4>>2]&h|j}o=f}while(!((c[o>>2]|0)==0&(c[o+4>>2]|0)==0));I=j;i=e;return a|0}function Og(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=i;o=35360+(b<<3)|0;p=a+320|0;u=a+264|0;n=c[u>>2]|0;u=c[u+4>>2]|0;r=31264+(b<<3)|0;q=a+328|0;l=31776+(b<<3)|0;m=a+272|0;k=26848+(b<<3)|0;j=27360+(b<<3)|0;j=(ea(c[k+4>>2]&e,c[j+4>>2]|0)|0)^(ea(c[k>>2]&d,c[j>>2]|0)|0);j=(c[27872+(b<<2)>>2]|0)+(j>>>(c[28128+(b<<2)>>2]|0)<<3)|0;k=a+288|0;t=a+296|0;g=c[t>>2]|0;t=c[t+4>>2]|0;h=28384+(b<<3)|0;f=28896+(b<<3)|0;f=(ea(c[h+4>>2]&e,c[f+4>>2]|0)|0)^(ea(c[h>>2]&d,c[f>>2]|0)|0);f=(c[29408+(b<<2)>>2]|0)+(f>>>(c[29664+(b<<2)>>2]|0)<<3)|0;h=a+280|0;e=33824+(b<<3)|0;d=a+304|0;I=c[r+4>>2]&u&c[q+4>>2]|c[p+4>>2]&c[o+4>>2]&u|c[m+4>>2]&c[l+4>>2]|(t|c[k+4>>2])&c[j+4>>2]|(c[h+4>>2]|t)&c[f+4>>2]|c[d+4>>2]&c[e+4>>2];i=s;return c[r>>2]&n&c[q>>2]|c[p>>2]&c[o>>2]&n|c[m>>2]&c[l>>2]|(g|c[k>>2])&c[j>>2]|(c[h>>2]|g)&c[f>>2]|c[d>>2]&c[e>>2]|0}function Pg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=i;g=c[a+2212>>2]|0;h=b>>>6&63;j=b&49152;if((j|0)==32768){d=c[a+(g<<9)+784>>2]|0;k=b&63;e=a+256|0;m=29920+(h<<3)|0;h=29920+(k-((g|0)==0?8:-8)<<3)|0;k=29920+(k<<3)|0;b=c[k>>2]|c[m>>2]^c[e>>2]^c[h>>2];h=c[k+4>>2]|c[m+4>>2]^c[e+4>>2]^c[h+4>>2];e=26848+(d<<3)|0;m=27360+(d<<3)|0;m=(ea(c[e+4>>2]&h,c[m+4>>2]|0)|0)^(ea(c[e>>2]&b,c[m>>2]|0)|0);m=(c[27872+(d<<2)>>2]|0)+(m>>>(c[28128+(d<<2)>>2]|0)<<3)|0;e=a+((g^1)<<3)+320|0;k=c[e>>2]|0;e=c[e+4>>2]|0;j=a+296|0;g=c[j>>2]|0;j=c[j+4>>2]|0;l=a+288|0;if(!((k&c[m>>2]&(c[l>>2]|g)|0)==0?(e&c[m+4>>2]&(c[l+4>>2]|j)|0)==0:0)){m=0;i=f;return m|0}m=28384+(d<<3)|0;l=28896+(d<<3)|0;l=(ea(c[m+4>>2]&h,c[l+4>>2]|0)|0)^(ea(c[m>>2]&b,c[l>>2]|0)|0);l=(c[29408+(d<<2)>>2]|0)+(l>>>(c[29664+(d<<2)>>2]|0)<<3)|0;m=a+280|0;m=(c[l>>2]&k&(c[m>>2]|g)|0)==0?(c[l+4>>2]&e&(c[m+4>>2]|j)|0)==0:0;i=f;return m|0}if((c[a+(h<<2)>>2]&7|0)==6){if((j|0)==49152){m=1;i=f;return m|0}l=b&63;m=a+256|0;b=c[m>>2]|0;m=c[m+4>>2]|0;q=35360+(l<<3)|0;r=a+320|0;p=a+264|0;v=c[p>>2]|0;p=c[p+4>>2]|0;t=31264+(l<<3)|0;s=a+328|0;n=31776+(l<<3)|0;o=a+272|0;d=26848+(l<<3)|0;h=27360+(l<<3)|0;h=(ea(c[d+4>>2]&m,c[h+4>>2]|0)|0)^(ea(c[d>>2]&b,c[h>>2]|0)|0);h=(c[27872+(l<<2)>>2]|0)+(h>>>(c[28128+(l<<2)>>2]|0)<<3)|0;d=a+288|0;j=a+296|0;u=c[j>>2]|0;j=c[j+4>>2]|0;k=28384+(l<<3)|0;e=28896+(l<<3)|0;e=(ea(c[k+4>>2]&m,c[e+4>>2]|0)|0)^(ea(c[k>>2]&b,c[e>>2]|0)|0);e=(c[29408+(l<<2)>>2]|0)+(e>>>(c[29664+(l<<2)>>2]|0)<<3)|0;b=a+280|0;l=33824+(l<<3)|0;k=a+304|0;m=a+((g^1)<<3)+320|0;m=((c[t>>2]&v&c[s>>2]|c[r>>2]&c[q>>2]&v|c[o>>2]&c[n>>2]|(u|c[d>>2])&c[h>>2]|(c[b>>2]|u)&c[e>>2]|c[k>>2]&c[l>>2])&c[m>>2]|0)==0?((c[t+4>>2]&p&c[s+4>>2]|c[r+4>>2]&c[q+4>>2]&p|c[o+4>>2]&c[n+4>>2]|(j|c[d+4>>2])&c[h+4>>2]|(c[b+4>>2]|j)&c[e+4>>2]|c[k+4>>2]&c[l+4>>2])&c[m+4>>2]|0)==0:0;i=f;return m|0}if((d|0)==0&(e|0)==0){v=1;i=f;return v|0}v=29920+(h<<3)|0;if((c[v>>2]&d|0)==0?(c[v+4>>2]&e|0)==0:0){v=1;i=f;return v|0}v=71712+(h<<9)+((b&63)<<3)|0;u=29920+(c[a+(g<<9)+784>>2]<<3)|0;v=(c[u>>2]&c[v>>2]|0)!=0?1:(c[u+4>>2]&c[v+4>>2]|0)!=0;i=f;return v|0}function Qg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,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=i;i=i+2064|0;h=d;e=c[a+2212>>2]|0;f=b>>>6&63;g=b&63;j=c[a+(f<<2)>>2]|0;if((b&49152|0)!=0){c[h+2048>>2]=h;e=cg(a,h)|0;c[h+2052>>2]=e;c[e>>2]=0;if((h|0)==(e|0)){l=0;i=d;return l|0}while(1){if((c[h>>2]|0)==(b|0)){e=1;h=23;break}h=h+8|0;if((h|0)==(e|0)){e=0;h=23;break}}if((h|0)==23){i=d;return e|0}}if(!((j|0)!=0&(b&12288|0)==0&(j>>3|0)==(e|0))){l=0;i=d;return l|0}b=a+(e<<3)+320|0;h=29920+(g<<3)|0;l=h;k=c[l>>2]|0;l=c[l+4>>2]|0;if(!((k&c[b>>2]|0)==0?(l&c[b+4>>2]|0)==0:0)){l=0;i=d;return l|0}b=j&7;do{if((b|0)==1){j=e*7|0;if((g>>>3|0)==(j^7|0)){l=0;i=d;return l|0}n=30752+((e<<3|1)<<9)+(f<<3)|0;m=a+((e^1)<<3)+320|0;if((c[n>>2]&k&c[m>>2]|0)==0?(c[n+4>>2]&l&c[m+4>>2]|0)==0:0){k=(e|0)==0?8:-8;if((k+f|0)==(g|0)?(c[a+(g<<2)>>2]|0)==0:0){break}if(((k<<1)+f|0)!=(g|0)){n=0;i=d;return n|0}if((f>>>3|0)!=(j^1|0)){n=0;i=d;return n|0}if((c[a+(g<<2)>>2]|0)!=0){n=0;i=d;return n|0}if((c[a+(g-k<<2)>>2]|0)!=0){n=0;i=d;return n|0}}}else{n=a+256|0;n=id(j,f,c[n>>2]|0,c[n+4>>2]|0)|0;if((n&k|0)==0&(I&l|0)==0){n=0;i=d;return n|0}}}while(0);l=a+2220|0;k=(c[l>>2]|0)+56|0;j=c[k>>2]|0;k=c[k+4>>2]|0;do{if(!((j|0)==0&(k|0)==0)){if((b|0)==6){l=a+256|0;r=29920+(f<<3)|0;h=c[r>>2]^c[l>>2];l=c[r+4>>2]^c[l+4>>2];r=35360+(g<<3)|0;s=a+320|0;q=a+264|0;w=c[q>>2]|0;q=c[q+4>>2]|0;u=31264+(g<<3)|0;t=a+328|0;o=31776+(g<<3)|0;p=a+272|0;f=26848+(g<<3)|0;b=27360+(g<<3)|0;b=(ea(c[f+4>>2]&l,c[b+4>>2]|0)|0)^(ea(c[f>>2]&h,c[b>>2]|0)|0);b=(c[27872+(g<<2)>>2]|0)+(b>>>(c[28128+(g<<2)>>2]|0)<<3)|0;f=a+288|0;j=a+296|0;v=c[j>>2]|0;j=c[j+4>>2]|0;m=28384+(g<<3)|0;k=28896+(g<<3)|0;k=(ea(c[m+4>>2]&l,c[k+4>>2]|0)|0)^(ea(c[m>>2]&h,c[k>>2]|0)|0);k=(c[29408+(g<<2)>>2]|0)+(k>>>(c[29664+(g<<2)>>2]|0)<<3)|0;h=a+280|0;m=33824+(g<<3)|0;l=a+304|0;n=a+((e^1)<<3)+320|0;if(((c[u>>2]&w&c[t>>2]|c[s>>2]&c[r>>2]&w|c[p>>2]&c[o>>2]|(v|c[f>>2])&c[b>>2]|(c[h>>2]|v)&c[k>>2]|c[l>>2]&c[m>>2])&c[n>>2]|0)==0?((c[u+4>>2]&q&c[t+4>>2]|c[s+4>>2]&c[r+4>>2]&q|c[p+4>>2]&c[o+4>>2]|(j|c[f+4>>2])&c[b+4>>2]|(c[h+4>>2]|j)&c[k+4>>2]|c[l+4>>2]&c[m+4>>2])&c[n+4>>2]|0)==0:0){break}else{e=0}i=d;return e|0}w=Jt(j|0,k|0,-1,-1)|0;if(!((w&j|0)==0&(I&k|0)==0)){w=0;i=d;return w|0}w=bd(j,k)|0;w=38944+(w<<9)+(c[a+(e<<9)+784>>2]<<3)|0;v=(c[l>>2]|0)+56|0;u=h;if((c[u>>2]&(c[v>>2]|c[w>>2])|0)==0?(c[u+4>>2]&(c[v+4>>2]|c[w+4>>2])|0)==0:0){w=0;i=d;return w|0}}}while(0);w=1;i=d;return w|0}function Rg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=i;j=b>>>6;e=j&63;k=b&63;m=d+((c[a+(e<<2)>>2]&7)<<3)+16|0;g=29920+(k<<3)|0;h=c[g>>2]|0;g=c[g+4>>2]|0;if(!((h&c[m>>2]|0)==0?(g&c[m+4>>2]|0)==0:0)){m=1;i=f;return m|0}l=d;m=c[l>>2]|0;l=c[l+4>>2]|0;if((!((m|0)==0&(l|0)==0)?(n=29920+(e<<3)|0,!((c[n>>2]&m|0)==0?(c[n+4>>2]&l|0)==0:0)):0)?(n=71712+(e<<9)+(k<<3)|0,m=29920+(c[d+80>>2]<<3)|0,(c[m>>2]&c[n>>2]|0)==0?(c[m+4>>2]&c[n+4>>2]|0)==0:0):0){n=1;
+i=f;return n|0}l=b&49152;if((l|0)==16384){m=a+256|0;n=29920+(e<<3)|0;m=id((b>>>12&3)+2|0,k,c[n>>2]^c[m>>2],c[n+4>>2]^c[m+4>>2])|0;n=29920+(c[d+80>>2]<<3)|0;n=(c[n>>2]&m|0)!=0?1:(c[n+4>>2]&I|0)!=0;i=f;return n|0}else if((l|0)==32768){l=a+256|0;n=29920+(e<<3)|0;o=29920+((j&56|b&7)<<3)|0;e=h|c[n>>2]^c[l>>2]^c[o>>2];o=g|c[n+4>>2]^c[l+4>>2]^c[o+4>>2];j=c[d+80>>2]|0;b=26848+(j<<3)|0;l=27360+(j<<3)|0;l=(ea(c[b+4>>2]&o,c[l+4>>2]|0)|0)^(ea(c[b>>2]&e,c[l>>2]|0)|0);l=(c[27872+(j<<2)>>2]|0)+(l>>>(c[28128+(j<<2)>>2]|0)<<3)|0;b=a+(c[a+2212>>2]<<3)+320|0;h=c[b>>2]|0;b=c[b+4>>2]|0;n=a+296|0;d=c[n>>2]|0;n=c[n+4>>2]|0;m=a+288|0;g=28384+(j<<3)|0;k=28896+(j<<3)|0;k=(ea(c[g+4>>2]&o,c[k+4>>2]|0)|0)^(ea(c[g>>2]&e,c[k>>2]|0)|0);j=(c[29408+(j<<2)>>2]|0)+(k>>>(c[29664+(j<<2)>>2]|0)<<3)|0;k=a+280|0;n=(c[j>>2]&h&(c[k>>2]|d)|h&c[l>>2]&(c[m>>2]|d)|0)!=0?1:(c[j+4>>2]&b&(c[k+4>>2]|n)|b&c[l+4>>2]&(c[m+4>>2]|n)|0)!=0;i=f;return n|0}else if((l|0)==49152){b=k>>>0>e>>>0;k=(c[a+2212>>2]|0)*56|0;j=k|(b?5:3);o=113696+(j<<3)|0;d=29920+(c[d+80>>2]<<3)|0;l=c[d>>2]|0;d=c[d+4>>2]|0;if((l&c[o>>2]|0)==0?(d&c[o+4>>2]|0)==0:0){o=0;i=f;return o|0}m=a+256|0;e=29920+(e<<3)|0;a=29920+(j<<3)|0;n=29920+((k|(b?6:2))<<3)|0;b=26848+(j<<3)|0;o=27360+(j<<3)|0;o=(ea(c[b+4>>2]&(c[a+4>>2]|c[e+4>>2]^c[m+4>>2]^g|c[n+4>>2]),c[o+4>>2]|0)|0)^(ea(c[b>>2]&(c[a>>2]|c[e>>2]^c[m>>2]^h|c[n>>2]),c[o>>2]|0)|0);o=(c[27872+(j<<2)>>2]|0)+(o>>>(c[28128+(j<<2)>>2]|0)<<3)|0;o=(c[o>>2]&l|0)!=0?1:(c[o+4>>2]&d|0)!=0;i=f;return o|0}else{o=0;i=f;return o|0}return 0}function Sg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=i;i=i+96|0;e=d;Cg(e,a);Tg(a,b,c,e,Rg(a,b,e)|0);i=d;return}function Tg(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;g=i;i=i+16|0;x=g+8|0;u=g+4|0;y=g;z=a+2200|0;w=z;w=Jt(c[w>>2]|0,c[w+4>>2]|0,1,0)|0;c[z>>2]=w;c[z+4>>2]=I;z=(c[255556]|0)+1|0;c[255556]=z;if((z&31|0)==0){wh()}o=a+2220|0;k=c[o>>2]|0;h=k+48|0;l=c[h>>2]|0;h=c[h+4>>2]|0;m=d+0|0;k=k+0|0;j=m+56|0;do{c[m>>2]=c[k>>2];m=m+4|0;k=k+4|0}while((m|0)<(j|0));c[d+68>>2]=c[o>>2];c[o>>2]=d;w=1017896;v=c[w>>2]^l;w=c[w+4>>2]^h;h=a+2208|0;c[h>>2]=(c[h>>2]|0)+1;h=d+28|0;c[h>>2]=(c[h>>2]|0)+1;h=d+32|0;c[h>>2]=(c[h>>2]|0)+1;h=a+2212|0;k=c[h>>2]|0;l=k^1;m=b>>>6&63;s=b&63;c[x>>2]=s;r=a+(m<<2)|0;j=c[r>>2]&7;p=b&49152;z=(p|0)==32768;do{if(!z){t=c[a+(s<<2)>>2]&7;if((p|0)==49152){Ug(a,m,x,u,y);d=c[o>>2]|0;s=d+36|0;t=c[y>>2]|0;z=c[u>>2]|0;c[s>>2]=(c[1017912+(k<<11)+(t<<2)+1024>>2]|0)-(c[1017912+(k<<11)+(z<<2)+1024>>2]|0)+(c[s>>2]|0);z=1009512+(k<<12)+(z<<3)+2048|0;t=1009512+(k<<12)+(t<<3)+2048|0;u=1;s=c[x>>2]|0;v=c[z>>2]^v^c[t>>2];w=c[z+4>>2]^w^c[t+4>>2];t=0;break}if((t|0)==0){u=0;t=0;break}else if((t|0)==1){if(z){n=8;break}else{u=s;n=9;break}}else{u=d+(l<<2)+16|0;c[u>>2]=(c[u>>2]|0)-(c[1009384+(t<<2)>>2]|0);u=s;n=11;break}}else{n=8}}while(0);if((n|0)==8){u=s+((k|0)==1?8:-8)|0;c[a+(u<<2)>>2]=0;d=c[o>>2]|0;n=9}if((n|0)==9){y=1009512+(l<<12)+(u<<3)+512|0;x=d;z=c[x+4>>2]^c[y+4>>2];t=d;c[t>>2]=c[x>>2]^c[y>>2];c[t+4>>2]=z;t=1;n=11}if((n|0)==11){y=a+256|0;d=29920+(u<<3)|0;A=d;z=y;x=c[z+4>>2]^c[A+4>>2];c[y>>2]=c[z>>2]^c[A>>2];c[y+4>>2]=x;y=a+(t<<3)+256|0;x=d;A=y;z=c[A+4>>2]^c[x+4>>2];c[y>>2]=c[A>>2]^c[x>>2];c[y+4>>2]=z;y=a+(l<<3)+320|0;z=y;x=c[z+4>>2]^c[d+4>>2];c[y>>2]=c[z>>2]^c[d>>2];c[y+4>>2]=x;y=a+(l<<5)+(t<<2)+336|0;x=(c[y>>2]|0)+-1|0;c[y>>2]=x;x=c[a+(l<<9)+(t<<6)+(x<<2)+400>>2]|0;d=c[a+(u<<2)+1424>>2]|0;c[a+(x<<2)+1424>>2]=d;c[a+(l<<9)+(t<<6)+(d<<2)+400>>2]=x;c[a+(l<<9)+(t<<6)+(c[y>>2]<<2)+400>>2]=64;d=1009512+(l<<12)+(t<<9)+(u<<3)|0;v=c[d>>2]^v;w=c[d+4>>2]^w;y=1009512+(l<<12)+(t<<9)+(c[y>>2]<<3)|0;d=(c[o>>2]|0)+8|0;x=d;z=c[x+4>>2]^c[y+4>>2];c[d>>2]=c[x>>2]^c[y>>2];c[d+4>>2]=z;d=c[o>>2]|0;z=d+36|0;c[z>>2]=(c[z>>2]|0)-(c[1017912+(l<<11)+(t<<8)+(u<<2)>>2]|0);c[d+28>>2]=0;u=0}y=1009512+(k<<12)+(j<<9)+(m<<3)|0;x=1009512+(k<<12)+(j<<9)+(s<<3)|0;v=c[y>>2]^v^c[x>>2];w=c[y+4>>2]^w^c[x+4>>2];x=d+40|0;y=c[x>>2]|0;if((y|0)!=64){A=1017704+((y&7)<<3)|0;v=c[A>>2]^v;w=c[A+4>>2]^w;c[x>>2]=64}x=d+24|0;d=c[x>>2]|0;if((d|0)!=0?(q=c[a+(s<<2)+1680>>2]|c[a+(m<<2)+1680>>2],(q|0)!=0):0){A=1017768+((q&d)<<3)|0;v=c[A>>2]^v;w=c[A+4>>2]^w;c[x>>2]=d&~q}if(!u){z=29920+(m<<3)|0;A=29920+(s<<3)|0;y=c[A>>2]^c[z>>2];z=c[A+4>>2]^c[z+4>>2];A=a+256|0;x=A;d=c[x+4>>2]^z;c[A>>2]=c[x>>2]^y;c[A+4>>2]=d;A=a+(j<<3)+256|0;d=A;x=c[d+4>>2]^z;c[A>>2]=c[d>>2]^y;c[A+4>>2]=x;A=a+(k<<3)+320|0;x=A;z=c[x+4>>2]^z;c[A>>2]=c[x>>2]^y;c[A+4>>2]=z;c[r>>2]=0;c[a+(s<<2)>>2]=j|k<<3;A=c[a+(m<<2)+1424>>2]|0;c[a+(s<<2)+1424>>2]=A;c[a+(k<<9)+(j<<6)+(A<<2)+400>>2]=s}if((j|0)==1){if((s^m|0)==16?(z=30752+((k<<3|1)<<9)+(((k|0)==0?8:-8)+m<<3)|0,y=a+(l<<3)+320|0,A=a+264|0,!((c[y>>2]&c[z>>2]&c[A>>2]|0)==0?(c[y+4>>2]&c[z+4>>2]&c[A+4>>2]|0)==0:0)):0){A=(s+m|0)/2|0;b=c[o>>2]|0;c[b+40>>2]=A;A=1017704+((A&7)<<3)|0;v=c[A>>2]^v;w=c[A+4>>2]^w}else{n=24}do{if((n|0)==24){if((p|0)==16384){z=(b>>>12&3)+2|0;r=a+256|0;b=29920+(s<<3)|0;x=b;y=r;q=c[y+4>>2]^c[x+4>>2];d=r;c[d>>2]=c[y>>2]^c[x>>2];c[d+4>>2]=q;d=a+264|0;q=b;x=d;y=c[x+4>>2]^c[q+4>>2];c[d>>2]=c[x>>2]^c[q>>2];c[d+4>>2]=y;d=a+(k<<3)+320|0;y=b;q=d;x=c[q+4>>2]^c[y+4>>2];u=d;c[u>>2]=c[q>>2]^c[y>>2];c[u+4>>2]=x;u=a+(k<<5)+340|0;x=(c[u>>2]|0)+-1|0;c[u>>2]=x;x=c[a+(k<<9)+(x<<2)+464>>2]|0;y=a+(s<<2)+1424|0;q=c[y>>2]|0;c[a+(x<<2)+1424>>2]=q;c[a+(k<<9)+(q<<2)+464>>2]=x;c[a+(k<<9)+(c[u>>2]<<2)+464>>2]=64;c[a+(s<<2)>>2]=k<<3|z;q=b;x=r;A=c[x+4>>2]|c[q+4>>2];c[r>>2]=c[x>>2]|c[q>>2];c[r+4>>2]=A;r=a+(z<<3)+256|0;A=b;q=r;x=c[q+4>>2]|c[A+4>>2];c[r>>2]=c[q>>2]|c[A>>2];c[r+4>>2]=x;r=d;x=c[r+4>>2]|c[b+4>>2];c[d>>2]=c[r>>2]|c[b>>2];c[d+4>>2]=x;d=a+(k<<5)+(z<<2)+336|0;x=c[d>>2]|0;c[d>>2]=x+1;c[y>>2]=x;c[a+(k<<9)+(z<<6)+(x<<2)+400>>2]=s;x=1009512+(k<<12)+(s<<3)+512|0;y=c[x>>2]|0;x=c[x+4>>2]|0;b=1009512+(k<<12)+(z<<9)+(s<<3)|0;v=y^v^c[b>>2];w=x^w^c[b+4>>2];b=c[o>>2]|0;r=b;x=c[r+4>>2]^x;A=b;c[A>>2]=c[r>>2]^y;c[A+4>>2]=x;d=1009512+(k<<12)+(z<<9)+((c[d>>2]|0)+-1<<3)|0;u=1009512+(k<<12)+(c[u>>2]<<3)+512|0;A=b+8|0;x=A;y=c[u+4>>2]^c[d+4>>2]^c[x+4>>2];c[A>>2]=c[u>>2]^c[d>>2]^c[x>>2];c[A+4>>2]=y;A=b+36|0;c[A>>2]=(c[1017912+(k<<11)+(z<<8)+(s<<2)>>2]|0)-(c[1017912+(k<<11)+(s<<2)+256>>2]|0)+(c[A>>2]|0);A=b+(k<<2)+16|0;c[A>>2]=(c[A>>2]|0)+(c[1009384+(z<<2)>>2]|0);break}else{b=c[o>>2]|0;break}}}while(0);y=1009512+(k<<12)+(m<<3)+512|0;x=1009512+(k<<12)+(s<<3)+512|0;z=b;A=c[x+4>>2]^c[y+4>>2]^c[z+4>>2];n=b;c[n>>2]=c[x>>2]^c[y>>2]^c[z>>2];c[n+4>>2]=A;n=c[o>>2]|0;c[n+28>>2]=0}else{n=c[o>>2]|0}A=n+36|0;c[A>>2]=(c[1017912+(k<<11)+(j<<8)+(s<<2)>>2]|0)-(c[1017912+(k<<11)+(j<<8)+(m<<2)>>2]|0)+(c[A>>2]|0);c[n+64>>2]=t;A=n+48|0;c[A>>2]=v;c[A+4>>2]=w;n=n+56|0;A=n;c[A>>2]=0;c[A+4>>2]=0;if(!f){A=c[h>>2]|0;A=A^1;c[h>>2]=A;i=g;return}if((p|0)!=0){x=c[a+(l<<9)+784>>2]|0;y=a+256|0;u=c[y>>2]|0;y=c[y+4>>2]|0;p=35360+(x<<3)|0;o=a+320|0;A=a+264|0;b=c[A>>2]|0;A=c[A+4>>2]|0;m=31264+(x<<3)|0;f=a+328|0;r=31776+(x<<3)|0;q=a+272|0;s=26848+(x<<3)|0;t=27360+(x<<3)|0;t=(ea(c[s+4>>2]&y,c[t+4>>2]|0)|0)^(ea(c[s>>2]&u,c[t>>2]|0)|0);t=(c[27872+(x<<2)>>2]|0)+(t>>>(c[28128+(x<<2)>>2]|0)<<3)|0;s=a+288|0;z=a+296|0;d=c[z>>2]|0;z=c[z+4>>2]|0;w=28384+(x<<3)|0;v=28896+(x<<3)|0;v=(ea(c[w+4>>2]&y,c[v+4>>2]|0)|0)^(ea(c[w>>2]&u,c[v>>2]|0)|0);v=(c[29408+(x<<2)>>2]|0)+(v>>>(c[29664+(x<<2)>>2]|0)<<3)|0;u=a+280|0;x=33824+(x<<3)|0;w=a+304|0;y=a+(k<<3)+320|0;z=(c[m+4>>2]&A&c[f+4>>2]|c[o+4>>2]&c[p+4>>2]&A|c[q+4>>2]&c[r+4>>2]|(z|c[s+4>>2])&c[t+4>>2]|(c[u+4>>2]|z)&c[v+4>>2]|c[w+4>>2]&c[x+4>>2])&c[y+4>>2];A=n;c[A>>2]=(c[m>>2]&b&c[f>>2]|c[o>>2]&c[p>>2]&b|c[q>>2]&c[r>>2]|(d|c[s>>2])&c[t>>2]|(c[u>>2]|d)&c[v>>2]|c[w>>2]&c[x>>2])&c[y>>2];c[A+4>>2]=z;A=c[h>>2]|0;A=A^1;c[h>>2]=A;i=g;return}A=e+(j<<3)+16|0;f=29920+(s<<3)|0;o=c[f>>2]|0;f=c[f+4>>2]|0;if((o&c[A>>2]|0)==0?(f&c[A+4>>2]|0)==0:0){o=0;f=0}else{A=n;c[A>>2]=o;c[A+4>>2]=f}p=e;e=c[p>>2]|0;p=c[p+4>>2]|0;if((e|0)==0&(p|0)==0){A=c[h>>2]|0;A=A^1;c[h>>2]=A;i=g;return}A=29920+(m<<3)|0;if((c[A>>2]&e|0)==0?(c[A+4>>2]&p|0)==0:0){A=c[h>>2]|0;A=A^1;c[h>>2]=A;i=g;return}e=c[a+(l<<9)+784>>2]|0;l=a+256|0;if((j|0)!=4){m=l;x=26848+(e<<3)|0;y=27360+(e<<3)|0;y=(ea(c[x+4>>2]&c[m+4>>2],c[y+4>>2]|0)|0)^(ea(c[x>>2]&c[m>>2],c[y>>2]|0)|0);y=(c[27872+(e<<2)>>2]|0)+(y>>>(c[28128+(e<<2)>>2]|0)<<3)|0;m=a+(k<<3)+320|0;x=m;k=a+296|0;A=k;z=a+288|0;o=o|c[x>>2]&c[y>>2]&(c[z>>2]|c[A>>2]);f=f|c[x+4>>2]&c[y+4>>2]&(c[z+4>>2]|c[A+4>>2]);A=n;c[A>>2]=o;c[A+4>>2]=f;if((j|0)==3){A=c[h>>2]|0;A=A^1;c[h>>2]=A;i=g;return}else{j=m}}else{j=a+(k<<3)+320|0;k=a+296|0}v=l;y=28384+(e<<3)|0;w=28896+(e<<3)|0;w=(ea(c[y+4>>2]&c[v+4>>2],c[w+4>>2]|0)|0)^(ea(c[y>>2]&c[v>>2],c[w>>2]|0)|0);w=(c[29408+(e<<2)>>2]|0)+(w>>>(c[29664+(e<<2)>>2]|0)<<3)|0;v=j;y=k;x=a+280|0;z=f|c[v+4>>2]&c[w+4>>2]&(c[x+4>>2]|c[y+4>>2]);A=n;c[A>>2]=o|c[v>>2]&c[w>>2]&(c[x>>2]|c[y>>2]);c[A+4>>2]=z;A=c[h>>2]|0;A=A^1;c[h>>2]=A;i=g;return}function Ug(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=c[d>>2]|0;k=(g|0)>(b|0);c[e>>2]=g;g=a+2212|0;l=c[g>>2]|0;o=l*56|0;c[f>>2]=o|(k?5:3);c[d>>2]=o|(k?6:2);k=a+256|0;o=29920+(b<<3)|0;m=o;p=k;q=c[p+4>>2]^c[m+4>>2];i=k;c[i>>2]=c[p>>2]^c[m>>2];c[i+4>>2]=q;i=a+304|0;q=o;m=i;p=c[m+4>>2]^c[q+4>>2];n=i;c[n>>2]=c[m>>2]^c[q>>2];c[n+4>>2]=p;n=a+(l<<3)+320|0;p=n;q=c[p+4>>2]^c[o+4>>2];c[n>>2]=c[p>>2]^c[o>>2];c[n+4>>2]=q;n=a+(l<<5)+360|0;q=(c[n>>2]|0)+-1|0;c[n>>2]=q;q=c[a+(l<<9)+(q<<2)+784>>2]|0;o=c[a+(b<<2)+1424>>2]|0;c[a+(q<<2)+1424>>2]=o;c[a+(l<<9)+(o<<2)+784>>2]=q;c[a+(l<<9)+(c[n>>2]<<2)+784>>2]=64;n=c[e>>2]|0;l=c[g>>2]|0;o=29920+(n<<3)|0;q=o;p=k;m=c[p+4>>2]^c[q+4>>2];j=k;c[j>>2]=c[p>>2]^c[q>>2];c[j+4>>2]=m;j=a+288|0;m=o;q=j;p=c[q+4>>2]^c[m+4>>2];h=j;c[h>>2]=c[q>>2]^c[m>>2];c[h+4>>2]=p;h=a+(l<<3)+320|0;p=h;m=c[p+4>>2]^c[o+4>>2];c[h>>2]=c[p>>2]^c[o>>2];c[h+4>>2]=m;h=a+(l<<5)+352|0;m=(c[h>>2]|0)+-1|0;c[h>>2]=m;m=c[a+(l<<9)+(m<<2)+656>>2]|0;n=c[a+(n<<2)+1424>>2]|0;c[a+(m<<2)+1424>>2]=n;c[a+(l<<9)+(n<<2)+656>>2]=m;c[a+(l<<9)+(c[h>>2]<<2)+656>>2]=64;c[a+(c[e>>2]<<2)>>2]=0;c[a+(b<<2)>>2]=0;h=c[d>>2]|0;b=c[g>>2]|0;c[a+(h<<2)>>2]=b<<3|6;e=29920+(h<<3)|0;l=e;n=k;m=c[n+4>>2]|c[l+4>>2];d=k;c[d>>2]=c[n>>2]|c[l>>2];c[d+4>>2]=m;d=e;m=i;l=c[m+4>>2]|c[d+4>>2];c[i>>2]=c[m>>2]|c[d>>2];c[i+4>>2]=l;i=a+(b<<3)+320|0;l=i;d=c[l+4>>2]|c[e+4>>2];c[i>>2]=c[l>>2]|c[e>>2];c[i+4>>2]=d;i=a+(b<<5)+360|0;d=c[i>>2]|0;c[i>>2]=d+1;c[a+(h<<2)+1424>>2]=d;c[a+(b<<9)+(d<<2)+784>>2]=h;d=c[f>>2]|0;b=c[g>>2]|0;c[a+(d<<2)>>2]=b<<3|4;g=29920+(d<<3)|0;h=g;f=k;i=c[f+4>>2]|c[h+4>>2];e=k;c[e>>2]=c[f>>2]|c[h>>2];c[e+4>>2]=i;e=g;i=j;h=c[i+4>>2]|c[e+4>>2];f=j;c[f>>2]=c[i>>2]|c[e>>2];c[f+4>>2]=h;f=a+(b<<3)+320|0;h=f;e=c[h+4>>2]|c[g+4>>2];c[f>>2]=c[h>>2]|c[g>>2];c[f+4>>2]=e;f=a+(b<<5)+352|0;e=c[f>>2]|0;c[f>>2]=e+1;c[a+(d<<2)+1424>>2]=e;c[a+(b<<9)+(e<<2)+656>>2]=d;return}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=i;i=i+16|0;h=d+8|0;l=a+2212|0;e=c[l>>2]|0;k=e^1;c[l>>2]=k;l=b>>>6&63;f=b&63;c[h>>2]=f;j=a+(f<<2)|0;g=b&49152;if((g|0)==49152){Wg(a,l,h,d+4|0,d);p=a+2220|0;o=c[p>>2]|0;o=o+68|0;o=c[o>>2]|0;c[p>>2]=o;p=a+2208|0;o=c[p>>2]|0;o=o+-1|0;c[p>>2]=o;i=d;return}else if((g|0)==16384){q=(b>>>12&3)+2|0;h=a+256|0;p=29920+(f<<3)|0;n=p;o=h;s=c[o+4>>2]^c[n+4>>2];b=h;c[b>>2]=c[o>>2]^c[n>>2];c[b+4>>2]=s;b=a+(q<<3)+256|0;s=p;n=b;o=c[n+4>>2]^c[s+4>>2];c[b>>2]=c[n>>2]^c[s>>2];c[b+4>>2]=o;b=a+(k<<3)+320|0;o=p;s=b;n=c[s+4>>2]^c[o+4>>2];m=b;c[m>>2]=c[s>>2]^c[o>>2];c[m+4>>2]=n;m=a+(k<<5)+(q<<2)+336|0;n=(c[m>>2]|0)+-1|0;c[m>>2]=n;n=c[a+(k<<9)+(q<<6)+(n<<2)+400>>2]|0;o=a+(f<<2)+1424|0;s=c[o>>2]|0;c[a+(n<<2)+1424>>2]=s;c[a+(k<<9)+(q<<6)+(s<<2)+400>>2]=n;c[a+(k<<9)+(q<<6)+(c[m>>2]<<2)+400>>2]=64;m=k<<3;c[j>>2]=m|1;q=p;s=h;n=c[s+4>>2]|c[q+4>>2];r=h;c[r>>2]=c[s>>2]|c[q>>2];c[r+4>>2]=n;r=a+264|0;n=p;q=r;s=c[q+4>>2]|c[n+4>>2];c[r>>2]=c[q>>2]|c[n>>2];c[r+4>>2]=s;r=p;s=b;n=c[s+4>>2]|c[r+4>>2];q=b;c[q>>2]=c[s>>2]|c[r>>2];c[q+4>>2]=n;q=a+(k<<5)+340|0;n=c[q>>2]|0;c[q>>2]=n+1;c[o>>2]=n;c[a+(k<<9)+(n<<2)+464>>2]=f;n=1}else{o=a+(f<<2)+1424|0;p=29920+(f<<3)|0;h=a+256|0;b=a+(k<<3)+320|0;m=k<<3;n=c[j>>2]&7}r=p;s=29920+(l<<3)|0;q=c[s>>2]^c[r>>2];r=c[s+4>>2]^c[r+4>>2];s=h;t=c[s+4>>2]^r;p=h;c[p>>2]=c[s>>2]^q;c[p+4>>2]=t;p=a+(n<<3)+256|0;t=p;s=c[t+4>>2]^r;c[p>>2]=c[t>>2]^q;c[p+4>>2]=s;p=b;r=c[p+4>>2]^r;s=b;c[s>>2]=c[p>>2]^q;c[s+4>>2]=r;c[j>>2]=0;c[a+(l<<2)>>2]=n|m;j=c[o>>2]|0;c[a+(l<<2)+1424>>2]=j;c[a+(k<<9)+(n<<6)+(j<<2)+400>>2]=l;k=a+2220|0;j=c[(c[k>>2]|0)+64>>2]|0;if((j|0)==0){t=k;s=c[t>>2]|0;s=s+68|0;s=c[s>>2]|0;c[t>>2]=s;t=a+2208|0;s=c[t>>2]|0;s=s+-1|0;c[t>>2]=s;i=d;return}if((g|0)==32768){f=f-((e|0)==1?8:-8)|0}c[a+(f<<2)>>2]=j|e<<3;r=29920+(f<<3)|0;p=r;q=h;t=c[q+4>>2]|c[p+4>>2];s=h;c[s>>2]=c[q>>2]|c[p>>2];c[s+4>>2]=t;s=a+(j<<3)+256|0;t=r;p=s;q=c[p+4>>2]|c[t+4>>2];c[s>>2]=c[p>>2]|c[t>>2];c[s+4>>2]=q;s=a+(e<<3)+320|0;q=s;t=c[q+4>>2]|c[r+4>>2];c[s>>2]=c[q>>2]|c[r>>2];c[s+4>>2]=t;s=a+(e<<5)+(j<<2)+336|0;t=c[s>>2]|0;c[s>>2]=t+1;c[a+(f<<2)+1424>>2]=t;c[a+(e<<9)+(j<<6)+(t<<2)+400>>2]=f;t=k;s=c[t>>2]|0;s=s+68|0;s=c[s>>2]|0;c[t>>2]=s;t=a+2208|0;s=c[t>>2]|0;s=s+-1|0;c[t>>2]=s;i=d;return}function Wg(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=c[d>>2]|0;o=(g|0)>(b|0);c[e>>2]=g;g=a+2212|0;l=c[g>>2]|0;k=l*56|0;c[f>>2]=k|(o?5:3);o=k|(o?6:2);c[d>>2]=o;k=a+256|0;p=29920+(o<<3)|0;j=p;m=k;q=c[m+4>>2]^c[j+4>>2];i=k;c[i>>2]=c[m>>2]^c[j>>2];c[i+4>>2]=q;i=a+304|0;q=p;j=i;m=c[j+4>>2]^c[q+4>>2];n=i;c[n>>2]=c[j>>2]^c[q>>2];c[n+4>>2]=m;n=a+(l<<3)+320|0;m=n;q=c[m+4>>2]^c[p+4>>2];c[n>>2]=c[m>>2]^c[p>>2];c[n+4>>2]=q;n=a+(l<<5)+360|0;q=(c[n>>2]|0)+-1|0;c[n>>2]=q;q=c[a+(l<<9)+(q<<2)+784>>2]|0;o=c[a+(o<<2)+1424>>2]|0;c[a+(q<<2)+1424>>2]=o;c[a+(l<<9)+(o<<2)+784>>2]=q;c[a+(l<<9)+(c[n>>2]<<2)+784>>2]=64;n=c[f>>2]|0;l=c[g>>2]|0;o=29920+(n<<3)|0;q=o;p=k;m=c[p+4>>2]^c[q+4>>2];j=k;c[j>>2]=c[p>>2]^c[q>>2];c[j+4>>2]=m;j=a+288|0;m=o;q=j;p=c[q+4>>2]^c[m+4>>2];h=j;c[h>>2]=c[q>>2]^c[m>>2];c[h+4>>2]=p;h=a+(l<<3)+320|0;p=h;m=c[p+4>>2]^c[o+4>>2];c[h>>2]=c[p>>2]^c[o>>2];c[h+4>>2]=m;h=a+(l<<5)+352|0;m=(c[h>>2]|0)+-1|0;c[h>>2]=m;m=c[a+(l<<9)+(m<<2)+656>>2]|0;n=c[a+(n<<2)+1424>>2]|0;c[a+(m<<2)+1424>>2]=n;c[a+(l<<9)+(n<<2)+656>>2]=m;c[a+(l<<9)+(c[h>>2]<<2)+656>>2]=64;c[a+(c[f>>2]<<2)>>2]=0;c[a+(c[d>>2]<<2)>>2]=0;h=c[g>>2]|0;c[a+(b<<2)>>2]=h<<3|6;f=29920+(b<<3)|0;l=f;n=k;m=c[n+4>>2]|c[l+4>>2];d=k;c[d>>2]=c[n>>2]|c[l>>2];c[d+4>>2]=m;d=f;m=i;l=c[m+4>>2]|c[d+4>>2];c[i>>2]=c[m>>2]|c[d>>2];c[i+4>>2]=l;i=a+(h<<3)+320|0;l=i;d=c[l+4>>2]|c[f+4>>2];c[i>>2]=c[l>>2]|c[f>>2];c[i+4>>2]=d;i=a+(h<<5)+360|0;d=c[i>>2]|0;c[i>>2]=d+1;c[a+(b<<2)+1424>>2]=d;c[a+(h<<9)+(d<<2)+784>>2]=b;b=c[e>>2]|0;d=c[g>>2]|0;c[a+(b<<2)>>2]=d<<3|4;g=29920+(b<<3)|0;h=g;e=k;i=c[e+4>>2]|c[h+4>>2];f=k;c[f>>2]=c[e>>2]|c[h>>2];c[f+4>>2]=i;f=g;i=j;h=c[i+4>>2]|c[f+4>>2];e=j;c[e>>2]=c[i>>2]|c[f>>2];c[e+4>>2]=h;e=a+(d<<3)+320|0;h=e;f=c[h+4>>2]|c[g+4>>2];c[e>>2]=c[h>>2]|c[g>>2];c[e+4>>2]=f;e=a+(d<<5)+352|0;f=c[e>>2]|0;c[e>>2]=f+1;c[a+(b<<2)+1424>>2]=f;c[a+(d<<9)+(f<<2)+656>>2]=b;return}function Xg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i;d=a+2220|0;h=b+0|0;f=(c[d>>2]|0)+0|0;g=h+72|0;do{c[h>>2]=c[f>>2];h=h+4|0;f=f+4|0}while((h|0)<(g|0));c[b+68>>2]=c[d>>2];c[d>>2]=b;f=b+40|0;g=c[f>>2]|0;if((g|0)==64){g=b+48|0;f=c[g>>2]|0;g=c[g+4>>2]|0}else{g=1017704+((g&7)<<3)|0;j=b+48|0;k=j;h=c[k>>2]^c[g>>2];g=c[k+4>>2]^c[g+4>>2];c[j>>2]=h;c[j+4>>2]=g;c[f>>2]=64;f=h}h=1017896;j=g^c[h+4>>2];k=b+48|0;c[k>>2]=f^c[h>>2];c[k+4>>2]=j;k=c[d>>2]|0;j=k+28|0;c[j>>2]=(c[j>>2]|0)+1;c[k+32>>2]=0;k=a+2212|0;c[k>>2]=c[k>>2]^1;i=e;return}function Yg(a){a=a|0;var b=0;b=a+2220|0;c[b>>2]=c[(c[b>>2]|0)+68>>2];a=a+2212|0;c[a>>2]=c[a>>2]^1;return}function Zg(a,b){a=a|0;b=b|0;var d=0;d=i;if((c[1009384+(c[a+((b>>>6&63)<<2)>>2]<<2)>>2]|0)<=(c[1009384+(c[a+((b&63)<<2)>>2]<<2)>>2]|0)){b=1e4;i=d;return b|0}b=_g(a,b)|0;i=d;return b|0}function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,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=i;i=i+128|0;e=d;R=b>>>6&63;J=b&63;G=c[1009384+(c[a+(J<<2)>>2]<<2)>>2]|0;c[e>>2]=G;M=c[a+(R<<2)>>2]|0;H=M>>3;N=a+256|0;R=29920+(R<<3)|0;K=c[R>>2]^c[N>>2];N=c[R+4>>2]^c[N+4>>2];b=b&49152;if((b|0)==49152){R=0;i=d;return R|0}else if((b|0)==32768){G=29920+(J-((H|0)==0?8:-8)<<3)|0;K=c[G>>2]^K;N=c[G+4>>2]^N;G=c[1009388>>2]|0;c[e>>2]=G}T=35360+(J<<3)|0;U=a+320|0;D=a+264|0;F=c[D>>2]|0;D=c[D+4>>2]|0;W=31264+(J<<3)|0;V=a+328|0;S=31776+(J<<3)|0;E=a+272|0;b=c[E>>2]|0;E=c[E+4>>2]|0;q=26848+(J<<3)|0;s=c[q>>2]|0;q=c[q+4>>2]|0;r=27360+(J<<3)|0;t=c[r>>2]|0;r=c[r+4>>2]|0;Q=(ea(q&N,r)|0)^(ea(s&K,t)|0);u=c[28128+(J<<2)>>2]|0;p=c[27872+(J<<2)>>2]|0;Q=p+(Q>>>u<<3)|0;A=a+288|0;z=c[A>>2]|0;A=c[A+4>>2]|0;y=a+296|0;x=c[y>>2]|0;y=c[y+4>>2]|0;v=x|z;w=y|A;h=28384+(J<<3)|0;k=c[h>>2]|0;h=c[h+4>>2]|0;j=28896+(J<<3)|0;l=c[j>>2]|0;j=c[j+4>>2]|0;R=(ea(h&N,j)|0)^(ea(k&K,l)|0);m=c[29664+(J<<2)>>2]|0;g=c[29408+(J<<2)>>2]|0;R=g+(R>>>m<<3)|0;C=a+280|0;B=c[C>>2]|0;C=c[C+4>>2]|0;n=B|x;o=C|y;P=33824+(J<<3)|0;L=a+304|0;O=(c[W>>2]&F&c[V>>2]|c[U>>2]&c[T>>2]&F|b&c[S>>2]|v&c[Q>>2]|n&c[R>>2]|c[L>>2]&c[P>>2])&K;P=(c[W+4>>2]&D&c[V+4>>2]|c[U+4>>2]&c[T+4>>2]&D|E&c[S+4>>2]|w&c[Q+4>>2]|o&c[R+4>>2]|c[L+4>>2]&c[P+4>>2])&N;L=H^1;J=a+(L<<3)+320|0;H=O&c[J>>2];J=P&c[J+4>>2];if((H|0)==0&(J|0)==0){W=G;i=d;return W|0}Q=M&7;M=1;a:do{G=(c[1009384+(Q<<2)>>2]|0)-G|0;c[e+(M<<2)>>2]=G;R=F&H;Q=D&J;do{if((R|0)==0&(Q|0)==0){Q=b&H;R=E&J;if(!((Q|0)==0&(R|0)==0)){W=Ht(0,0,Q|0,R|0)|0;K=Q&W^K;N=R&I^N;Q=2;O=K&O;P=N&P;break}R=B&H;Q=C&J;if(!((R|0)==0&(Q|0)==0)){W=Ht(0,0,R|0,Q|0)|0;K=R&W^K;N=Q&I^N;W=g+(((ea(h&N,j)|0)^(ea(k&K,l)|0))>>>m<<3)|0;Q=3;O=(n&c[W>>2]|O)&K;P=(o&c[W+4>>2]|P)&N;break}Q=z&H;R=A&J;if(!((Q|0)==0&(R|0)==0)){W=Ht(0,0,Q|0,R|0)|0;K=Q&W^K;N=R&I^N;W=p+(((ea(q&N,r)|0)^(ea(s&K,t)|0))>>>u<<3)|0;Q=4;O=(v&c[W>>2]|O)&K;P=(w&c[W+4>>2]|P)&N;break}R=x&H;Q=y&J;if((R|0)==0&(Q|0)==0){f=15;break a}V=Ht(0,0,R|0,Q|0)|0;K=R&V^K;N=Q&I^N;V=g+(((ea(h&N,j)|0)^(ea(k&K,l)|0))>>>m<<3)|0;W=p+(((ea(q&N,r)|0)^(ea(s&K,t)|0))>>>u<<3)|0;Q=5;O=(c[V>>2]&n|O|c[W>>2]&v)&K;P=(c[V+4>>2]&o|P|c[W+4>>2]&w)&N}else{W=Ht(0,0,R|0,Q|0)|0;K=R&W^K;N=Q&I^N;W=g+(((ea(h&N,j)|0)^(ea(k&K,l)|0))>>>m<<3)|0;Q=1;O=(n&c[W>>2]|O)&K;P=(o&c[W+4>>2]|P)&N}}while(0);L=L^1;J=a+(L<<3)+320|0;H=c[J>>2]&O;J=c[J+4>>2]&P;M=M+1|0}while(!((H|0)==0&(J|0)==0));if((f|0)==15){M=((H|0)==(O|0)&(J|0)==(P|0)&1)+M|0}f=M+-1|0;if((f|0)!=0){while(1){W=0-(c[e+(f<<2)>>2]|0)|0;a=e+(M+-2<<2)|0;V=c[a>>2]|0;c[a>>2]=(V|0)<(W|0)?V:W;a=f+-1|0;if((a|0)==0){break}else{M=f;f=a}}}W=c[e>>2]|0;i=d;return W|0}function $g(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+2064|0;f=b;g=a+264|0;d=c[a+2220>>2]|0;if((c[g>>2]|0)==0&(c[g+4>>2]|0)==0?((c[d+20>>2]|0)+(c[d+16>>2]|0)|0)<837:0){g=1;i=b;return g|0}e=a+2220|0;if((c[d+28>>2]|0)>99){g=d+56|0;if((c[g>>2]|0)==0&(c[g+4>>2]|0)==0){g=1;i=b;return g|0}c[f+2048>>2]=f;g=cg(a,f)|0;c[f+2052>>2]=g;c[g>>2]=0;if((g|0)!=(f|0)){g=1;i=b;return g|0}}g=c[e>>2]|0;f=c[g+32>>2]|0;d=c[g+28>>2]|0;d=(f|0)<(d|0)?f:d;if((d|0)<2){g=0;i=b;return g|0}a=g+48|0;e=c[a>>2]|0;a=c[a+4>>2]|0;f=2;while(1){g=c[(c[g+68>>2]|0)+68>>2]|0;h=g+48|0;f=f+2|0;if((c[h>>2]|0)==(e|0)?(c[h+4>>2]|0)==(a|0):0){e=1;d=10;break}if((f|0)>(d|0)){e=0;d=10;break}}if((d|0)==10){i=b;return e|0}return 0}function ah(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;k=i;i=i+224|0;p=k+208|0;h=k+196|0;e=k+184|0;f=k+40|0;l=k+24|0;t=k+12|0;s=k;c[h+0>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;Kg(l,b);m=f+64|0;n=f+8|0;c[n>>2]=1004984;C=f+12|0;c[f>>2]=1005028;c[m>>2]=1005048;c[f+4>>2]=0;j=f+64|0;Ck(j,C);c[f+136>>2]=0;c[f+140>>2]=-1;c[f>>2]=1004964;c[m>>2]=1005004;c[n>>2]=1004984;c[C>>2]=1080120;d=f+16|0;Op(d);g=f+20|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[C>>2]=1005064;g=f+44|0;B=f+60|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[B>>2]=24;ef(C,l);if(!((a[l>>0]&1)==0)){Ys(c[l+8>>2]|0)}q=e+1|0;u=t+1|0;w=t+8|0;v=t+4|0;o=e+4|0;l=e+8|0;r=h+4|0;x=7;while(1){y=(x|0)>0;Jc(f,e,y?47:32)|0;z=a[h>>0]|0;if((z&1)==0){z=(z&255)>>>1}else{z=c[r>>2]|0}z=(z|0)==0?1022032:1022232;c[t+0>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;A=a[e>>0]|0;if((A&1)==0){B=(A&255)>>>1;C=q}else{B=c[o>>2]|0;C=c[l>>2]|0}if((B+1|0)>>>0<11){a[t>>0]=B<<1;A=u}else{D=B+17&-16;A=Vs(D)|0;c[w>>2]=A;c[t>>2]=D|1;c[v>>2]=B}Nt(A|0,C|0,B|0)|0;a[A+B>>0]=0;jk(t,z,1)|0;A=a[t>>0]|0;if((A&1)==0){z=u;A=(A&255)>>>1}else{z=c[w>>2]|0;A=c[v>>2]|0}mk(h,0,z,A)|0;if(!((a[t>>0]&1)==0)){Ys(c[w>>2]|0)}if(y){x=x+-1|0}else{break}}Bc(f,e)|0;t=a[e>>0]|0;if((t&1)==0){u=(t&255)>>>1;v=q}else{u=c[o>>2]|0;v=c[l>>2]|0}t=u>>>0>1;v=Ft(v,1022240,t?1:u)|0;if((v|0)==0){v=(u|0)==0?-1:t&1}jk(h,(v|0)==0?1022248:1022256,2)|0;Bc(f,e)|0;c[s+0>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;u=a[e>>0]|0;if((u&1)==0){t=q;v=(u&255)>>>1}else{t=c[l>>2]|0;v=c[o>>2]|0}if((v+1|0)>>>0<11){a[s>>0]=v<<1;u=s+1|0}else{D=v+17&-16;u=Vs(D)|0;c[s+8>>2]=u;c[s>>2]=D|1;c[s+4>>2]=v}Nt(u|0,t|0,v|0)|0;a[u+v>>0]=0;jk(s,1022032,1)|0;u=a[s>>0]|0;if((u&1)==0){t=s+1|0;u=(u&255)>>>1}else{t=c[s+8>>2]|0;u=c[s+4>>2]|0}jk(h,t,u)|0;if(!((a[s>>0]&1)==0)){Ys(c[s+8>>2]|0)}t=a[h>>0]|0;if((t&1)==0){s=h+1|0;r=h+((t&255)>>>1)+1|0;t=h+1|0}else{t=c[h+8>>2]|0;s=t;r=t+(c[r>>2]|0)|0}if((s|0)!=(r|0)){while(1){u=a[s>>0]|0;if((Yr(u)|0)==0){u=ft(u)|0}else{u=_r(u)|0}a[t>>0]=u;s=s+1|0;if((s|0)==(r|0)){break}else{t=t+1|0}}}Bc(f,e)|0;t=a[e>>0]|0;u=(t&1)==0;if(u){v=(t&255)>>>1;r=q}else{v=c[o>>2]|0;r=c[l>>2]|0}s=v>>>0>1;if((Ft(r,1022264,s?1:v)|0)==0?(v|0)!=0&(s^1):0){s=e}else{s=nk(e,1,1,(a[(u?q:c[l>>2]|0)+1>>0]|0)==51?1022272:1022280,1)|0;t=a[s>>0]|0}if((t&1)==0){r=s+1|0;s=(t&255)>>>1}else{r=c[s+8>>2]|0;s=c[s+4>>2]|0}jk(h,r,s)|0;Bk(p,f+(c[(c[f>>2]|0)+-12>>2]|0)|0);D=Sp(p,1082848)|0;D=pc[c[(c[D>>2]|0)+28>>2]&63](D,10)|0;Qp(p);Jc(f,e,D)|0;p=a[e>>0]|0;if((p&1)==0){o=(p&255)>>>1}else{q=c[l>>2]|0;o=c[o>>2]|0}jk(h,q,o)|0;Gg(b,h,(a[b+2224>>0]|0)!=0,c[b+2216>>2]|0);c[f>>2]=1004964;c[m>>2]=1005004;c[n>>2]=1004984;b=f+12|0;c[b>>2]=1005064;if(!((a[g>>0]&1)==0)){Ys(c[f+52>>2]|0)}c[b>>2]=1080120;Qp(d);yk(j);if(!((a[e>>0]&1)==0)){Ys(c[l>>2]|0)}if((a[h>>0]&1)==0){i=k;return}Ys(c[h+8>>2]|0);i=k;return}function bh(b){b=b|0;var d=0,e=0;d=i;c[b>>2]=1022300;c[b+56>>2]=1022320;e=b+4|0;c[e>>2]=1005064;if(!((a[b+36>>0]&1)==0)){Ys(c[b+44>>2]|0)}c[e>>2]=1080120;Qp(b+8|0);yk(b+56|0);Ys(b);i=d;return}function ch(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;f=c[(c[b>>2]|0)+-12>>2]|0;c[b+f>>2]=1022300;e=b+(f+56)|0;c[e>>2]=1022320;g=b+(f+4)|0;c[g>>2]=1005064;if(!((a[b+(f+36)>>0]&1)==0)){Ys(c[b+(f+44)>>2]|0)}c[g>>2]=1080120;Qp(b+(f+8)|0);yk(e);i=d;return}function dh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;g=c[(c[b>>2]|0)+-12>>2]|0;e=b+g|0;c[e>>2]=1022300;f=b+(g+56)|0;c[f>>2]=1022320;h=b+(g+4)|0;c[h>>2]=1005064;if(!((a[b+(g+36)>>0]&1)==0)){Ys(c[b+(g+44)>>2]|0)}c[h>>2]=1080120;Qp(b+(g+8)|0);yk(f);Ys(e);i=d;return}function eh(b){b=b|0;var d=0,e=0;d=i;c[b>>2]=1022380;c[b+60>>2]=1022400;e=b+8|0;c[e>>2]=1005064;if(!((a[b+40>>0]&1)==0)){Ys(c[b+48>>2]|0)}c[e>>2]=1080120;Qp(b+12|0);yk(b+60|0);Ys(b);i=d;return}function fh(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;f=c[(c[b>>2]|0)+-12>>2]|0;c[b+f>>2]=1022380;e=b+(f+60)|0;c[e>>2]=1022400;g=b+(f+8)|0;c[g>>2]=1005064;if(!((a[b+(f+40)>>0]&1)==0)){Ys(c[b+(f+48)>>2]|0)}c[g>>2]=1080120;Qp(b+(f+12)|0);yk(e);i=d;return}function gh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;g=c[(c[b>>2]|0)+-12>>2]|0;e=b+g|0;c[e>>2]=1022380;f=b+(g+60)|0;c[f>>2]=1022400;h=b+(g+8)|0;c[h>>2]=1005064;if(!((a[b+(g+40)>>0]&1)==0)){Ys(c[b+(g+48)>>2]|0)}c[h>>2]=1080120;Qp(b+(g+12)|0);yk(f);Ys(e);i=d;return}function hh(){var b=0,d=0,e=0,f=0,g=0;e=i;Lt(1007560,0,288)|0;c[1007848>>2]=-1310720;c[1007852>>2]=0;c[1007856>>2]=0;c[1007860>>2]=0;c[1007864>>2]=0;c[1007868>>2]=0;c[1007872>>2]=0;c[1007876>>2]=-1310720;c[1007880>>2]=-1310720;c[1007884>>2]=0;c[1007888>>2]=655360;c[1007892>>2]=1310720;c[1007896>>2]=1310720;c[1007900>>2]=655360;c[1007904>>2]=0;c[1007908>>2]=-1310720;c[1007912>>2]=-1310720;c[1007916>>2]=0;c[1007920>>2]=1310720;c[1007924>>2]=2621440;c[1007928>>2]=2621440;c[1007932>>2]=1310720;c[1007936>>2]=0;c[1007940>>2]=-1310720;c[1007944>>2]=-1310720;c[1007948>>2]=0;c[1007952>>2]=655360;c[1007956>>2]=1310720;c[1007960>>2]=1310720;c[1007964>>2]=655360;c[1007968>>2]=0;c[1007972>>2]=-1310720;c[1007976>>2]=-1310720;c[1007980>>2]=0;c[1007984>>2]=0;c[1007988>>2]=0;c[1007992>>2]=0;c[1007996>>2]=0;c[1008e3>>2]=0;c[1008004>>2]=-1310720;c[1008008>>2]=-1310720;c[1008012>>2]=0;c[1008016>>2]=0;c[1008020>>2]=0;c[1008024>>2]=0;c[1008028>>2]=0;c[1008032>>2]=0;c[1008036>>2]=-1310720;c[1008040>>2]=0;c[1008044>>2]=0;c[1008048>>2]=0;c[1008052>>2]=0;c[1008056>>2]=0;c[1008060>>2]=0;c[1008064>>2]=0;c[1008068>>2]=0;c[1008072>>2]=-9437282;c[1008076>>2]=-7143507;c[1008080>>2]=-5570611;c[1008084>>2]=-4784144;c[1008088>>2]=-4784144;c[1008092>>2]=-5570611;c[1008096>>2]=-7143507;c[1008100>>2]=-9437282;c[1008104>>2]=-5767236;c[1008108>>2]=-2818101;c[1008112>>2]=-1245205;c[1008116>>2]=-458738;c[1008120>>2]=-458738;c[1008124>>2]=-1245205;c[1008128>>2]=-2818101;c[1008132>>2]=-5767236;c[1008136>>2]=-4522037;c[1008140>>2]=-1572902;c[1008144>>2]=-6;c[1008148>>2]=786461;c[1008152>>2]=786461;c[1008156>>2]=-6;c[1008160>>2]=-1572902;c[1008164>>2]=-4522037;c[1008168>>2]=-1835050;c[1008172>>2]=1114085;c[1008176>>2]=2686981;c[1008180>>2]=3473448;c[1008184>>2]=3473448;c[1008188>>2]=2686981;c[1008192>>2]=1114085;c[1008196>>2]=-1835050;c[1008200>>2]=-1966122;c[1008204>>2]=983013;c[1008208>>2]=2555909;c[1008212>>2]=3342376;c[1008216>>2]=3342376;c[1008220>>2]=2555909;c[1008224>>2]=983013;c[1008228>>2]=-1966122;c[1008232>>2]=-655413;c[1008236>>2]=2293722;c[1008240>>2]=3866618;c[1008244>>2]=4653085;c[1008248>>2]=4653085;c[1008252>>2]=3866618;c[1008256>>2]=2293722;c[1008260>>2]=-655413;c[1008264>>2]=-4194372;c[1008268>>2]=-1245237;c[1008272>>2]=327659;c[1008276>>2]=1114126;c[1008280>>2]=1114126;c[1008284>>2]=327659;c[1008288>>2]=-1245237;c[1008292>>2]=-4194372;c[1008296>>2]=-13107298;c[1008300>>2]=-4259923;c[1008304>>2]=-2687027;c[1008308>>2]=-1900560;c[1008312>>2]=-1900560;c[1008316>>2]=-2687027;c[1008320>>2]=-4259923;c[1008324>>2]=-13107298;c[1008328>>2]=-3539009;c[1008332>>2]=-1769514;c[1008336>>2]=-2228268;c[1008340>>2]=-2818074;c[1008344>>2]=-2818074;c[1008348>>2]=-2228268;c[1008352>>2]=-1769514;c[1008356>>2]=-3539009;c[1008360>>2]=-1900587;c[1008364>>2]=524268;c[1008368>>2]=65514;c[1008372>>2]=-524292;c[1008376>>2]=-524292;c[1008380>>2]=65514;c[1008384>>2]=524268;c[1008388>>2]=-1900587;c[1008392>>2]=-1310753;c[1008396>>2]=1114102;c[1008400>>2]=655348;c[1008404>>2]=65542;c[1008408>>2]=65542;c[1008412>>2]=655348;c[1008416>>2]=1114102;c[1008420>>2]=-1310753;c[1008424>>2]=-1245219;c[1008428>>2]=1179636;c[1008432>>2]=720882;c[1008436>>2]=131076;c[1008440>>2]=131076;c[1008444>>2]=720882;c[1008448>>2]=1179636;c[1008452>>2]=-1245219;c[1008456>>2]=-1441827;c[1008460>>2]=983028;c[1008464>>2]=524274;c[1008468>>2]=-65532;c[1008472>>2]=-65532;c[1008476>>2]=524274;c[1008480>>2]=983028;c[1008484>>2]=-1441827;c[1008488>>2]=-1835041;c[1008492>>2]=589814;c[1008496>>2]=131060;c[1008500>>2]=-458746;c[1008504>>2]=-458746;c[1008508>>2]=131060;c[1008512>>2]=589814;c[1008516>>2]=-1835041;c[1008520>>2]=-2097195;c[1008524>>2]=327660;c[1008528>>2]=-131094;c[1008532>>2]=-720900;c[1008536>>2]=-720900;c[1008540>>2]=-131094;c[1008544>>2]=327660;c[1008548>>2]=-2097195;c[1008552>>2]=-3211329;c[1008556>>2]=-1441834;c[1008560>>2]=-1900588;c[1008564>>2]=-2490394;c[1008568>>2]=-2490394;c[1008572>>2]=-1900588;c[1008576>>2]=-1441834;c[1008580>>2]=-3211329;c[1008584>>2]=-1441789;c[1008588>>2]=-1114109;c[1008592>>2]=-786429;c[1008596>>2]=-524285;c[1008600>>2]=-524285;c[1008604>>2]=-786429;c[1008608>>2]=-1114109;c[1008612>>2]=-1441789;c[1008616>>2]=-1441789;c[1008620>>2]=-458749;c[1008624>>2]=-131069;c[1008628>>2]=131075;c[1008632>>2]=131075;c[1008636>>2]=-131069;c[1008640>>2]=-458749;c[1008644>>2]=-1441789;c[1008648>>2]=-1441789;c[1008652>>2]=-458749;c[1008656>>2]=-131069;c[1008660>>2]=131075;c[1008664>>2]=131075;c[1008668>>2]=-131069;c[1008672>>2]=-458749;c[1008676>>2]=-1441789;c[1008680>>2]=-1441789;c[1008684>>2]=-458749;c[1008688>>2]=-131069;c[1008692>>2]=131075;c[1008696>>2]=131075;c[1008700>>2]=-131069;c[1008704>>2]=-458749;c[1008708>>2]=-1441789;c[1008712>>2]=-1441789;c[1008716>>2]=-458749;c[1008720>>2]=-131069;c[1008724>>2]=131075;c[1008728>>2]=131075;c[1008732>>2]=-131069;c[1008736>>2]=-458749;c[1008740>>2]=-1441789;c[1008744>>2]=-1441789;c[1008748>>2]=-458749;c[1008752>>2]=-131069;c[1008756>>2]=131075;c[1008760>>2]=131075;c[1008764>>2]=-131069;c[1008768>>2]=-458749;c[1008772>>2]=-1441789;c[1008776>>2]=-720893;c[1008780>>2]=262147;c[1008784>>2]=589827;c[1008788>>2]=851971;c[1008792>>2]=851971;c[1008796>>2]=589827;c[1008800>>2]=262147;c[1008804>>2]=-720893;c[1008808>>2]=-1441789;c[1008812>>2]=-1114109;c[1008816>>2]=-786429;c[1008820>>2]=-524285;c[1008824>>2]=-524285;c[1008828>>2]=-786429;c[1008832>>2]=-1114109;c[1008836>>2]=-1441789;c[1008840>>2]=-131152;c[1008844>>2]=-131126;c[1008848>>2]=-131114;c[1008852>>2]=-131102;c[1008856>>2]=-131102;c[1008860>>2]=-131114;c[1008864>>2]=-131126;c[1008868>>2]=-131152;c[1008872>>2]=-131126;c[1008876>>2]=524258;c[1008880>>2]=524270;c[1008884>>2]=524282;c[1008888>>2]=524282;c[1008892>>2]=524270;c[1008896>>2]=524258;c[1008900>>2]=-131126;c[1008904>>2]=-131114;c[1008908>>2]=524270;c[1008912>>2]=524282;c[1008916>>2]=524294;c[1008920>>2]=524294;c[1008924>>2]=524282;c[1008928>>2]=524270;c[1008932>>2]=-131114;c[1008936>>2]=-131102;c[1008940>>2]=524282;c[1008944>>2]=524294;c[1008948>>2]=524306;c[1008952>>2]=524306;c[1008956>>2]=524294;c[1008960>>2]=524282;c[1008964>>2]=-131102;c[1008968>>2]=-131102;c[1008972>>2]=524282;c[1008976>>2]=524294;c[1008980>>2]=524306;c[1008984>>2]=524306;c[1008988>>2]=524294;c[1008992>>2]=524282;c[1008996>>2]=-131102;c[1009e3>>2]=-131114;c[1009004>>2]=524270;c[1009008>>2]=524282;c[1009012>>2]=524294;c[1009016>>2]=524294;c[1009020>>2]=524282;c[1009024>>2]=524270;c[1009028>>2]=-131114;c[1009032>>2]=-131126;c[1009036>>2]=524258;c[1009040>>2]=524270;c[1009044>>2]=524282;c[1009048>>2]=524282;c[1009052>>2]=524270;c[1009056>>2]=524258;c[1009060>>2]=-131126;c[1009064>>2]=-131152;c[1009068>>2]=-131126;c[1009072>>2]=-131114;c[1009076>>2]=-131102;c[1009080>>2]=-131102;c[1009084>>2]=-131114;c[1009088>>2]=-131126;c[1009092>>2]=-131152;c[1009096>>2]=19529755;c[1009100>>2]=21758033;c[1009104>>2]=17891436;c[1009108>>2]=14745716;c[1009112>>2]=14745716;c[1009116>>2]=17891436;c[1009120>>2]=21758033;c[1009124>>2]=19529755;c[1009128>>2]=18808906;c[1009132>>2]=21037184;c[1009136>>2]=17170587;c[1009140>>2]=14024867;c[1009144>>2]=14024867;c[1009148>>2]=17170587;c[1009152>>2]=21037184;c[1009156>>2]=18808906;c[1009160>>2]=14680175;c[1009164>>2]=16908453;c[1009168>>2]=13041856;c[1009172>>2]=9896136;c[1009176>>2]=9896136;c[1009180>>2]=13041856;c[1009184>>2]=16908453;c[1009188>>2]=14680175;c[1009192>>2]=12845191;c[1009196>>2]=15073469;c[1009200>>2]=11206872;c[1009204>>2]=8061152;c[1009208>>2]=8061152;c[1009212>>2]=11206872;c[1009216>>2]=15073469;c[1009220>>2]=12845191;c[1009224>>2]=11337863;c[1009228>>2]=13566141;c[1009232>>2]=9699544;c[1009236>>2]=6553824;c[1009240>>2]=6553824;c[1009244>>2]=9699544;c[1009248>>2]=13566141;c[1009252>>2]=11337863;c[1009256>>2]=9568367;c[1009260>>2]=11796645;c[1009264>>2]=7930048;c[1009268>>2]=4784328;c[1009272>>2]=4784328;c[1009276>>2]=7930048;c[1009280>>2]=11796645;c[1009284>>2]=9568367;c[1009288>>2]=7798858;c[1009292>>2]=10027136;c[1009296>>2]=6160539;c[1009300>>2]=3014819;c[1009304>>2]=3014819;c[1009308>>2]=6160539;c[1009312>>2]=10027136;c[1009316>>2]=7798858;c[1009320>>2]=6422555;c[1009324>>2]=8650833;c[1009328>>2]=4784236;c[1009332>>2]=1638516;c[1009336>>2]=1638516;c[1009340>>2]=4784236;c[1009344>>2]=8650833;c[1009348>>2]=6422555;d=Vs(16)|0;c[1009360>>2]=d;c[252338]=17;c[1009356>>2]=15;g=d+0|0;f=1009368|0;b=g+15|0;do{a[g>>0]=a[f>>0]|0;g=g+1|0;f=f+1|0}while((g|0)<(b|0));a[d+15>>0]=0;Sa(205,1009352,p|0)|0;i=e;return}function ih(a){a=a|0;var b=0,d=0,e=0;b=i;d=c[a>>2]|0;if((d|0)==0){i=b;return}a=a+4|0;e=c[a>>2]|0;if((e|0)!=(d|0)){c[a>>2]=e+(~((e+-4+(0-d)|0)>>>2)<<2)}Ys(d);i=b;return}function jh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=i;d=c[a>>2]|0;if((d|0)==0){i=b;return}e=a+4|0;h=c[e>>2]|0;if((h|0)!=(d|0)){while(1){g=h+-20|0;c[e>>2]=g;f=c[h+-12>>2]|0;if((f|0)!=0){h=h+-8|0;g=c[h>>2]|0;if((g|0)!=(f|0)){c[h>>2]=g+(~((g+-4+(0-f)|0)>>>2)<<2)}Ys(f);
+g=c[e>>2]|0}if((g|0)==(d|0)){break}else{h=g}}d=c[a>>2]|0}Ys(d);i=b;return}function kh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;b=i;a=c[a>>2]|0;if((a|0)==0){i=b;return}e=a+4|0;g=c[e>>2]|0;f=a+16|0;m=c[f>>2]|0;l=g+(((m>>>0)/56|0)<<2)|0;d=a+8|0;h=c[d>>2]|0;if((h|0)==(g|0)){k=0;j=a+20|0;m=0}else{j=a+20|0;k=(c[j>>2]|0)+m|0;k=(c[g+(((k>>>0)/56|0)<<2)>>2]|0)+(((k>>>0)%56|0)*72|0)|0;m=(c[l>>2]|0)+(((m>>>0)%56|0)*72|0)|0}a:while(1){do{if((m|0)==(k|0)){break a}m=m+72|0}while((m-(c[l>>2]|0)|0)!=4032);n=l+4|0;m=c[n>>2]|0;l=n}c[j>>2]=0;h=h-g>>2;if(h>>>0>2){do{Ys(c[g>>2]|0);g=(c[e>>2]|0)+4|0;c[e>>2]=g;h=(c[d>>2]|0)-g>>2}while(h>>>0>2)}if((h|0)==1){c[f>>2]=28}else if((h|0)==2){c[f>>2]=56}g=c[e>>2]|0;f=c[d>>2]|0;if((g|0)!=(f|0)){do{Ys(c[g>>2]|0);g=g+4|0}while((g|0)!=(f|0));f=c[e>>2]|0;e=c[d>>2]|0;if((e|0)!=(f|0)){c[d>>2]=e+(~((e+-4+(0-f)|0)>>>2)<<2)}}d=c[a>>2]|0;if((d|0)!=0){Ys(d)}Ys(a);i=b;return}function lh(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i;d=1;do{e=+ca(+ +(d|0));f=1;do{g=e*+ca(+ +(f|0));k=g/3+0;g=g/2.25+.33;if(!(k>=1)){h=0}else{h=~~(k*2)}a[1049352+(d<<6)+f+4096>>0]=h;if(!(g>=1)){j=0}else{j=~~(g*2)}a[1041160+(d<<6)+f+4096>>0]=j;a[1049352+(d<<6)+f>>0]=h;h=1041160+(d<<6)+f|0;a[h>>0]=j;if(!(j<<24>>24>4)){if(j<<24>>24>2){a[h>>0]=(j&255)+1}}else{a[h>>0]=(j&255)+2}f=f+1|0}while((f|0)!=64);d=d+1|0}while((d|0)!=64);d=0;do{k=+(d|0);c[1057544+(d<<2)>>2]=~~(+V(+k,1.8)*.222+2.4);c[1057672+(d<<2)>>2]=~~(+V(+(k+.98),1.8)*.3+3);d=d+1|0}while((d|0)!=32);i=b;return}function mh(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+2064|0;e=d;if((b|0)>2){a=nh(a,b)|0;e=I;I=e;i=d;return a|0}else{c[e+2048>>2]=e;a=cg(a,e)|0;c[e+2052>>2]=a;c[a>>2]=0;b=0;a=a-e>>3;I=b;i=d;return a|0}return 0}function nh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;i=i+4272|0;g=d+88|0;e=d;m=d+2216|0;k=d+160|0;Cg(e,a);f=m+2048|0;c[f>>2]=m;n=cg(a,m)|0;c[m+2052>>2]=n;c[n>>2]=0;n=c[c[f>>2]>>2]|0;if((n|0)==0){n=0;b=0;I=n;i=d;return b|0}h=k+2048|0;j=k+2052|0;m=k;l=b+-2|0;if((b|0)==4){l=n;n=0;b=0;do{Tg(a,l,g,e,Rg(a,l,e)|0);c[h>>2]=k;o=cg(a,k)|0;c[j>>2]=o;c[o>>2]=0;n=Jt(o-m>>3|0,0,n|0,b|0)|0;b=I;Vg(a,c[c[f>>2]>>2]|0);o=(c[f>>2]|0)+8|0;c[f>>2]=o;l=c[o>>2]|0}while((l|0)!=0);I=b;i=d;return n|0}else{h=n;n=0;b=0;do{Tg(a,h,g,e,Rg(a,h,e)|0);o=nh(a,l)|0;n=Jt(o|0,I|0,n|0,b|0)|0;b=I;Vg(a,c[c[f>>2]>>2]|0);o=(c[f>>2]|0)+8|0;c[f>>2]=o;h=c[o>>2]|0}while((h|0)!=0);I=b;i=d;return n|0}return 0}function oh(){var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;b=i;i=i+352|0;d=b+24|0;e=b+168|0;H=b+152|0;w=b;s=b+140|0;B=b+128|0;v=b+116|0;u=b+104|0;t=b+92|0;m=b+80|0;k=b+68|0;j=b+56|0;l=b+44|0;if((a[1057840]|0)==0?(Ma(1057840)|0)!=0:0){kd(1057800);Sa(206,1057800,p|0)|0;Xa(1057840)}vi(1057848,1022456,c[1024736>>2]|0,c[1024740>>2]|0);J=Vs(16)|0;I=H+8|0;c[I>>2]=J;c[H>>2]=17;c[H+4>>2]=15;n=J+0|0;r=1057864|0;q=n+15|0;do{a[n>>0]=a[r>>0]|0;n=n+1|0;r=r+1|0}while((n|0)<(q|0));a[J+15>>0]=0;n=((Ii(Cc(1077312,H)|0)|0)*258|0)/100|0;if(!((a[H>>0]&1)==0)){Ys(c[I>>2]|0)}J=c[1024740>>2]|0;c[1057880+(J<<2)>>2]=0-n;c[1057880+((J^1)<<2)>>2]=n;if((c[255628]|0)==(c[1022516>>2]|0)){bi(w,0);e=c[1022516>>2]|0;if((e|0)==(c[1022520>>2]|0)){Hh(1022512,w)}else{if(((e|0)!=0?(G=w,x=c[G+4>>2]|0,E=e,c[E>>2]=c[G>>2],c[E+4>>2]=x,E=e+8|0,c[E>>2]=0,x=e+12|0,c[x>>2]=0,G=e+16|0,c[G>>2]=0,A=c[w+12>>2]|0,C=c[w+8>>2]|0,y=C,D=A-y|0,F=D>>2,(F|0)!=0):0)?(z=Vs(D)|0,c[x>>2]=z,c[E>>2]=z,c[G>>2]=z+(F<<2),(C|0)!=(A|0)):0){e=z;while(1){if((e|0)!=0){c[e>>2]=c[C>>2]}C=C+4|0;if((C|0)==(A|0)){break}else{e=e+4|0}}c[x>>2]=z+(((A+-4+(0-y)|0)>>>2)+1<<2)}c[1022516>>2]=(c[1022516>>2]|0)+20}e=c[w+8>>2]|0;if((e|0)!=0){g=w+12|0;f=c[g>>2]|0;if((f|0)!=(e|0)){c[g>>2]=f+(~((f+-4+(0-e)|0)>>>2)<<2)}Ys(e)}J=Fc(If(1078120,0)|0,1057888)|0;I=(c[1024748>>2]|0)+56|0;ng(s,(c[I>>2]|0)==0&(c[I+4>>2]|0)==0?0:-32e3,-32001,32001);J=Ec(J,s)|0;Bk(d,J+(c[(c[J>>2]|0)+-12>>2]|0)|0);I=Sp(d,1082848)|0;I=pc[c[(c[I>>2]|0)+28>>2]&63](I,10)|0;Qp(d);zl(J,I)|0;il(J)|0;If(J,1)|0;if(!((a[s>>0]&1)==0)){Ys(c[s+8>>2]|0)}ph(0);i=b;return}a[B>>0]=14;n=B+1|0;a[n+0>>0]=a[1057912>>0]|0;a[n+1>>0]=a[1057913>>0]|0;a[n+2>>0]=a[1057914>>0]|0;a[n+3>>0]=a[1057915>>0]|0;a[n+4>>0]=a[1057916>>0]|0;a[n+5>>0]=a[1057917>>0]|0;a[n+6>>0]=a[1057918>>0]|0;n=B+8|0;a[n>>0]=0;J=(Ii(Cc(1077312,B)|0)|0)==0;if(J|(c[1022504>>2]|0)!=0){if(!((a[B>>0]&1)==0)){Ys(c[n>>2]|0)}}else{q=(c[1022500>>2]|0)==0;if(!((a[B>>0]&1)==0)){Ys(c[n>>2]|0)}if(q){a[u>>0]=18;n=u+1|0;r=1057920|0;q=n+9|0;do{a[n>>0]=a[r>>0]|0;n=n+1|0;r=r+1|0}while((n|0)<(q|0));a[u+10>>0]=0;Si(v,Cc(1077312,u)|0);w=Vs(16)|0;s=t+8|0;c[s>>2]=w;c[t>>2]=17;c[t+4>>2]=14;n=w+0|0;r=1057936|0;q=n+14|0;do{a[n>>0]=a[r>>0]|0;n=n+1|0;r=r+1|0}while((n|0)<(q|0));a[w+14>>0]=0;n=nd(1057800,1022528,v,(Ii(Cc(1077312,t)|0)|0)!=0)|0;if(!((a[t>>0]&1)==0)){Ys(c[s>>2]|0)}if(!((a[v>>0]&1)==0)){Ys(c[v+8>>2]|0)}if(!((a[u>>0]&1)==0)){Ys(c[u+8>>2]|0)}if((n|0)!=0?(g=c[255628]|0,o=c[1022516>>2]|0,(g|0)!=(o|0)):0){q=g;r=0;do{r=((c[c[q+8>>2]>>2]|0)==(n|0)&1)+r|0;q=q+20|0}while((q|0)!=(o|0));if((r|0)!=0){e=g;do{if((c[c[e+8>>2]>>2]|0)==(n|0)){o=e;break}e=e+20|0}while((e|0)!=(o|0));m=g;e=c[m+4>>2]|0;l=d;c[l>>2]=c[m>>2];c[l+4>>2]=e;l=d+8|0;c[l>>2]=0;e=d+12|0;c[e>>2]=0;m=d+16|0;c[m>>2]=0;k=c[g+12>>2]|0;n=c[g+8>>2]|0;j=n;r=k-j|0;q=r>>2;if((q|0)!=0?(f=Vs(r)|0,c[e>>2]=f,c[l>>2]=f,c[m>>2]=f+(q<<2),(n|0)!=(k|0)):0){m=f;while(1){if((m|0)!=0){c[m>>2]=c[n>>2]}n=n+4|0;if((n|0)==(k|0)){break}else{m=m+4|0}}c[e>>2]=f+(((k+-4+(0-j)|0)>>>2)+1<<2)}H=o;I=c[H+4>>2]|0;J=g;c[J>>2]=c[H>>2];c[J+4>>2]=I;if((g|0)!=(o|0)){Gh(g+8|0,c[o+8>>2]|0,c[o+12>>2]|0)}H=d;I=c[H+4>>2]|0;J=o;c[J>>2]=c[H>>2];c[J+4>>2]=I;if((d|0)!=(o|0)){Gh(o+8|0,c[l>>2]|0,c[e>>2]|0)}f=c[l>>2]|0;if((f|0)!=0){d=c[e>>2]|0;if((d|0)!=(f|0)){c[e>>2]=d+(~((d+-4+(0-f)|0)>>>2)<<2)}Ys(f)}ph(0);i=b;return}}}}g=Vs(32)|0;f=m+8|0;c[f>>2]=g;c[m>>2]=33;c[m+4>>2]=16;n=g+0|0;r=1057952|0;q=n+16|0;do{a[n>>0]=a[r>>0]|0;n=n+1|0;r=r+1|0}while((n|0)<(q|0));a[g+16>>0]=0;g=(Ii(Cc(1077312,m)|0)|0)==0;if(!((a[m>>0]&1)==0)){Ys(c[f>>2]|0)}if(!g){g=Vs(32)|0;f=j+8|0;c[f>>2]=g;c[j>>2]=33;c[j+4>>2]=19;n=g+0|0;r=1057976|0;q=n+19|0;do{a[n>>0]=a[r>>0]|0;n=n+1|0;r=r+1|0}while((n|0)<(q|0));a[g+19>>0]=0;Si(k,Cc(1077312,j)|0);qh(e,k);if(!((a[k>>0]&1)==0)){Ys(c[k+8>>2]|0)}if(!((a[j>>0]&1)==0)){Ys(c[f>>2]|0)}J=Fc(e,1058e3)|0;Kg(l,1022528);J=Fc(Ec(J,l)|0,1058016)|0;J=Fc(ul(J,c[1022504>>2]|0)|0,1058032)|0;J=Fc(ul(J,c[1022508>>2]|0)|0,1058048)|0;J=Fc(ul(J,c[1022468+(c[1024740>>2]<<2)>>2]|0)|0,1058056)|0;J=Fc(ul(J,c[1022476+(c[1024740>>2]<<2)>>2]|0)|0,1058072)|0;J=Fc(ul(J,c[1022484>>2]|0)|0,1058088)|0;Bk(d,J+(c[(c[J>>2]|0)+-12>>2]|0)|0);I=Sp(d,1082848)|0;I=pc[c[(c[I>>2]|0)+28>>2]&63](I,10)|0;Qp(d);zl(J,I)|0;il(J)|0;if(!((a[l>>0]&1)==0)){Ys(c[l+8>>2]|0)}c[e>>2]=1074076;l=e+104|0;c[l>>2]=1074096;j=e+68|0;g=c[j>>2]|0;k=e+4|0;do{if((g|0)!=0){f=gc[c[(c[k>>2]|0)+24>>2]&127](k)|0;if((yb(g|0)|0)==0?(c[j>>2]=0,(f|0)==0):0){break}J=c[(c[e>>2]|0)+-12>>2]|0;xk(e+J|0,c[e+(J+16)>>2]|4)}}while(0);c[e>>2]=1074116;c[l>>2]=1074136;Oc(k);yk(e+104|0)}g=c[1074196>>2]|0;f=c[268548]|0;if((g|0)!=(f|0)){g=g-f>>2;j=0;do{c[(c[f+(j<<2)>>2]|0)+848>>2]=0;j=j+1|0}while(j>>>0<g>>>0)}a[(c[1074216>>2]|0)+17>>0]=1;Lt(1068768,0,200)|0;h[133080]=0;a[1074436>>0]=(a[1074436>>0]|0)+1<<24>>24;Lt(1060480,0,4096)|0;Lt(1064648,0,4096)|0;Lt(1024776,0,8192)|0;Lt(1032968,0,8192)|0;a[d>>0]=14;f=d+1|0;a[f+0>>0]=a[1073808>>0]|0;a[f+1>>0]=a[1073809>>0]|0;a[f+2>>0]=a[1073810>>0]|0;a[f+3>>0]=a[1073811>>0]|0;a[f+4>>0]=a[1073812>>0]|0;a[f+5>>0]=a[1073813>>0]|0;a[f+6>>0]=a[1073814>>0]|0;f=d+8|0;a[f>>0]=0;c[268454]=Ii(Cc(1077312,d)|0)|0;if(!((a[d>>0]&1)==0)){Ys(c[f>>2]|0)}f=Vs(8)|0;g=Vs(16)|0;d=e+8|0;c[d>>2]=g;c[e>>2]=17;c[e+4>>2]=11;n=g+0|0;r=1073824|0;q=n+11|0;do{a[n>>0]=a[r>>0]|0;n=n+1|0;r=r+1|0}while((n|0)<(q|0));a[g+11>>0]=0;c[f>>2]=Ii(Cc(1077312,e)|0)|0;c[f+4>>2]=0;c[268460]=f;if(!((a[e>>0]&1)==0)){Ys(c[d>>2]|0);f=c[268460]|0}d=c[268454]|0;if((c[f>>2]|0)<20&d>>>0<4){c[268454]=4;d=4}J=((c[1022516>>2]|0)-(c[255628]|0)|0)/20|0;c[268454]=J>>>0<d>>>0?J:d;c[268462]=0;c[268464]=-32001;c[268466]=-32001;c[268468]=32001;c[268470]=-32001;Eg(1058208,1022528)|0;c[268472]=1068848;Lh(0);i=b;return}function ph(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;b=i;i=i+32|0;f=b+24|0;d=b+12|0;e=b;l=Fc(If(1078120,0)|0,1058152)|0;h=1024728|0;h=Fc(xl(l,c[h>>2]|0,c[h+4>>2]|0)|0,1058168)|0;Yb(f|0,0)|0;l=c[f>>2]|0;l=Vt(l|0,((l|0)<0)<<31>>31|0,1e3,0)|0;k=(c[f+4>>2]|0)/1e3|0;g=1024760;j=c[g>>2]|0;g=c[g+4>>2]|0;k=Jt(l|1|0,I|0,k|0,((k|0)<0)<<31>>31|0)|0;g=Ht(k|0,I|0,j|0,g|0)|0;g=wl(h,g,I)|0;Bk(f,g+(c[(c[g>>2]|0)+-12>>2]|0)|0);h=Sp(f,1082848)|0;h=pc[c[(c[h>>2]|0)+28>>2]&63](h,10)|0;Qp(f);zl(g,h)|0;il(g)|0;If(g,1)|0;if((a[1022448]|0)==0?(c[1022504>>2]|c[1022508>>2]|0)!=0:0){a[1022449>>0]=1;Zb(207,0,30);i=b;return}l=Fc(If(1078120,0)|0,1058176)|0;og(d,c[c[(c[255628]|0)+8>>2]>>2]|0,(a[1024752>>0]|0)!=0);l=Fc(Ec(l,d)|0,1058192)|0;og(e,c[(c[(c[255628]|0)+8>>2]|0)+4>>2]|0,(a[1024752>>0]|0)!=0);l=Ec(l,e)|0;Bk(f,l+(c[(c[l>>2]|0)+-12>>2]|0)|0);k=Sp(f,1082848)|0;k=pc[c[(c[k>>2]|0)+28>>2]&63](k,10)|0;Qp(f);zl(l,k)|0;il(l)|0;If(l,1)|0;if(!((a[e>>0]&1)==0)){Ys(c[e+8>>2]|0)}if((a[d>>0]&1)==0){i=b;return}Ys(c[d+8>>2]|0);i=b;return}function qh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;e=b+104|0;c[e>>2]=1080104;if((a[d>>0]&1)==0){d=d+1|0}else{d=c[d+8>>2]|0}h=b+104|0;g=b+4|0;c[b>>2]=1074156;c[h>>2]=1074176;Ck(b+104|0,g);c[b+176>>2]=0;c[b+180>>2]=-1;c[b>>2]=1074116;c[h>>2]=1074136;Yc(g);g=b+68|0;if((c[g>>2]|0)==0?(h=Wb(d|0,1074184)|0,c[g>>2]=h,(h|0)!=0):0){c[b+92>>2]=17;c[b>>2]=1074076;c[e>>2]=1074096;i=f;return}h=c[(c[b>>2]|0)+-12>>2]|0;xk(b+h|0,c[b+(h+16)>>2]|4);c[b>>2]=1074076;c[e>>2]=1074096;i=f;return}function rh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;c[a>>2]=1074076;b=a+104|0;c[b>>2]=1074096;f=a+68|0;g=c[f>>2]|0;d=a+4|0;do{if((g|0)!=0){h=gc[c[(c[d>>2]|0)+24>>2]&127](d)|0;if((yb(g|0)|0)==0?(c[f>>2]=0,(h|0)==0):0){break}h=c[(c[a>>2]|0)+-12>>2]|0;xk(a+h|0,c[a+(h+16)>>2]|4)}}while(0);c[a>>2]=1074116;c[b>>2]=1074136;Oc(d);yk(a+104|0);i=e;return}function sh(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=i;i=i+336|0;f=b+320|0;p=b+304|0;d=b+120|0;h=b+108|0;g=b+96|0;j=b+84|0;k=b;e=b+72|0;a[(c[1074216>>2]|0)+17>>0]=0;q=Vs(32)|0;o=p+8|0;c[o>>2]=q;c[p>>2]=33;c[p+4>>2]=16;n=q+0|0;l=1057952|0;m=n+16|0;do{a[n>>0]=a[l>>0]|0;n=n+1|0;l=l+1|0}while((n|0)<(m|0));a[q+16>>0]=0;l=(Ii(Cc(1077312,p)|0)|0)==0;if(!((a[p>>0]&1)==0)){Ys(c[o>>2]|0)}if(l){ph(0);i=b;return}Yb(f|0,0)|0;r=c[f>>2]|0;r=Vt(r|0,((r|0)<0)<<31>>31|0,1e3,0)|0;q=(c[f+4>>2]|0)/1e3|0;o=1024760;p=c[o>>2]|0;o=c[o+4>>2]|0;q=Jt(r|1|0,I|0,q|0,((q|0)<0)<<31>>31|0)|0;o=Ht(q|0,I|0,p|0,o|0)|0;p=I;q=Vs(32)|0;r=g+8|0;c[r>>2]=q;c[g>>2]=33;c[g+4>>2]=19;n=q+0|0;l=1057976|0;m=n+19|0;do{a[n>>0]=a[l>>0]|0;n=n+1|0;l=l+1|0}while((n|0)<(m|0));a[q+19>>0]=0;Si(h,Cc(1077312,g)|0);qh(d,h);if(!((a[h>>0]&1)==0)){Ys(c[h+8>>2]|0)}if(!((a[g>>0]&1)==0)){Ys(c[r>>2]|0)}r=Fc(d,1058096)|0;q=1024728|0;q=Fc(xl(r,c[q>>2]|0,c[q+4>>2]|0)|0,1058104)|0;r=1024728|0;r=Vt(c[r>>2]|0,c[r+4>>2]|0,1e3,0)|0;r=Wt(r|0,I|0,o|0,p|0)|0;r=Fc(xl(q,r,I)|0,1058120)|0;qg(j,1022528,c[c[(c[255628]|0)+8>>2]>>2]|0);Ec(r,j)|0;if(!((a[j>>0]&1)==0)){Ys(c[j+8>>2]|0)}Sg(1022528,c[c[(c[255628]|0)+8>>2]>>2]|0,k);r=Fc(d,1058136)|0;qg(e,1022528,c[(c[(c[255628]|0)+8>>2]|0)+4>>2]|0);r=Ec(r,e)|0;Bk(f,r+(c[(c[r>>2]|0)+-12>>2]|0)|0);q=Sp(f,1082848)|0;q=pc[c[(c[q>>2]|0)+28>>2]&63](q,10)|0;Qp(f);zl(r,q)|0;il(r)|0;if(!((a[e>>0]&1)==0)){Ys(c[e+8>>2]|0)}Vg(1022528,c[c[(c[255628]|0)+8>>2]>>2]|0);c[d>>2]=1074076;e=d+104|0;c[e>>2]=1074096;g=d+68|0;h=c[g>>2]|0;f=d+4|0;do{if((h|0)!=0){j=gc[c[(c[f>>2]|0)+24>>2]&127](f)|0;if((yb(h|0)|0)==0?(c[g>>2]=0,(j|0)==0):0){break}r=c[(c[d>>2]|0)+-12>>2]|0;xk(d+r|0,c[d+(r+16)>>2]|4)}}while(0);c[d>>2]=1074116;c[e>>2]=1074136;Oc(f);yk(d+104|0);ph(0);i=b;return}function th(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=i;i=i+9072|0;g=a+8|0;s=c[g>>2]|0;o=c[s>>2]|0;p=c[a>>2]|0;h=a+12|0;k=c[h>>2]|0;if((k|0)!=(s|0)){s=k+(~((k+-4+(0-s)|0)>>>2)<<2)|0;c[h>>2]=s}a=a+16|0;m=d+2220|0;l=d+2212|0;k=1;q=f;while(1){if((s|0)==(c[a>>2]|0)){n=c[g>>2]|0;r=s-n|0;t=r>>2;s=t+1|0;if(t>>>0<536870911){v=r>>1;v=v>>>0<s>>>0?s:v;if((v|0)==0){u=0;v=0}else{j=11}}else{v=1073741823;j=11}if((j|0)==11){j=0;u=v;v=Vs(v<<2)|0}t=v+(t<<2)|0;if((t|0)!=0){c[t>>2]=o}Nt(v|0,n|0,r|0)|0;c[g>>2]=v;c[h>>2]=v+(s<<2);c[a>>2]=v+(u<<2);if((n|0)!=0){Ys(n)}}else{if((s|0)!=0){c[s>>2]=o}c[h>>2]=s+4}n=k+1|0;r=q+72|0;Sg(d,c[(c[g>>2]|0)+(k+-1<<2)>>2]|0,q);o=(c[m>>2]|0)+48|0;o=zi(1074424,c[o>>2]|0,c[o+4>>2]|0)|0;p=0-p|0;if((o|0)==0){break}s=b[o+8>>1]|0;q=s<<16>>16;do{if(!(s<<16>>16==32002)){if(s<<16>>16>31879){q=q-n|0;break}else{q=(s<<16>>16<-31879?n:0)+q|0;break}}else{q=32002}}while(0);if((q|0)!=(p|0)){break}o=e[o+4>>1]|0;if(!(Qg(d,o)|0)){break}v=c[l>>2]|0;v=Ng(d,v,v)|0;if(!((Pg(d,o,v,I)|0)&(n|0)<120)){break}if(!((n|0)<3|($g(d)|0)^1)){break}s=c[h>>2]|0;k=n;q=r}m=c[h>>2]|0;if((m|0)==(c[a>>2]|0)){l=c[g>>2]|0;m=m-l|0;p=m>>2;o=p+1|0;if(p>>>0<536870911){r=m>>1;r=r>>>0<o>>>0?o:r;if((r|0)==0){q=0;r=0}else{j=31}}else{r=1073741823;j=31}if((j|0)==31){q=r;r=Vs(r<<2)|0}j=r+(p<<2)|0;if((j|0)!=0){c[j>>2]=0}Nt(r|0,l|0,m|0)|0;c[g>>2]=r;c[h>>2]=r+(o<<2);c[a>>2]=r+(q<<2);if((l|0)!=0){Ys(l)}}else{if((m|0)!=0){c[m>>2]=0}c[h>>2]=m+4}if((k|0)==0){i=f;return}while(1){Vg(d,c[(c[g>>2]|0)+(n+-2<<2)>>2]|0);h=k+-1|0;if((h|0)==0){break}else{n=k;k=h}}i=f;return}function uh(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0;d=i;i=i+9072|0;f=b+2220|0;a=a+8|0;g=0;j=d;while(1){k=(c[f>>2]|0)+48|0;k=zi(1074424,c[k>>2]|0,c[k+4>>2]|0)|0;if((k|0)!=0){k=e[k+4>>1]|0;l=c[(c[a>>2]|0)+(g<<2)>>2]|0;if((k|0)!=(l|0)){h=5}}else{l=c[(c[a>>2]|0)+(g<<2)>>2]|0;h=5}if((h|0)==5){h=0;k=(c[f>>2]|0)+48|0;Ai(1074424,c[k>>2]|0,c[k+4>>2]|0,32002,0,-254,l,32002);k=c[(c[a>>2]|0)+(g<<2)>>2]|0}g=g+1|0;Sg(b,k,j);k=c[a>>2]|0;if((c[k+(g<<2)>>2]|0)==0){break}else{j=j+72|0}}if((g|0)==0){i=d;return}while(1){g=g+-1|0;Vg(b,c[k+(g<<2)>>2]|0);if((g|0)==0){break}k=c[a>>2]|0}i=d;return}function vh(b){b=b|0;var d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,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;t=i;i=i+14256|0;m=t+2640|0;k=t+12096|0;l=t+2552|0;g=t+2480|0;e=t+9944|0;f=t+2392|0;p=t+9936|0;r=t+2320|0;A=t+9928|0;q=t+9920|0;n=t+7768|0;o=t+2232|0;d=t+7752|0;s=t+2712|0;u=t;j=b+852|0;if((c[b+856>>2]|0)==0){D=0}else{D=c[j>>2]|0}z=b+860|0;C=b+16|0;B=(D|0)==0;V=D+40|0;D=s+80|0;W=u+2216|0;M=b+840|0;N=b+844|0;O=u+2200|0;aa=u+2220|0;E=s+48|0;F=A+4|0;G=s+8|0;H=q+4|0;J=s+112|0;K=s+32|0;P=f+8|0;Q=u+2212|0;R=s+88|0;L=s+120|0;S=s+100|0;T=s+104|0;U=s+108|0;X=l+8|0;Y=o+8|0;Z=p+4|0;_=u+2224|0;$=d+8|0;a:while(1){if(!((a[z>>0]|0)!=0?(a[C>>0]|0)==0:0)){ca=6}b:do{if((ca|0)==6){ca=0;if((a[C>>0]|0)!=0){ca=210;break a}c:do{if(!B){da=128;ba=V;while(1){if((c[ba>>2]|0)!=0){break c}ba=ba+4|0;ea=da+-32|0;if(!(ea>>>0>31)){break}else{da=ea}}if((ea|0)==0){break b}if((c[ba>>2]&-1>>>(64-da|0)|0)==0){break b}}}while(0);if((a[z>>0]|0)!=0){continue a}continue a}}while(0);d:do{if((a[z>>0]|0)!=0){ba=c[j>>2]|0;Eg(u,c[ba>>2]|0)|0;c[W>>2]=b;Nt(s|0,(c[ba+4>>2]|0)+-80|0,200)|0;c[D>>2]=ba;c[M>>2]=u;da=c[ba+20>>2]|0;e:do{if((da|0)==2){ta=c[ba+72>>2]|0;pa=c[ba+12>>2]|0;da=(a[ba+24>>0]|0)!=0;fa=g+0|0;ea=fa+72|0;do{c[fa>>2]=0;fa=fa+4|0}while((fa|0)<(ea|0));ga=c[W>>2]|0;ka=(c[aa>>2]|0)+56|0;la=c[ka>>2]|0;ka=c[ka+4>>2]|0;ha=c[D>>2]|0;fa=ha+80|0;ea=ha+76|0;ua=c[ea>>2]|0;ma=c[E>>2]&63;na=c[u+(ma<<2)>>2]|0;c[A>>2]=c[1024776+(na<<9)+(ma<<3)>>2];c[F>>2]=c[1024776+(na<<9)+(ma<<3)+4>>2];ma=c[G>>2]&63;na=c[u+(ma<<2)>>2]|0;c[q>>2]=c[1032968+(na<<9)+(ma<<3)>>2];c[H>>2]=c[1032968+(na<<9)+(ma<<3)+4>>2];hg(e,u,0,pa,1060480,A,q,D);Cg(f,u);ma=c[J>>2]|0;na=c[K>>2]|0;sa=mg(e)|0;if((sa|0)!=0){ia=ha+84|0;ja=pa+-2|0;ka=(la|0)!=0|(ka|0)!=0;la=(pa|0)<32;oa=((ma|0)>=(na|0)|(ma|0)==32002|(na|0)==32002)&1;ma=1057544+(oa<<7)+(pa<<2)|0;na=(pa|0)/2|0;na=(na|0)>63?63:na;pa=(pa|0)<6;ra=ha+72|0;qa=da^1;while(1){f:while(1){wa=(ua|0)>-31880;g:while(1){Aa=P;do{if(Pg(u,sa,c[Aa>>2]|0,c[Aa+4>>2]|0)|0){va=(c[ia>>2]|0)+1|0;c[ia>>2]=va;xa=sa&49152;ya=(xa|0)==0;if(ya){za=sa&63;xa=(c[u+(za<<2)>>2]|0)!=0;Aa=f;if((c[Aa>>2]|0)==0&(c[Aa+4>>2]|0)==0){Aa=f+((c[u+((sa>>>6&63)<<2)>>2]&7)<<3)+16|0;Ba=29920+(za<<3)|0;za=c[Ba>>2]&c[Aa>>2];Aa=c[Ba+4>>2]&c[Aa+4>>2]}else{ca=26}}else{xa=(xa|0)!=49152;ca=26}if((ca|0)==26){ca=0;za=(Rg(u,sa,f)|0)&1;Aa=0}if(!((za|0)==0&(Aa|0)==0)){ca=31;break f}if(!ya){ta=0;wa=1;ua=ja;break f}za=sa>>>6&63;ya=c[u+(za<<2)>>2]|0;if((ya&7|0)==1){za=((c[Q>>2]|0)*7^za>>>3|0)>3}else{za=0}if(!(wa&((xa|ka|za)^1))){ta=0;wa=0;ua=ja;break f}if(la?(va|0)>=(c[ma>>2]|0):0){break}za=ja-(a[((va|0)>63?63:va)+(1041160+(oa<<12)+(na<<6))>>0]|0)|0;if((za|0)>=14){ta=0;wa=0;ua=ja;break f}ya=(za*100|0)+128+(c[J>>2]|0)+(c[1064648+(ya<<8)+((sa&63)<<2)>>2]|0)|0;if((ya|0)<=(ta|0)){break g}if((za|0)>=8){ta=0;wa=0;ua=ja;break f}if((Zg(u,sa)|0)>=0){ta=0;wa=0;ua=ja;break f}}}while(0);sa=mg(e)|0;if((sa|0)==0){break e}}ua=(ua|0)<(ya|0)?ya:ua;if((ua|0)>(c[ea>>2]|0)){c[ea>>2]=ua}sa=mg(e)|0;if((sa|0)==0){break e}}if((ca|0)==31){ca=0;ta=1;wa=ya^1;ua=(((Zg(u,sa)|0)>>31)+2&-2)+ja|0}c[R>>2]=sa;Tg(u,sa,g,f,ta);do{if((!(pa|xa)?(sa|0)!=(c[S>>2]|0):0)?(sa|0)!=(c[T>>2]|0):0){va=a[((va|0)>63?63:va)+(1041160+(oa<<12)+(na<<6))>>0]|0;c[U>>2]=va;if(!da){Ba=sa&63;if((c[1060480+(c[u+(Ba<<2)>>2]<<8)+(Ba<<2)>>2]|0)<0){va=va+1|0;c[U>>2]=va}}else{va=va+2|0;c[U>>2]=va}if(!((sa|0)!=(c[A>>2]|0)?(sa|0)!=(c[F>>2]|0):0)){va=va+-2|0;va=(va|0)>0?va:0;c[U>>2]=va}if(!((va|0)==0|wa)?(v=sa&63,(c[u+(v<<2)>>2]&7|0)!=1):0){Ba=(_g(u,v<<6|sa>>>6&63)|0)<0;va=c[U>>2]|0;if(Ba){va=va+-2|0;va=(va|0)>0?va:0;c[U>>2]=va}}ya=ua-va|0;va=c[ra>>2]|0;xa=~va;wa=0-va|0;ya=0-(zh(u,L,xa,wa,(ya|0)<2?2:ya,1)|0)|0;if((va|0)<(ya|0)?(c[U>>2]|0)>=8:0){ya=ua+-4|0;ya=0-(zh(u,L,xa,wa,(ya|0)<2?2:ya,1)|0)|0}if((ya|0)>(va|0)){Ba=(c[U>>2]|0)==0;c[U>>2]=0;if(Ba){break}else{ca=62;break}}else{c[U>>2]=0;break}}else{ca=62}}while(0);do{if((ca|0)==62){ca=0;va=c[ra>>2]|0;wa=~va;va=0-va|0;if((ua|0)>=2){ya=0-(zh(u,L,wa,va,ua,qa)|0)|0;break}if(ta){ya=0-(Ah(u,L,wa,va,0)|0)|0;break}else{ya=0-(Bh(u,L,wa,va,0)|0)|0;break}}}while(0);Vg(u,sa);ua=c[ea>>2]|0;ta=c[ra>>2]|0;if((a[1022448]|0)!=0){break e}if(ji(ga)|0){break e}if((ya|0)>(ua|0)){c[ea>>2]=ya;if((ya|0)>(ta|0)){break}else{ua=c[ea>>2]|0}}sa=mg(e)|0;if((sa|0)==0){break e}}c[fa>>2]=sa;a[ha+88>>0]=1}}else if((da|0)==1){wa=c[ba+72>>2]|0;da=c[ba+16>>2]|0;oa=c[ba+12>>2]|0;na=a[ba+24>>0]|0;fa=m+0|0;ea=fa+72|0;do{c[fa>>2]=0;fa=fa+4|0}while((fa|0)<(ea|0));ea=c[W>>2]|0;ha=c[D>>2]|0;ga=ha+80|0;fa=ha+76|0;Ba=c[E>>2]&63;pa=c[u+(Ba<<2)>>2]|0;c[A>>2]=c[1024776+(pa<<9)+(Ba<<3)>>2];c[F>>2]=c[1024776+(pa<<9)+(Ba<<3)+4>>2];Ba=c[G>>2]&63;pa=c[u+(Ba<<2)>>2]|0;c[q>>2]=c[1032968+(pa<<9)+(Ba<<3)>>2];c[H>>2]=c[1032968+(pa<<9)+(Ba<<3)+4>>2];hg(k,u,0,oa,1060480,A,q,D);Cg(l,u);Ba=c[J>>2]|0;pa=c[K>>2]|0;ia=ha+84|0;ka=oa+-2|0;ja=(oa|0)<6;ma=0-da|0;la=ha+72|0;na=na<<24>>24==0;oa=(oa|0)/2|0;oa=(oa|0)>63?63:oa;pa=((Ba|0)>=(pa|0)|(Ba|0)==32002|(pa|0)==32002)&1;while(1){do{qa=mg(k)|0;if((qa|0)==0){break e}Ba=X}while(!(Pg(u,qa,c[Ba>>2]|0,c[Ba+4>>2]|0)|0));ta=c[ia>>2]|0;va=ta+1|0;c[ia>>2]=va;ra=qa&49152;ua=(ra|0)==0;if(ua){ra=qa&63;xa=(c[u+(ra<<2)>>2]|0)!=0;Ba=l;if((c[Ba>>2]|0)==0&(c[Ba+4>>2]|0)==0){sa=l+((c[u+((qa>>>6&63)<<2)>>2]&7)<<3)+16|0;Ba=29920+(ra<<3)|0;ra=c[Ba>>2]&c[sa>>2];sa=c[Ba+4>>2]&c[sa+4>>2]}else{ca=81}}else{xa=(ra|0)!=49152;ca=81}if((ca|0)==81){ra=(Rg(u,qa,l)|0)&1;sa=0}ra=(ra|0)!=0|(sa|0)!=0;if(ra){ca=((Zg(u,qa)|0)>>31)+2&-2}else{ca=0}sa=ka+ca|0;ta=(ta|0)==0;c[R>>2]=qa;Tg(u,qa,m,l,ra);do{if((!(ja|ta|xa)?(qa|0)!=(c[S>>2]|0):0)?(qa|0)!=(c[T>>2]|0):0){wa=a[((va|0)>63?63:va)+(1049352+(pa<<12)+(oa<<6))>>0]|0;c[U>>2]=wa;va=qa&63;ca=c[u+(va<<2)>>2]|0;if((c[1060480+(ca<<8)+(va<<2)>>2]|0)<0){wa=wa+1|0;c[U>>2]=wa}if(!((qa|0)!=(c[A>>2]|0)?(qa|0)!=(c[F>>2]|0):0)){wa=wa+-2|0;wa=(wa|0)>0?wa:0;c[U>>2]=wa}if(!((wa|0)==0|ua^1)?(ca&7|0)!=1:0){Ba=(_g(u,va<<6|qa>>>6&63)|0)<0;wa=c[U>>2]|0;if(Ba){wa=wa+-2|0;wa=(wa|0)>0?wa:0;c[U>>2]=wa}}ca=sa-wa|0;wa=c[la>>2]|0;ua=~wa;va=0-wa|0;ca=0-(zh(u,L,ua,va,(ca|0)<2?2:ca,1)|0)|0;if((wa|0)<(ca|0)?(c[U>>2]|0)>=8:0){ca=sa+-4|0;ca=0-(zh(u,L,ua,va,(ca|0)<2?2:ca,1)|0)|0}if((ca|0)>(wa|0)){Ba=(c[U>>2]|0)==0;c[U>>2]=0;if(Ba){ua=ca;ca=108;break}else{ca=103;break}}else{c[U>>2]=0;ua=ca;ca=108;break}}else{ca=101}}while(0);if((ca|0)==101){if(ta){ca=110}else{ca=103}}do{if((ca|0)==103){wa=c[la>>2]|0;ca=~wa;ua=0-wa|0;if((sa|0)>=2){ua=0-(zh(u,L,ca,ua,sa,na)|0)|0;ca=108;break}if(ra){ua=0-(Ah(u,L,ca,ua,0)|0)|0;ca=108;break}else{ua=0-(Bh(u,L,ca,ua,0)|0)|0;ca=108;break}}}while(0);if((ca|0)==108){ca=0;if(!(!ta?!((ua|0)>(wa|0)&(ua|0)<(da|0)):0)){ca=110}}do{if((ca|0)==110){ca=0;ta=0-wa|0;if((sa|0)>=2){ua=0-(Eh(u,L,ma,ta,sa,0)|0)|0;break}if(ra){ua=0-(Ch(u,L,ma,ta,0)|0)|0;break}else{ua=0-(Dh(u,L,ma,ta,0)|0)|0;break}}}while(0);Vg(u,qa);ra=c[fa>>2]|0;wa=c[la>>2]|0;if((a[1022448]|0)!=0){break e}if(ji(ea)|0){break e}if((ua|0)<=(ra|0)){continue}c[fa>>2]=ua;if((ua|0)<=(wa|0)){continue}c[ga>>2]=qa;if((ua|0)>=(da|0)){break}c[la>>2]=ua;wa=c[la>>2]|0}a[ha+88>>0]=1}else if((da|0)==0){va=c[ba+72>>2]|0;da=c[ba+16>>2]|0;la=c[ba+12>>2]|0;oa=a[ba+24>>0]|0;fa=r+0|0;ea=fa+72|0;do{c[fa>>2]=0;fa=fa+4|0}while((fa|0)<(ea|0));ja=c[W>>2]|0;ia=c[D>>2]|0;ka=ia+80|0;ea=ia+76|0;sa=c[E>>2]&63;qa=c[u+(sa<<2)>>2]|0;c[A>>2]=c[1024776+(qa<<9)+(sa<<3)>>2];c[F>>2]=c[1024776+(qa<<9)+(sa<<3)+4>>2];sa=c[G>>2]&63;qa=c[u+(sa<<2)>>2]|0;c[q>>2]=c[1032968+(qa<<9)+(sa<<3)>>2];c[H>>2]=c[1032968+(qa<<9)+(sa<<3)+4>>2];hg(n,u,0,la,1060480,A,q,D);Cg(o,u);sa=c[J>>2]|0;qa=c[K>>2]|0;ra=mg(n)|0;if((ra|0)!=0){ga=ia+84|0;fa=(la|0)/2|0;ha=la+-2|0;na=(la|0)<6;ma=0-da|0;la=ia+72|0;pa=oa<<24>>24==0;oa=(fa|0)>63?63:fa;qa=((sa|0)>=(qa|0)|(sa|0)==32002|(qa|0)==32002)&1;while(1){while(1){ua=(c[255628]|0)+((c[266144]|0)*20|0)|0;sa=c[1022516>>2]|0;if((ua|0)!=(sa|0)){ta=0;do{ta=((c[c[ua+8>>2]>>2]|0)==(ra|0)&1)+ta|0;ua=ua+20|0}while((ua|0)!=(sa|0));if((ta|0)!=0?(Ba=Y,Pg(u,ra,c[Ba>>2]|0,c[Ba+4>>2]|0)|0):0){break}}ra=mg(n)|0;if((ra|0)==0){break e}}sa=c[ga>>2]|0;xa=sa+1|0;c[ga>>2]=xa;sa=(sa|0)==0;a[1022450>>0]=sa&1;if(((ja|0)==(c[c[268548]>>2]|0)?(Yb(p|0,0)|0,Aa=c[p>>2]|0,Aa=Vt(Aa|0,((Aa|0)<0)<<31>>31|0,1e3,0)|0,Ba=(c[Z>>2]|0)/1e3|0,Aa=Jt(Ba|0,((Ba|0)<0)<<31>>31|0,Aa|0,I|0)|0,Ba=1024760,Ba=Ht(Aa|0,I|0,c[Ba>>2]|0,c[Ba+4>>2]|0)|0,Aa=I,(Aa|0)>0|(Aa|0)==0&Ba>>>0>3e3):0)?(Ba=Fc(ul(Fc(If(1078120,0)|0,1064584)|0,fa)|0,1064600)|0,og(d,ra,(a[_>>0]|0)!=0),Ba=Fc(Ec(Ba,d)|0,1064616)|0,Ba=vl(Ba,(c[266144]|0)+xa|0)|0,Bk(p,Ba+(c[(c[Ba>>2]|0)+-12>>2]|0)|0),Aa=Sp(p,1082848)|0,Aa=pc[c[(c[Aa>>2]|0)+28>>2]&63](Aa,10)|0,Qp(p),zl(Ba,Aa)|0,il(Ba)|0,If(Ba,1)|0,!((a[d>>0]&1)==0)):0){Ys(c[$>>2]|0)}ta=ra&49152;wa=(ta|0)==0;if(wa){ta=ra&63;ya=(c[u+(ta<<2)>>2]|0)!=0;Ba=o;if((c[Ba>>2]|0)==0&(c[Ba+4>>2]|0)==0){Ba=o+((c[u+((ra>>>6&63)<<2)>>2]&7)<<3)+16|0;ta=29920+(ta<<3)|0;ua=c[ta>>2]&c[Ba>>2];ta=c[ta+4>>2]&c[Ba+4>>2]}else{ca=138}}else{ya=(ta|0)!=49152;ca=138}if((ca|0)==138){ua=(Rg(u,ra,o)|0)&1;ta=0}ta=(ua|0)!=0|(ta|0)!=0;if(ta){ca=((Zg(u,ra)|0)>>31)+2&-2}else{ca=0}ua=ha+ca|0;c[R>>2]=ra;Tg(u,ra,r,o,ta);do{if((!(na|sa|ya)?(ra|0)!=(c[S>>2]|0):0)?(ra|0)!=(c[T>>2]|0):0){xa=a[((xa|0)>63?63:xa)+(1049352+(qa<<12)+(oa<<6))>>0]|0;c[U>>2]=xa;ca=ra&63;va=c[u+(ca<<2)>>2]|0;if((c[1060480+(va<<8)+(ca<<2)>>2]|0)<0){xa=xa+1|0;c[U>>2]=xa}if(!((ra|0)!=(c[A>>2]|0)?(ra|0)!=(c[F>>2]|0):0)){xa=xa+-2|0;xa=(xa|0)>0?xa:0;c[U>>2]=xa}do{if(!((xa|0)==0|wa^1)?(va&7|0)!=1:0){Ba=(_g(u,ca<<6|ra>>>6&63)|0)<0;xa=c[U>>2]|0;if(!Ba){break}xa=xa+-2|0;xa=(xa|0)>0?xa:0;c[U>>2]=xa}}while(0);xa=ua-xa|0;va=c[la>>2]|0;wa=~va;ca=0-va|0;xa=0-(zh(u,L,wa,ca,(xa|0)<2?2:xa,1)|0)|0;do{if((va|0)<(xa|0)){if((c[U>>2]|0)<8){break}xa=ua+-4|0;xa=0-(zh(u,L,wa,ca,(xa|0)<2?2:xa,1)|0)|0}}while(0);if((xa|0)>(va|0)){Ba=(c[U>>2]|0)==0;c[U>>2]=0;if(Ba){ca=165;break}else{ca=160;break}}else{c[U>>2]=0;ca=165;break}}else{ca=158}}while(0);if((ca|0)==158){if(sa){ca=166}else{ca=160}}do{if((ca|0)==160){va=c[la>>2]|0;wa=~va;ca=0-va|0;if((ua|0)>=2){xa=0-(zh(u,L,wa,ca,ua,pa)|0)|0;ca=165;break}if(ta){xa=0-(Ah(u,L,wa,ca,0)|0)|0;ca=165;break}else{xa=0-(Bh(u,L,wa,ca,0)|0)|0;ca=165;break}}}while(0);if((ca|0)==165){ca=0;if(sa|(xa|0)>(va|0)){ca=166}else{ua=xa}}do{if((ca|0)==166){ca=0;va=0-va|0;if((ua|0)>=2){ua=0-(Eh(u,L,ma,va,ua,0)|0)|0;break}if(ta){ua=0-(Ch(u,L,ma,va,0)|0)|0;break}else{ua=0-(Dh(u,L,ma,va,0)|0)|0;break}}}while(0);Vg(u,ra);ta=c[ea>>2]|0;va=c[la>>2]|0;if((a[1022448]|0)!=0){break e}if(ji(ja)|0){break e}xa=c[255628]|0;wa=c[1022516>>2]|0;h:do{if((xa|0)==(wa|0)){wa=xa}else{do{if((c[c[xa+8>>2]>>2]|0)==(ra|0)){wa=xa;break h}xa=xa+20|0}while((xa|0)!=(wa|0))}}while(0);xa=(ua|0)>(va|0);if(sa|xa){c[wa>>2]=ua;th(wa,u);if(!sa){h[133080]=+h[133080]+1}}else{c[wa>>2]=-32001}if((ua|0)>(ta|0)?(c[ea>>2]=ua,xa):0){c[ka>>2]=ra;if((ua|0)>=(da|0)){break}c[la>>2]=ua;va=c[la>>2]|0}ra=mg(n)|0;if((ra|0)==0){break e}}a[ia+88>>0]=1}}}while(0);a[z>>0]=0;c[M>>2]=0;Ba=c[N>>2]|0;Aa=ba+(Ba>>>5<<2)+40|0;c[Aa>>2]=c[Aa>>2]&~(1<<(Ba&31));a[ba+56>>0]=0;Aa=O;Ba=ba+64|0;za=Ba;Aa=Jt(c[za>>2]|0,c[za+4>>2]|0,c[Aa>>2]|0,c[Aa+4>>2]|0)|0;c[Ba>>2]=Aa;c[Ba+4>>2]=I;i:do{if((c[ba+8>>2]|0)!=(b|0)){da=128;ba=ba+40|0;while(1){if((c[ba>>2]|0)!=0){break i}ba=ba+4|0;ea=da+-32|0;if(!(ea>>>0>31)){break}else{da=ea}}if((ea|0)!=0?(c[ba>>2]&-1>>>(64-da|0)|0)!=0:0){break}}}while(0);Ba=c[1074196>>2]|0;da=c[268548]|0;if(!(Ba-da>>2>>>0<3|(Ba|0)==(da|0))){ba=0;while(1){da=c[da+(ba<<2)>>2]|0;ea=c[da+856>>2]|0;if(((ea|0)!=0?(w=ea+-1|0,x=da+(w*96|0)+80|0,(a[x>>0]|0)!=0):0)?(y=da+(w*96|0)+24|0,gi(b,c[(c[268548]|0)+(ba<<2)>>2]|0)|0):0){break}ba=ba+1|0;da=c[268548]|0;if(!(ba>>>0<(c[1074196>>2]|0)-da>>2>>>0)){break d}}if((a[x>>0]|0)!=0?gi(b,c[(c[268548]|0)+(ba<<2)>>2]|0)|0:0){Aa=c[N>>2]|0;Ba=da+(w*96|0)+(Aa>>>5<<2)+64|0;c[Ba>>2]=1<<(Aa&31)|c[Ba>>2];c[j>>2]=y;a[z>>0]=1}}}}while(0);if(B){continue}else{da=128;ea=V}while(1){if((c[ea>>2]|0)!=0){continue a}ea=ea+4|0;ba=da+-32|0;if(!(ba>>>0>31)){break}else{da=ba}}if((ba|0)!=0?(c[ea>>2]&-1>>>(64-da|0)|0)!=0:0){continue}else{ea=128;ba=V}while(1){if((c[ba>>2]|0)!=0){continue a}ba=ba+4|0;da=ea+-32|0;if(!(da>>>0>31)){break}else{ea=da}}if((da|0)==0){ca=210;break}if((c[ba>>2]&-1>>>(64-ea|0)|0)==0){ca=210;break}}if((ca|0)==210){i=t;return}}function wh(){var b=0,d=0,e=0,f=0,g=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=i;i=i+16|0;d=b;if((a[1060448]|0)==0?(Ma(1060448)|0)!=0:0){Yb(d|0,0)|0;p=c[d>>2]|0;p=Vt(p|0,((p|0)<0)<<31>>31|0,1e3,0)|0;q=(c[d+4>>2]|0)/1e3|0;p=Jt(q|0,((q|0)<0)<<31>>31|0,p|0,I|0)|0;q=1060440;c[q>>2]=p;c[q+4>>2]=I;Xa(1060448)}Yb(d|0,0)|0;p=c[d>>2]|0;p=Vt(p|0,((p|0)<0)<<31>>31|0,1e3,0)|0;q=(c[d+4>>2]|0)/1e3|0;p=Jt(q|0,((q|0)<0)<<31>>31|0,p|0,I|0)|0;q=1060440;q=Ht(p|0,I|0,c[q>>2]|0,c[q+4>>2]|0)|0;p=I;if((p|0)>0|(p|0)==0&q>>>0>999){Yb(d|0,0)|0;p=c[d>>2]|0;p=Vt(p|0,((p|0)<0)<<31>>31|0,1e3,0)|0;q=(c[d+4>>2]|0)/1e3|0;p=Jt(q|0,((q|0)<0)<<31>>31|0,p|0,I|0)|0;q=1060440;c[q>>2]=p;c[q+4>>2]=I;Hf()}if((c[1022508>>2]|0)!=0){i=b;return}if((c[1022492>>2]|0)!=0){o=1024728|0;p=c[o>>2]|0;o=c[o+4>>2]|0;g=c[1074196>>2]|0;f=c[268548]|0;if((g|0)!=(f|0)){g=g-f>>2;j=0;do{k=f+(j<<2)|0;m=c[k>>2]|0;if((c[m+856>>2]|0)>0){k=c[k>>2]|0;l=k+856|0;n=0;while(1){q=m+(n*96|0)+88|0;p=Jt(c[q>>2]|0,c[q+4>>2]|0,p|0,o|0)|0;o=I;q=0;do{if((c[m+(n*96|0)+(q>>>5<<2)+64>>2]&1<<(q&31)|0)!=0?(e=c[(c[f+(q<<2)>>2]|0)+840>>2]|0,(e|0)!=0):0){r=e+2200|0;p=Jt(c[r>>2]|0,c[r+4>>2]|0,p|0,o|0)|0;o=I}q=q+1|0}while(q>>>0<g>>>0);n=n+1|0;if((n|0)<(c[l>>2]|0)){m=k}else{break}}}j=j+1|0}while(j>>>0<g>>>0)}}else{o=0;p=0}Yb(d|0,0)|0;e=c[d>>2]|0;e=Vt(e|0,((e|0)<0)<<31>>31|0,1e3,0)|0;d=(c[d+4>>2]|0)/1e3|0;d=Jt(d|0,((d|0)<0)<<31>>31|0,e|0,I|0)|0;e=1024760;e=Ht(d|0,I|0,c[e>>2]|0,c[e+4>>2]|0)|0;d=I;if((a[1022450>>0]|0)!=0?(a[1022451>>0]|0)==0:0){f=(~~(+(c[264462]|0)*+h[1057856>>3]*.71)*75|0)/100|0;r=((f|0)<0)<<31>>31;f=(d|0)>(r|0)|(d|0)==(r|0)&e>>>0>f>>>0}else{f=0}r=(c[1057852>>2]|0)+-10|0;q=((r|0)<0)<<31>>31;j=c[1022496>>2]|0;g=c[1022492>>2]|0;if(((j|c[1022500>>2]|c[1022488>>2]|g|c[1022504>>2]|0)!=0|((d|0)>(q|0)|(d|0)==(q|0)&e>>>0>r>>>0|f)^1?(r=((j|0)<0)<<31>>31,(j|0)==0|((d|0)<(r|0)|(d|0)==(r|0)&e>>>0<j>>>0)):0)?(r=((g|0)<0)<<31>>31,(g|0)==0|((o|0)<(r|0)|(o|0)==(r|0)&p>>>0<g>>>0)):0){i=b;return}a[1022448]=1;i=b;return}function xh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1060464;d=c[a+828>>2]|0;if((d|0)!=0){e=a+832|0;f=c[e>>2]|0;if((f|0)!=(d|0)){c[e>>2]=f+(~(((f+-120+(0-d)|0)>>>0)/120|0)*120|0)}Ys(d)}sd(a+804|0);d=c[a+792>>2]|0;if((d|0)==0){c[a>>2]=1068752;i=b;return}e=a+796|0;f=c[e>>2]|0;if((f|0)!=(d|0)){c[e>>2]=f+(~((f+-32+(0-d)|0)>>>5)<<5)}Ys(d);c[a>>2]=1068752;i=b;return}function yh(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;c[a>>2]=1060464;d=c[a+828>>2]|0;if((d|0)!=0){e=a+832|0;f=c[e>>2]|0;if((f|0)!=(d|0)){c[e>>2]=f+(~(((f+-120+(0-d)|0)>>>0)/120|0)*120|0)}Ys(d)}sd(a+804|0);d=c[a+792>>2]|0;if((d|0)==0){Ys(a);i=b;return}e=a+796|0;f=c[e>>2]|0;if((f|0)!=(d|0)){c[e>>2]=f+(~((f+-32+(0-d)|0)>>>5)<<5)}Ys(d);Ys(a);i=b;return}function zh(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,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,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;m=i;i=i+4832|0;s=m+4576|0;y=m+176|0;o=m+4572|0;n=m+4568|0;L=m+2416|0;M=m+88|0;v=m+2408|0;K=m+2400|0;x=m+248|0;u=m;q=y+0|0;r=q+72|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));C=c[f+2216>>2]|0;Q=f+2220|0;r=(c[Q>>2]|0)+56|0;r=(c[r>>2]|0)!=0|(c[r+4>>2]|0)!=0;c[n>>2]=-32001;c[o>>2]=0;A=g+40|0;c[g+56>>2]=0;Y=g+12|0;c[Y>>2]=0;B=g+8|0;c[B>>2]=0;q=g+4|0;c[q>>2]=(c[g+-36>>2]|0)+1;R=g+76|0;a[R>>0]=0;c[g+68>>2]=0;c[g+104>>2]=0;c[g+100>>2]=0;if(((a[1022448]|0)==0?!($g(f)|0):0)?(t=c[q>>2]|0,(t|0)<=120):0){z=t+-32e3|0;z=(z|0)<(h|0)?h:z;h=31999-t|0;h=(h|0)>(j|0)?j:h;if((z|0)>=(h|0)){oa=z;i=m;return oa|0}F=g+16|0;E=c[F>>2]|0;D=(E|0)!=0;if(D){t=Bg(f)|0;j=I}else{j=(c[Q>>2]|0)+48|0;t=c[j>>2]|0;j=c[j+4>>2]|0}P=zi(1074424,t,j)|0;S=(P|0)!=0;if(S){Z=b[P+4>>1]|0;H=Z&65535;c[Y>>2]=H;_=b[P+8>>1]|0;$=_<<16>>16;Y=c[q>>2]|0;if(!(_<<16>>16==32002)){if(_<<16>>16>31879){Y=$-Y|0}else{Y=(_<<16>>16<-31879?Y:0)+$|0}if(!((Y|0)==32002?1:(b[P+10>>1]|0)<(k|0))?(d[P+6>>0]&((Y|0)>=(h|0)?2:1)|0)!=0:0){c[B>>2]=H;if((Y|0)<(h|0)|Z<<16>>16==0){oa=Y;i=m;return oa|0}n=H&49152;if((n|0)==0){n=(c[f+((H&63)<<2)>>2]|0)!=0}else{n=(n|0)!=49152}if(n|r){oa=Y;i=m;return oa|0}Fh(f,g,H,k,0,0);oa=Y;i=m;return oa|0}}else{Y=32002}}else{c[Y>>2]=0;Y=32002;H=0}do{if(r){G=g+32|0;c[G>>2]=32002;S=Y}else{if(S){oa=b[P+12>>1]|0;Z=oa<<16>>16;S=g+32|0;c[S>>2]=Z;if(oa<<16>>16==32002){Z=Ne(f)|0;c[S>>2]=Z}if((Y|0)==32002){S=32002;Y=Z}else{S=Y;Y=(d[P+6>>0]&((Y|0)>(Z|0)?2:1)|0)==0?Z:Y}}else{if((c[g+-32>>2]|0)==65){Z=34-(c[g+-8>>2]|0)|0}else{Z=Ne(f)|0}c[g+32>>2]=Z;Ai(1074424,t,j,32002,0,-254,0,Z);S=Y;Y=Z}if(((((c[(c[Q>>2]|0)+64>>2]|0)==0?(U=c[g+32>>2]|0,(U|0)!=32002):0)?(V=c[g+-8>>2]|0,(V|0)!=32002):0)?(W=c[g+-32>>2]|0,!((W|0)==0|(W|0)==65)):0)?(W&49152|0)==0:0){oa=W&63;na=0-(V+U)|0;oa=1064648+(c[f+(oa<<2)>>2]<<8)+(oa<<2)|0;ma=(c[oa>>2]|0)+-1|0;c[oa>>2]=(ma|0)>(na|0)?ma:na}if(((k|0)<8?(X=(k<<4)+512|0,(Y+X|0)<=(z|0)&(H|0)==0):0)?(oa=c[f+2212>>2]|0,na=f+(oa<<3)+320|0,ma=f+264|0,oa=30496+((oa*7^6)<<3)|0,(c[ma>>2]&c[na>>2]&c[oa>>2]|0)==0?(c[ma+4>>2]&c[na+4>>2]&c[oa+4>>2]|0)==0:0):0){if((k|0)<3?(Y+608|0)<=(z|0):0){oa=Bh(f,g,z,h,0)|0;i=m;return oa|0}oa=z-X|0;U=Bh(f,g,oa,oa+1|0,0)|0;if((U|0)<=(oa|0)){oa=U;i=m;return oa|0}}U=g+36|0;do{if((a[U>>0]|0)==0){if(((((k|0)<14?(T=Y+(ea(k,-100)|0)|0,(T|0)>=(h|0)):0)?(((h|0)>-1?h:0-h|0)|0)<31880:0)?(((Y|0)>-1?Y:0-Y|0)|0)<1e4:0)?(c[(c[Q>>2]|0)+(c[f+2212>>2]<<2)+16>>2]|0)!=0:0){oa=T;i=m;return oa|0}if(!((k|0)<4|(Y|0)<(h|0))?(c[(c[Q>>2]|0)+(c[f+2212>>2]<<2)+16>>2]|0)!=0:0){c[B>>2]=65;X=0-h|0;T=(((h|0)>-1?h:X)|0)<1e4;if(T){V=((Y-h|0)/198|0)<<1}else{V=0}Xg(f,y);a[R>>0]=1;V=k+-6+((k|0)/-4|0)-V|0;W=(V|0)<2;Y=1-h|0;if(W){X=Bh(f,A,X,Y,0)|0}else{X=zh(f,A,X,Y,V,l^1)|0}X=0-X|0;a[R>>0]=0;Yg(f);if((h|0)<=(X|0)){R=(X|0)>31879?h:X;if(!((k|0)>23|T^1)){oa=R;i=m;return oa|0}a[U>>0]=1;T=h+-1|0;if(W){T=Bh(f,g,T,h,0)|0}else{T=zh(f,g,T,h,V,0)|0}a[U>>0]=0;if((T|0)<(h|0)){break}else{G=R}i=m;return G|0}}}}while(0);if((k|0)>=10){a:do{if(((a[U>>0]|0)==0?(((h|0)>-1?h:0-h|0)|0)<31880:0)?(J=h+200|0,J=(J|0)>32001?32001:J,N=k+-8|0,jg(L,f,H,1060480,c[(c[Q>>2]|0)+64>>2]|0),Cg(M,f),O=lg(L)|0,(O|0)!=0):0){Q=M+8|0;
+V=0-J|0;T=1-J|0;R=l^1;while(1){oa=Q;if(Pg(f,O,c[oa>>2]|0,c[oa+4>>2]|0)|0?(c[B>>2]=O,Tg(f,O,y,M,Rg(f,O,M)|0),G=0-(zh(f,A,V,T,N,R)|0)|0,Vg(f,O),(J|0)<=(G|0)):0){break}O=lg(L)|0;if((O|0)==0){break a}}i=m;return G|0}}while(0);if((k|0)>15&(H|0)==0){G=g+32|0;if(((c[G>>2]|0)+256|0)<(h|0)){H=0;break}a[U>>0]=1;zh(f,g,z,h,k+-4+((k|0)/-4|0)|0,1)|0;a[U>>0]=0;P=zi(1074424,t,j)|0;if((P|0)==0){H=0;P=0;break}H=e[P+4>>1]|0;break}}G=g+32|0}}while(0);oa=c[g+-32>>2]&63;_=c[f+(oa<<2)>>2]|0;c[v>>2]=c[1024776+(_<<9)+(oa<<3)>>2];J=v+4|0;c[J>>2]=c[1024776+(_<<9)+(oa<<3)+4>>2];oa=c[g+-72>>2]&63;_=c[f+(oa<<2)>>2]|0;c[K>>2]=c[1032968+(_<<9)+(oa<<3)>>2];c[K+4>>2]=c[1032968+(_<<9)+(oa<<3)+4>>2];hg(x,f,H,k,1060480,v,K,g);Cg(u,f);oa=c[G>>2]|0;_=c[g+-48>>2]|0;_=(oa|0)>=(_|0)|(oa|0)==32002|(_|0)==32002;if(((k|0)>=16?!(((H|0)==0?1:(((h|0)>-1?h:0-h|0)|0)>9999)|D):0)?!((a[P+6>>0]&2)==0):0){K=(b[P+10>>1]|0)>=(k+-6|0)}else{K=0}da=lg(x)|0;if((da|0)!=0){L=u+8|0;V=S-k|0;Z=g+36|0;R=V+-1|0;U=(k|0)/2|0;O=k+-2|0;Q=(k|0)<6;S=~z;T=0-z|0;M=l^1;Y=C+852|0;X=C+856|0;P=g+20|0;N=g+24|0;W=(U|0)>63?63:U;ba=_&1;ca=g+28|0;aa=(k|0)<32;$=1057544+(ba<<7)+(k<<2)|0;_=f+2212|0;ja=0;ia=0;b:while(1){c:do{if((da|0)!=(E|0)){fa=ja+1|0;ha=da&49152;ga=(ha|0)==0;if(ga){ha=da&63;la=(c[f+(ha<<2)>>2]|0)!=0;oa=u;if((c[oa>>2]|0)==0&(c[oa+4>>2]|0)==0){oa=u+((c[f+((da>>>6&63)<<2)>>2]&7)<<3)+16|0;ha=29920+(ha<<3)|0;ka=c[ha>>2]&c[oa>>2];ha=c[ha+4>>2]&c[oa+4>>2]}else{p=92}}else{la=(ha|0)!=49152;p=92}if((p|0)==92){p=0;ka=(Rg(f,da,u)|0)&1;ha=0}ha=(ka|0)!=0|(ha|0)!=0;if(!ha){if(ga){ka=da>>>6&63;if((c[f+(ka<<2)>>2]&7|0)==1){na=((c[_>>2]|0)*7^ka>>>3|0)>3;ka=0}else{na=0;ka=0}}else{na=1;ka=0}}else{na=1;ka=((Zg(f,da)|0)>>31)+2&-2}ma=(da|0)==(H|0);if(K&ma&(ka|0)==0){oa=L;if(Pg(f,H,c[oa>>2]|0,c[oa+4>>2]|0)|0){c[F>>2]=H;a[Z>>0]=1;ka=zh(f,g,R,V,U,l)|0;a[Z>>0]=0;c[F>>2]=0;ka=(ka|0)<(V|0)?2:0}else{ka=0}}ka=O+ka|0;do{if(!(la|r|na)?(w=c[n>>2]|0,(w|0)>-31880):0){if(aa?(fa|0)>=(c[$>>2]|0):0){break c}na=ka-(a[((fa|0)>63?63:fa)+(1041160+(ba<<12)+(W<<6))>>0]|0)|0;if((na|0)>=14){break}oa=(na*100|0)+128+(c[G>>2]|0)+(c[1064648+(c[f+((da>>>6&63)<<2)>>2]<<8)+((da&63)<<2)>>2]|0)|0;if((oa|0)<=(z|0)){c[n>>2]=(w|0)<(oa|0)?oa:w;break c}if((na|0)>=8){break}if((Zg(f,da)|0)<0){break c}}}while(0);oa=L;if(Pg(f,da,c[oa>>2]|0,c[oa+4>>2]|0)|0){c[B>>2]=da;if((ia|0)<64&(la^1)){c[s+(ia<<2)>>2]=da;ia=ia+1|0}Tg(f,da,y,u,ha);do{if(!(Q|la|ma)){if((da|0)==(c[P>>2]|0)){p=134;break}if((da|0)==(c[N>>2]|0)){p=134;break}ja=a[((fa|0)>63?63:fa)+(1041160+(ba<<12)+(W<<6))>>0]|0;c[ca>>2]=ja;do{if(l){ja=ja+2|0;c[ca>>2]=ja}else{oa=da&63;if((c[1060480+(c[f+(oa<<2)>>2]<<8)+(oa<<2)>>2]|0)>=0){break}ja=ja+1|0;c[ca>>2]=ja}}while(0);if(!((da|0)!=(c[v>>2]|0)?(da|0)!=(c[J>>2]|0):0)){ja=ja+-2|0;ja=(ja|0)>0?ja:0;c[ca>>2]=ja}do{if(!((ja|0)==0|ga^1)){ga=da&63;if((c[f+(ga<<2)>>2]&7|0)==1){break}oa=(_g(f,ga<<6|da>>>6&63)|0)<0;ja=c[ca>>2]|0;if(!oa){break}ja=ja+-2|0;ja=(ja|0)>0?ja:0;c[ca>>2]=ja}}while(0);ga=ka-ja|0;ga=0-(zh(f,A,S,T,(ga|0)<2?2:ga,1)|0)|0;do{if((z|0)<(ga|0)){if((c[ca>>2]|0)<8){break}ga=ka+-4|0;ga=0-(zh(f,A,S,T,(ga|0)<2?2:ga,1)|0)|0}}while(0);if((ga|0)>(z|0)){oa=(c[ca>>2]|0)==0;c[ca>>2]=0;if(oa){break}else{p=134;break}}else{c[ca>>2]=0;break}}else{p=134}}while(0);do{if((p|0)==134){p=0;if((ka|0)>=2){ga=0-(zh(f,A,S,T,ka,M)|0)|0;break}if(ha){ga=0-(Ah(f,A,S,T,0)|0)|0;break}else{ga=0-(Bh(f,A,S,T,0)|0)|0;break}}}while(0);Vg(f,da);if((a[1022448]|0)!=0){G=0;p=168;break b}if(ji(C)|0){G=0;p=168;break b}if((ga|0)>(c[n>>2]|0)?(c[n>>2]=ga,(ga|0)>(z|0)):0){p=143;break b}if((c[1074204>>2]|0)>(k|0)){break}if((mi(1074192,C)|0)==0){break}if((c[Y>>2]|0)!=0?(a[(c[Y>>2]|0)+56>>0]|0)!=0:0){break}if((c[X>>2]|0)>=8){break}ni(C,f,g,z,h,n,o,k,fa,x,2,l);if((a[1022448]|0)!=0){G=0;p=168;break b}if(ji(C)|0){G=0;p=168;break b}if((c[n>>2]|0)>=(h|0)){break b}}else{fa=ja}}else{fa=ja}}while(0);da=lg(x)|0;if((da|0)==0){break}else{ja=fa}}if((p|0)==143){c[o>>2]=da}else if((p|0)==168){i=m;return G|0}if((fa|0)!=0){z=c[n>>2]|0;if((z|0)>=(h|0)){u=c[o>>2]|0;v=u&49152;if((v|0)==0){v=(c[f+((u&63)<<2)>>2]|0)!=0}else{v=(v|0)!=49152}if(!(v|r)){Fh(f,g,u,k,s,ia+-1|0);z=c[n>>2]|0}}}else{p=153}}else{p=153}if((p|0)==153){do{if(!D){if(r){z=(c[q>>2]|0)+-32e3|0;break}else{z=c[1057880+(c[f+2212>>2]<<2)>>2]|0;break}}}while(0);c[n>>2]=z}f=c[q>>2]|0;if((z|0)>31879){f=f+z|0}else{f=z-((z|0)<-31879?f:0)|0}Ai(1074424,t,j,f,(z|0)>=(h|0)?2:1,k,c[o>>2]|0,c[G>>2]|0);oa=c[n>>2]|0;i=m;return oa|0}if((c[q>>2]|0)<121|r){oa=c[1057880+(c[f+2212>>2]<<2)>>2]|0;i=m;return oa|0}else{oa=Ne(f)|0;i=m;return oa|0}return 0}function Ah(a,f,g,h,j){a=a|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;k=i;i=i+2320|0;n=k+88|0;p=k+160|0;o=k;l=n+0|0;m=l+72|0;do{c[l>>2]=0;l=l+4|0}while((l|0)<(m|0));r=f+8|0;c[r>>2]=0;s=f+4|0;c[s>>2]=(c[f+-36>>2]|0)+1;if(!($g(a)|0)?(c[s>>2]|0)<=120:0){t=a+2220|0;m=(c[t>>2]|0)+48|0;l=c[m>>2]|0;m=c[m+4>>2]|0;u=zi(1074424,l,m)|0;if((u|0)!=0){v=e[u+4>>1]|0;w=b[u+8>>1]|0;y=w<<16>>16;x=c[s>>2]|0;if(!(w<<16>>16==32002)){if(w<<16>>16>31879){w=y-x|0}else{w=(w<<16>>16<-31879?x:0)+y|0}if(!((b[u+10>>1]|0)<0|(w|0)==32002)?(d[u+6>>0]&((w|0)>=(h|0)?2:1)|0)!=0:0){c[r>>2]=v;C=w;i=k;return C|0}}}else{v=0}u=f+32|0;c[u>>2]=32002;ig(p,a,v,j,1060480,c[f+-32>>2]&63);Cg(o,a);x=a+2212|0;w=o+8|0;f=f+40|0;h=0-h|0;y=0-g|0;j=j+-2|0;z=-32001;a:while(1){A=lg(p)|0;if((A|0)==0){break}b:do{if((z|0)>-31880){while(1){B=A&49152;if((B|0)==0?(C=o,(c[C>>2]|0)==0&(c[C+4>>2]|0)==0):0){q=o+((c[a+((A>>>6&63)<<2)>>2]&7)<<3)+16|0;D=29920+((A&63)<<3)|0;C=c[D>>2]&c[q>>2];q=c[D+4>>2]&c[q+4>>2]}else{C=(Rg(a,A,o)|0)&1;q=0}C=(C|0)!=0|(q|0)!=0;if((c[a+((A&63)<<2)>>2]|0)==0){if((B|0)==32768){q=24}else{q=22}}else{if((B|0)==49152){q=22}else{q=24}}if((q|0)==22){q=0;if(!(!(((A|0)==(v|0)?1:(c[(c[t>>2]|0)+24>>2]&3<<(c[x>>2]<<1)|0)!=0)|(B|0)==16384)?(Zg(a,A)|0)<0:0)){q=24}}if((q|0)==24?(q=0,D=w,Pg(a,A,c[D>>2]|0,c[D+4>>2]|0)|0):0){c[r>>2]=A;Tg(a,A,n,o,C);if(C){B=Ah(a,f,h,y,j)|0}else{B=Bh(a,f,h,y,j)|0}C=0-B|0;Vg(a,A);if((z|0)<(C|0)){z=C;break b}}A=lg(p)|0;if((A|0)==0){break a}}}else{while(1){if((A&49152|0)==0?(D=o,(c[D>>2]|0)==0&(c[D+4>>2]|0)==0):0){B=o+((c[a+((A>>>6&63)<<2)>>2]&7)<<3)+16|0;D=29920+((A&63)<<3)|0;C=c[D>>2]&c[B>>2];B=c[D+4>>2]&c[B+4>>2]}else{C=(Rg(a,A,o)|0)&1;B=0}B=(C|0)!=0|(B|0)!=0;D=w;if(Pg(a,A,c[D>>2]|0,c[D+4>>2]|0)|0){c[r>>2]=A;Tg(a,A,n,o,B);if(B){B=Ah(a,f,h,y,j)|0}else{B=Bh(a,f,h,y,j)|0}C=0-B|0;Vg(a,A);if((z|0)<(C|0)){z=C;break b}}A=lg(p)|0;if((A|0)==0){break a}}}}while(0);if((z|0)>(g|0)){q=41;break}}if((q|0)==41){n=c[s>>2]|0;if((z|0)>31879){n=n-B|0}else{n=z-((z|0)<-31879?n:0)|0}Ai(1074424,l,m,n,2,0,A,c[u>>2]|0);D=z;i=k;return D|0}n=c[s>>2]|0;if((z|0)==-32001){D=n+-32e3|0;i=k;return D|0}if((z|0)>31879){n=n+z|0}else{n=z-((z|0)<-31879?n:0)|0}Ai(1074424,l,m,n,1,0,0,c[u>>2]|0);D=z;i=k;return D|0}D=c[1057880+(c[a+2212>>2]<<2)>>2]|0;i=k;return D|0}function Bh(a,f,g,h,j){a=a|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;k=i;i=i+2320|0;r=k+88|0;q=k+160|0;s=k;l=r+0|0;m=l+72|0;do{c[l>>2]=0;l=l+4|0}while((l|0)<(m|0));t=f+8|0;c[t>>2]=0;p=f+4|0;c[p>>2]=(c[f+-36>>2]|0)+1;I=$g(a)|0;l=(c[p>>2]|0)>120;if(I){if(!l){I=c[1057880+(c[a+2212>>2]<<2)>>2]|0;i=k;return I|0}}else{if(!l){m=j>>31&-2;w=a+2220|0;l=(c[w>>2]|0)+48|0;n=c[l>>2]|0;l=c[l+4>>2]|0;x=zi(1074424,n,l)|0;v=(x|0)!=0;if(v){u=e[x+4>>1]|0;y=b[x+8>>1]|0;A=y<<16>>16;z=c[p>>2]|0;if(!(y<<16>>16==32002)){if(y<<16>>16>31879){z=A-z|0}else{z=(y<<16>>16<-31879?z:0)+A|0}y=(z|0)==32002;if(!((b[x+10>>1]|0)<(m|0)|y)){if((d[x+6>>0]&((z|0)>=(h|0)?2:1)|0)==0){y=0}else{c[t>>2]=u;I=z;i=k;return I|0}}}else{y=1;z=32002}I=b[x+12>>1]|0;B=I<<16>>16;A=f+32|0;c[A>>2]=B;if(I<<16>>16==32002){B=Ne(a)|0;c[A>>2]=B}if(y){D=B;x=B}else{D=(d[x+6>>0]&((z|0)>(B|0)?2:1)|0)==0?B:z;x=B}}else{if((c[f+-32>>2]|0)==65){u=34-(c[f+-8>>2]|0)|0}else{u=Ne(a)|0}c[f+32>>2]=u;D=u;x=u;u=0}if((D|0)>=(h|0)){if(v){I=D;i=k;return I|0}f=(c[w>>2]|0)+48|0;l=c[p>>2]|0;if((D|0)>31879){l=l+D|0}else{l=D-((D|0)<-31879?l:0)|0}Ai(1074424,c[f>>2]|0,c[f+4>>2]|0,l,2,-254,0,x);I=D;i=k;return I|0}v=D+128|0;ig(q,a,u,j,1060480,c[f+-32>>2]&63);Cg(s,a);E=lg(q)|0;a:do{if((E|0)!=0){B=(v|0)>-1e4;y=a+2212|0;z=(v|0)<(h|0);A=s+8|0;w=f+40|0;x=0-h|0;C=0-g|0;j=j+-2|0;while(1){b:while(1){F=E&49152;if((F|0)==0?(I=s,(c[I>>2]|0)==0&(c[I+4>>2]|0)==0):0){G=s+((c[a+((E>>>6&63)<<2)>>2]&7)<<3)+16|0;I=29920+((E&63)<<3)|0;H=c[I>>2]&c[G>>2];G=c[I+4>>2]&c[G+4>>2]}else{H=(Rg(a,E,s)|0)&1;G=0}H=(H|0)!=0|(G|0)!=0;G=(E|0)==(u|0);do{if(B&((H|G)^1)){I=E>>>6&63;if((c[a+(I<<2)>>2]&7|0)==1?((c[y>>2]|0)*7^I>>>3|0)>3:0){break}I=(c[1009448+(c[a+((E&63)<<2)>>2]<<2)>>2]|0)+v|0;if((I|0)<(h|0)){o=39;break b}if(z?(_g(a,E)|0)<1:0){o=42;break b}}}while(0);if(!(!(G|(F|0)==16384)?(Zg(a,E)|0)<0:0)){o=46}if((o|0)==46?(o=0,I=A,Pg(a,E,c[I>>2]|0,c[I+4>>2]|0)|0):0){c[t>>2]=E;Tg(a,E,r,s,H);if(H){G=Ah(a,w,x,C,j)|0}else{G=Bh(a,w,x,C,j)|0}F=0-G|0;Vg(a,E);if((D|0)<(F|0)){o=51;break}}E=lg(q)|0;if((E|0)==0){break a}}if((o|0)==39){o=0;D=(D|0)<(I|0)?I:D}else if((o|0)==42){o=0;D=(D|0)<(v|0)?v:D}else if((o|0)==51){o=0;if((F|0)>(g|0)){break}else{D=F}}E=lg(q)|0;if((E|0)==0){break a}}a=c[p>>2]|0;if((F|0)>31879){a=a-G|0}else{a=F-((F|0)<-31879?a:0)|0}Ai(1074424,n,l,a,2,m,E,c[f+32>>2]|0);I=F;i=k;return I|0}}while(0);a=c[p>>2]|0;if((D|0)>31879){a=a+D|0}else{a=D-((D|0)<-31879?a:0)|0}Ai(1074424,n,l,a,1,m,0,c[f+32>>2]|0);I=D;i=k;return I|0}}I=Ne(a)|0;i=k;return I|0}function Ch(d,f,g,h,j){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;k=i;i=i+2320|0;o=k+88|0;n=k+160|0;q=k;m=o+0|0;l=m+72|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(l|0));r=f+8|0;c[r>>2]=0;s=f+4|0;c[s>>2]=(c[f+-36>>2]|0)+1;if(!($g(d)|0)?(c[s>>2]|0)<=120:0){m=(c[d+2220>>2]|0)+48|0;l=c[m>>2]|0;m=c[m+4>>2]|0;u=zi(1074424,l,m)|0;if((u|0)!=0){t=e[u+4>>1]|0;w=b[u+8>>1]|0;v=w<<16>>16;x=c[s>>2]|0;if(!(w<<16>>16==32002)){if(w<<16>>16>31879){v=v-x|0}else{v=(w<<16>>16<-31879?x:0)+v|0}if(!((b[u+10>>1]|0)<0|(v|0)==32002)?(a[u+6>>0]|0)==3:0){c[r>>2]=t;C=v;i=k;return C|0}else{u=t}}else{u=t}}else{u=0}t=f+32|0;c[t>>2]=32002;ig(n,d,u,j,1060480,c[f+-32>>2]&63);Cg(q,d);u=q+8|0;v=f+40|0;w=0-h|0;z=j+-2|0;y=g;j=0;f=-32001;a:while(1){x=0-y|0;while(1){A=lg(n)|0;if((A|0)==0){break a}while(1){if((A&49152|0)==0?(C=q,(c[C>>2]|0)==0&(c[C+4>>2]|0)==0):0){C=q+((c[d+((A>>>6&63)<<2)>>2]&7)<<3)+16|0;D=29920+((A&63)<<3)|0;B=c[D>>2]&c[C>>2];C=c[D+4>>2]&c[C+4>>2]}else{B=(Rg(d,A,q)|0)&1;C=0}B=(B|0)!=0|(C|0)!=0;D=u;if(Pg(d,A,c[D>>2]|0,c[D+4>>2]|0)|0){c[r>>2]=A;Tg(d,A,o,q,B);if(B){C=Ch(d,v,w,x,z)|0}else{C=Dh(d,v,w,x,z)|0}B=0-C|0;Vg(d,A);if((f|0)<(B|0)){break}}A=lg(n)|0;if((A|0)==0){break a}}if((y|0)<(B|0)){break}else{f=B}}if((B|0)<(h|0)){y=B;j=A;f=B}else{p=27;break}}if((p|0)==27){g=c[s>>2]|0;if((B|0)>31879){g=g-C|0}else{g=B-((B|0)<-31879?g:0)|0}Ai(1074424,l,m,g,2,0,A,c[t>>2]|0);D=B;i=k;return D|0}d=c[s>>2]|0;if((f|0)==-32001){D=d+-32e3|0;i=k;return D|0}if((f|0)>31879){d=d+f|0}else{d=f-((f|0)<-31879?d:0)|0}Ai(1074424,l,m,d,(f|0)>(g|0)?3:1,0,j,c[t>>2]|0);D=f;i=k;return D|0}D=c[1057880+(c[d+2212>>2]<<2)>>2]|0;i=k;return D|0}function Iq(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;a=i;i=i+16|0;l=a+4|0;k=a;c[l>>2]=d;c[k>>2]=g;b=Jq(d,e,l,g,h,k,1114111,0)|0;c[f>>2]=d+((c[l>>2]|0)-d>>1<<1);c[j>>2]=g+((c[k>>2]|0)-g);i=a;return b|0}function Jq(d,f,g,h,j,k,l,m){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0;n=i;c[g>>2]=d;c[k>>2]=h;do{if((m&2|0)!=0){if((j-h|0)<3){p=1;i=n;return p|0}else{c[k>>2]=h+1;a[h>>0]=-17;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=-69;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=-65;break}}}while(0);h=f;o=c[g>>2]|0;if(!(o>>>0<f>>>0)){p=0;i=n;return p|0}a:while(1){d=b[o>>1]|0;m=d&65535;if(m>>>0>l>>>0){l=2;f=26;break}do{if((d&65535)<128){m=c[k>>2]|0;if((j-m|0)<1){l=1;f=26;break a}c[k>>2]=m+1;a[m>>0]=d}else{if((d&65535)<2048){d=c[k>>2]|0;if((j-d|0)<2){l=1;f=26;break a}c[k>>2]=d+1;a[d>>0]=m>>>6|192;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=m&63|128;break}if((d&65535)<55296){d=c[k>>2]|0;if((j-d|0)<3){l=1;f=26;break a}c[k>>2]=d+1;a[d>>0]=m>>>12|224;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=m>>>6&63|128;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=m&63|128;break}if(!((d&65535)<56320)){if((d&65535)<57344){l=2;f=26;break a}d=c[k>>2]|0;if((j-d|0)<3){l=1;f=26;break a}c[k>>2]=d+1;a[d>>0]=m>>>12|224;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=m>>>6&63|128;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=m&63|128;break}if((h-o|0)<4){l=1;f=26;break a}p=o+2|0;d=e[p>>1]|0;if((d&64512|0)!=56320){l=2;f=26;break a}if((j-(c[k>>2]|0)|0)<4){l=1;f=26;break a}o=m&960;if(((o<<10)+65536|m<<10&64512|d&1023)>>>0>l>>>0){l=2;f=26;break a}c[g>>2]=p;o=(o>>>6)+1|0;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=o>>>2|240;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=m>>>2&15|o<<4&48|128;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=m<<4&48|d>>>6&15|128;p=c[k>>2]|0;c[k>>2]=p+1;a[p>>0]=d&63|128}}while(0);o=(c[g>>2]|0)+2|0;c[g>>2]=o;if(!(o>>>0<f>>>0)){l=0;f=26;break}}if((f|0)==26){i=n;return l|0}return 0}function Kq(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;a=i;i=i+16|0;l=a+4|0;k=a;c[l>>2]=d;c[k>>2]=g;b=Lq(d,e,l,g,h,k,1114111,0)|0;c[f>>2]=d+((c[l>>2]|0)-d);c[j>>2]=g+((c[k>>2]|0)-g>>1<<1);i=a;return b|0}function Lq(e,f,g,h,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0;n=i;c[g>>2]=e;c[k>>2]=h;p=c[g>>2]|0;if(((((m&4|0)!=0?(f-p|0)>2:0)?(a[p>>0]|0)==-17:0)?(a[p+1>>0]|0)==-69:0)?(a[p+2>>0]|0)==-65:0){p=p+3|0;c[g>>2]=p}a:do{if(p>>>0<f>>>0){e=f;h=j;m=c[k>>2]|0;b:while(1){if(!(m>>>0<j>>>0)){break a}q=a[p>>0]|0;o=q&255;if(o>>>0>l>>>0){f=2;g=41;break}do{if(q<<24>>24>-1){b[m>>1]=q&255;c[g>>2]=p+1}else{if((q&255)<194){f=2;g=41;break b}if((q&255)<224){if((e-p|0)<2){f=1;g=41;break b}q=d[p+1>>0]|0;if((q&192|0)!=128){f=2;g=41;break b}o=q&63|o<<6&1984;if(o>>>0>l>>>0){f=2;g=41;break b}b[m>>1]=o;c[g>>2]=p+2;break}if((q&255)<240){if((e-p|0)<3){f=1;g=41;break b}q=a[p+1>>0]|0;r=a[p+2>>0]|0;if((o|0)==224){if(!((q&-32)<<24>>24==-96)){f=2;g=41;break b}}else if((o|0)==237){if(!((q&-32)<<24>>24==-128)){f=2;g=41;break b}}else{if(!((q&-64)<<24>>24==-128)){f=2;g=41;break b}}r=r&255;if((r&192|0)!=128){f=2;g=41;break b}o=(q&255)<<6&4032|o<<12|r&63;if((o&65535)>>>0>l>>>0){f=2;g=41;break b}b[m>>1]=o;c[g>>2]=p+3;break}if(!((q&255)<245)){f=2;g=41;break b}if((e-p|0)<4){f=1;g=41;break b}q=a[p+1>>0]|0;r=a[p+2>>0]|0;s=a[p+3>>0]|0;if((o|0)==240){if(!((q+112<<24>>24&255)<48)){f=2;g=41;break b}}else if((o|0)==244){if(!((q&-16)<<24>>24==-128)){f=2;g=41;break b}}else{if(!((q&-64)<<24>>24==-128)){f=2;g=41;break b}}p=r&255;if((p&192|0)!=128){f=2;g=41;break b}r=s&255;if((r&192|0)!=128){f=2;g=41;break b}if((h-m|0)<4){f=1;g=41;break b}o=o&7;s=q&255;q=p<<6;r=r&63;if((s<<12&258048|o<<18|q&4032|r)>>>0>l>>>0){f=2;g=41;break b}b[m>>1]=s<<2&60|p>>>4&3|((s>>>4&3|o<<2)<<6)+16320|55296;s=m+2|0;c[k>>2]=s;b[s>>1]=r|q&960|56320;c[g>>2]=(c[g>>2]|0)+4}}while(0);m=(c[k>>2]|0)+2|0;c[k>>2]=m;p=c[g>>2]|0;if(!(p>>>0<f>>>0)){break a}}if((g|0)==41){i=n;return f|0}}}while(0);s=p>>>0<f>>>0&1;i=n;return s|0}function Mq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Nq(a){a=a|0;return 0}function Oq(a){a=a|0;return 0}function Pq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=i;b=Qq(c,d,e,1114111,0)|0;i=a;return b|0}function Qq(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;if((((g&4|0)!=0?(c-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0){k=(a[b+2>>0]|0)==-65?b+3|0:b}else{k=b}a:do{if(k>>>0<c>>>0&(e|0)!=0){g=c;j=0;b:while(1){m=a[k>>0]|0;l=m&255;if(l>>>0>f>>>0){break a}do{if(m<<24>>24>-1){k=k+1|0}else{if((m&255)<194){break a}if((m&255)<224){if((g-k|0)<2){break a}m=d[k+1>>0]|0;if((m&192|0)!=128){break a}if((m&63|l<<6&1984)>>>0>f>>>0){break a}k=k+2|0;break}if((m&255)<240){n=k;if((g-n|0)<3){break a}m=a[k+1>>0]|0;o=a[k+2>>0]|0;if((l|0)==224){if(!((m&-32)<<24>>24==-96)){f=21;break b}}else if((l|0)==237){if(!((m&-32)<<24>>24==-128)){f=23;break b}}else{if(!((m&-64)<<24>>24==-128)){f=25;break b}}n=o&255;if((n&192|0)!=128){break a}if(((m&255)<<6&4032|l<<12&61440|n&63)>>>0>f>>>0){break a}k=k+3|0;break}if(!((m&255)<245)){break a}o=k;if((g-o|0)<4){break a}if((e-j|0)>>>0<2){break a}m=a[k+1>>0]|0;p=a[k+2>>0]|0;n=a[k+3>>0]|0;if((l|0)==240){if(!((m+112<<24>>24&255)<48)){f=34;break b}}else if((l|0)==244){if(!((m&-16)<<24>>24==-128)){f=36;break b}}else{if(!((m&-64)<<24>>24==-128)){f=38;break b}}o=p&255;if((o&192|0)!=128){break a}n=n&255;if((n&192|0)!=128){break a}if(((m&255)<<12&258048|l<<18&1835008|o<<6&4032|n&63)>>>0>f>>>0){break a}k=k+4|0;j=j+1|0}}while(0);j=j+1|0;if(!(k>>>0<c>>>0&j>>>0<e>>>0)){break a}}if((f|0)==21){p=n-b|0;i=h;return p|0}else if((f|0)==23){p=n-b|0;i=h;return p|0}else if((f|0)==25){p=n-b|0;i=h;return p|0}else if((f|0)==34){p=o-b|0;i=h;return p|0}else if((f|0)==36){p=o-b|0;i=h;return p|0}else if((f|0)==38){p=o-b|0;i=h;return p|0}}}while(0);p=k-b|0;i=h;return p|0}function Rq(a){a=a|0;return 4}function Sq(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Tq(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;a=i;i=i+16|0;l=a+4|0;k=a;c[l>>2]=d;c[k>>2]=g;b=Uq(d,e,l,g,h,k,1114111,0)|0;c[f>>2]=d+((c[l>>2]|0)-d>>2<<2);c[j>>2]=g+((c[k>>2]|0)-g);i=a;return b|0}function Uq(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0;l=i;c[e>>2]=b;c[h>>2]=f;do{if((k&2|0)!=0){if((g-f|0)<3){k=1;i=l;return k|0}else{c[h>>2]=f+1;a[f>>0]=-17;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-69;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-65;break}}}while(0);b=c[e>>2]|0;if(!(b>>>0<d>>>0)){k=0;i=l;return k|0}a:while(1){b=c[b>>2]|0;if((b&-2048|0)==55296|b>>>0>j>>>0){e=2;j=19;break}do{if(!(b>>>0<128)){if(b>>>0<2048){f=c[h>>2]|0;if((g-f|0)<2){e=1;j=19;break a}c[h>>2]=f+1;a[f>>0]=b>>>6|192;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=b&63|128;break}k=c[h>>2]|0;f=g-k|0;if(b>>>0<65536){if((f|0)<3){e=1;j=19;break a}c[h>>2]=k+1;a[k>>0]=b>>>12|224;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=b>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=b&63|128;break}else{if((f|0)<4){e=1;j=19;break a}c[h>>2]=k+1;a[k>>0]=b>>>18|240;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=b>>>12&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=b>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=b&63|128;break}}else{f=c[h>>2]|0;if((g-f|0)<1){e=1;j=19;break a}c[h>>2]=f+1;a[f>>0]=b}}while(0);b=(c[e>>2]|0)+4|0;c[e>>2]=b;if(!(b>>>0<d>>>0)){e=0;j=19;break}}if((j|0)==19){i=l;return e|0}return 0}function Vq(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0;a=i;i=i+16|0;l=a+4|0;k=a;c[l>>2]=d;c[k>>2]=g;b=Wq(d,e,l,g,h,k,1114111,0)|0;c[f>>2]=d+((c[l>>2]|0)-d);c[j>>2]=g+((c[k>>2]|0)-g>>2<<2);i=a;return b|0}function Wq(b,e,f,g,h,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0;n=i;c[f>>2]=b;c[j>>2]=g;g=c[f>>2]|0;if(((((l&4|0)!=0?(e-g|0)>2:0)?(a[g>>0]|0)==-17:0)?(a[g+1>>0]|0)==-69:0)?(a[g+2>>0]|0)==-65:0){g=g+3|0;c[f>>2]=g}a:do{if(g>>>0<e>>>0){b=e;l=c[j>>2]|0;while(1){if(!(l>>>0<h>>>0)){m=39;break a}p=a[g>>0]|0;o=p&255;do{if(p<<24>>24>-1){if(o>>>0>k>>>0){e=2;break a}c[l>>2]=o;c[f>>2]=g+1}else{if((p&255)<194){e=2;break a}if((p&255)<224){if((b-g|0)<2){e=1;break a}p=d[g+1>>0]|0;if((p&192|0)!=128){e=2;break a}o=p&63|o<<6&1984;if(o>>>0>k>>>0){e=2;break a}c[l>>2]=o;c[f>>2]=g+2;break}if((p&255)<240){if((b-g|0)<3){e=1;break a}p=a[g+1>>0]|0;q=a[g+2>>0]|0;if((o|0)==237){if(!((p&-32)<<24>>24==-128)){e=2;break a}}else if((o|0)==224){if(!((p&-32)<<24>>24==-96)){e=2;break a}}else{if(!((p&-64)<<24>>24==-128)){e=2;break a}}q=q&255;if((q&192|0)!=128){e=2;break a}o=(p&255)<<6&4032|o<<12&61440|q&63;if(o>>>0>k>>>0){e=2;break a}c[l>>2]=o;c[f>>2]=g+3;break}if(!((p&255)<245)){e=2;break a}if((b-g|0)<4){e=1;break a}p=a[g+1>>0]|0;r=a[g+2>>0]|0;q=a[g+3>>0]|0;if((o|0)==240){if(!((p+112<<24>>24&255)<48)){e=2;break a}}else if((o|0)==244){if(!((p&-16)<<24>>24==-128)){e=2;break a}}else{if(!((p&-64)<<24>>24==-128)){e=2;break a}}r=r&255;if((r&192|0)!=128){e=2;break a}q=q&255;if((q&192|0)!=128){e=2;break a}o=(p&255)<<12&258048|o<<18&1835008|r<<6&4032|q&63;if(o>>>0>k>>>0){e=2;break a}c[l>>2]=o;c[f>>2]=g+4}}while(0);l=(c[j>>2]|0)+4|0;c[j>>2]=l;g=c[f>>2]|0;if(!(g>>>0<e>>>0)){m=39;break}}}else{m=39}}while(0);if((m|0)==39){e=g>>>0<e>>>0&1}i=n;return e|0}function Xq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Yq(a){a=a|0;return 0}function Zq(a){a=a|0;return 0}function _q(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=i;b=$q(c,d,e,1114111,0)|0;i=a;return b|0}function $q(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=i;if((((g&4|0)!=0?(c-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0){k=(a[b+2>>0]|0)==-65?b+3|0:b}else{k=b}a:do{if(k>>>0<c>>>0&(e|0)!=0){g=c;j=1;b:while(1){m=a[k>>0]|0;l=m&255;do{if(m<<24>>24>-1){if(l>>>0>f>>>0){break a}k=k+1|0}else{if((m&255)<194){break a}if((m&255)<224){if((g-k|0)<2){break a}m=d[k+1>>0]|0;if((m&192|0)!=128){break a}if((m&63|l<<6&1984)>>>0>f>>>0){break a}k=k+2|0;break}if((m&255)<240){m=k;if((g-m|0)<3){break a}n=a[k+1>>0]|0;o=a[k+2>>0]|0;if((l|0)==237){if(!((n&-32)<<24>>24==-128)){f=23;break b}}else if((l|0)==224){if(!((n&-32)<<24>>24==-96)){f=21;break b}}else{if(!((n&-64)<<24>>24==-128)){f=25;break b}}m=o&255;if((m&192|0)!=128){break a}if(((n&255)<<6&4032|l<<12&61440|m&63)>>>0>f>>>0){break a}k=k+3|0;break}if(!((m&255)<245)){break a}o=k;if((g-o|0)<4){break a}m=a[k+1>>0]|0;p=a[k+2>>0]|0;n=a[k+3>>0]|0;if((l|0)==240){if(!((m+112<<24>>24&255)<48)){f=33;break b}}else if((l|0)==244){if(!((m&-16)<<24>>24==-128)){f=35;break b}}else{if(!((m&-64)<<24>>24==-128)){f=37;break b}}o=p&255;if((o&192|0)!=128){break a}n=n&255;if((n&192|0)!=128){break a}if(((m&255)<<12&258048|l<<18&1835008|o<<6&4032|n&63)>>>0>f>>>0){break a}k=k+4|0}}while(0);if(!(k>>>0<c>>>0&j>>>0<e>>>0)){break a}j=j+1|0}if((f|0)==21){p=m-b|0;i=h;return p|0}else if((f|0)==23){p=m-b|0;i=h;return p|0}else if((f|0)==25){p=m-b|0;i=h;return p|0}else if((f|0)==33){p=o-b|0;i=h;return p|0}else if((f|0)==35){p=o-b|0;i=h;return p|0}else if((f|0)==37){p=o-b|0;i=h;return p|0}}}while(0);p=k-b|0;i=h;return p|0}function ar(a){a=a|0;return 4}function br(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function cr(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function dr(a){a=a|0;var b=0;b=i;c[a>>2]=1083016;ck(a+12|0);Ys(a);i=b;return}function er(a){a=a|0;var b=0;b=i;c[a>>2]=1083016;ck(a+12|0);i=b;return}function fr(a){a=a|0;var b=0;b=i;c[a>>2]=1083056;ck(a+16|0);Ys(a);i=b;return}function gr(a){a=a|0;var b=0;b=i;c[a>>2]=1083056;ck(a+16|0);i=b;return}function hr(b){b=b|0;return a[b+8>>0]|0}function ir(a){a=a|0;return c[a+8>>2]|0}function jr(b){b=b|0;return a[b+9>>0]|0}function kr(a){a=a|0;return c[a+12>>2]|0}function lr(a,b){a=a|0;b=b|0;var c=0;c=i;$j(a,b+12|0);i=c;return}function mr(a,b){a=a|0;b=b|0;var c=0;c=i;$j(a,b+16|0);i=c;return}function nr(a,b){a=a|0;b=b|0;b=i;ak(a,1083088,4);i=b;return}function or(a,b){a=a|0;b=b|0;b=i;ok(a,1083096,ps(1083096)|0);i=b;return}function pr(a,b){a=a|0;b=b|0;b=i;ak(a,1083120,5);i=b;return}function qr(a,b){a=a|0;b=b|0;b=i;ok(a,1083128,ps(1083128)|0);i=b;return}function rr(b){b=b|0;var d=0;b=i;if((a[1083160]|0)!=0){d=c[270788]|0;i=b;return d|0}if((Ma(1083160)|0)==0){d=c[270788]|0;i=b;return d|0}if((a[1090360]|0)==0?(Ma(1090360)|0)!=0:0){Lt(1090192,0,168)|0;Sa(225,0,p|0)|0;Xa(1090360)}dk(1090192,1090368)|0;dk(1090204|0,1090376)|0;dk(1090216|0,1090384)|0;dk(1090228|0,1090392)|0;dk(1090240|0,1090408)|0;dk(1090252|0,1090424)|0;dk(1090264|0,1090432)|0;dk(1090276|0,1090448)|0;dk(1090288|0,1090456)|0;dk(1090300|0,1090464)|0;dk(1090312|0,1090472)|0;dk(1090324|0,1090480)|0;dk(1090336|0,1090488)|0;dk(1090348|0,1090496)|0;c[270788]=1090192;Xa(1083160);d=c[270788]|0;i=b;return d|0}function sr(b){b=b|0;var d=0;b=i;if((a[1083176]|0)!=0){d=c[270792]|0;i=b;return d|0}if((Ma(1083176)|0)==0){d=c[270792]|0;i=b;return d|0}if((a[1089824]|0)==0?(Ma(1089824)|0)!=0:0){Lt(1089656,0,168)|0;Sa(226,0,p|0)|0;Xa(1089824)}rk(1089656,1089832)|0;rk(1089668|0,1089864)|0;rk(1089680|0,1089896)|0;rk(1089692|0,1089928)|0;rk(1089704|0,1089968)|0;rk(1089716|0,1090008)|0;rk(1089728|0,1090040)|0;rk(1089740|0,1090080)|0;rk(1089752|0,1090096)|0;rk(1089764|0,1090112)|0;rk(1089776|0,1090128)|0;rk(1089788|0,1090144)|0;rk(1089800|0,1090160)|0;rk(1089812|0,1090176)|0;c[270792]=1089656;Xa(1083176);d=c[270792]|0;i=b;return d|0}function tr(b){b=b|0;var d=0;b=i;if((a[1083192]|0)!=0){d=c[270796]|0;i=b;return d|0}if((Ma(1083192)|0)==0){d=c[270796]|0;i=b;return d|0}if((a[1089432]|0)==0?(Ma(1089432)|0)!=0:0){Lt(1089144,0,288)|0;Sa(227,0,p|0)|0;Xa(1089432)}dk(1089144,1089440)|0;dk(1089156|0,1089448)|0;dk(1089168|0,1089464)|0;dk(1089180|0,1089472)|0;dk(1089192|0,1089480)|0;dk(1089204|0,1089488)|0;dk(1089216|0,1089496)|0;dk(1089228|0,1089504)|0;dk(1089240|0,1089512)|0;dk(1089252|0,1089528)|0;dk(1089264|0,1089536)|0;dk(1089276|0,1089552)|0;dk(1089288|0,1089568)|0;dk(1089300|0,1089576)|0;dk(1089312|0,1089584)|0;dk(1089324|0,1089592)|0;dk(1089336|0,1089480)|0;dk(1089348|0,1089600)|0;dk(1089360|0,1089608)|0;dk(1089372|0,1089616)|0;dk(1089384|0,1089624)|0;dk(1089396|0,1089632)|0;dk(1089408|0,1089640)|0;dk(1089420|0,1089648)|0;c[270796]=1089144;Xa(1083192);d=c[270796]|0;i=b;return d|0}function ur(b){b=b|0;var d=0;b=i;if((a[1083208]|0)!=0){d=c[270800]|0;i=b;return d|0}if((Ma(1083208)|0)==0){d=c[270800]|0;i=b;return d|0}if((a[1088592]|0)==0?(Ma(1088592)|0)!=0:0){Lt(1088304,0,288)|0;Sa(228,0,p|0)|0;Xa(1088592)}rk(1088304,1088600)|0;rk(1088316|0,1088632)|0;rk(1088328|0,1088672)|0;rk(1088340|0,1088696)|0;rk(1088352|0,1089016)|0;rk(1088364|0,1088720)|0;rk(1088376|0,1088744)|0;rk(1088388|0,1088768)|0;rk(1088400|0,1088800)|0;rk(1088412|0,1088840)|0;rk(1088424|0,1088872)|0;rk(1088436|0,1088912)|0;rk(1088448|0,1088952)|0;rk(1088460|0,1088968)|0;rk(1088472|0,1088984)|0;rk(1088484|0,1089e3)|0;rk(1088496|0,1089016)|0;rk(1088508|0,1089032)|0;rk(1088520|0,1089048)|0;rk(1088532|0,1089064)|0;rk(1088544|0,1089080)|0;rk(1088556|0,1089096)|0;rk(1088568|0,1089112)|0;rk(1088580|0,1089128)|0;c[270800]=1088304;Xa(1083208);d=c[270800]|0;i=b;return d|0}function vr(b){b=b|0;var d=0;b=i;if((a[1083224]|0)!=0){d=c[270804]|0;i=b;return d|0}if((Ma(1083224)|0)==0){d=c[270804]|0;i=b;return d|0}if((a[1088280]|0)==0?(Ma(1088280)|0)!=0:0){Lt(1087992,0,288)|0;Sa(229,0,p|0)|0;Xa(1088280)}dk(1087992,1088288)|0;dk(1088004|0,1088296)|0;c[270804]=1087992;Xa(1083224);d=c[270804]|0;i=b;return d|0}function wr(b){b=b|0;var d=0;b=i;if((a[1083240]|0)!=0){d=c[270808]|0;i=b;return d|0}if((Ma(1083240)|0)==0){d=c[270808]|0;i=b;return d|0}if((a[1087952]|0)==0?(Ma(1087952)|0)!=0:0){Lt(1087664,0,288)|0;Sa(230,0,p|0)|0;Xa(1087952)}rk(1087664,1087960)|0;rk(1087676|0,1087976)|0;c[270808]=1087664;Xa(1083240);d=c[270808]|0;i=b;return d|0}function xr(b){b=b|0;b=i;if((a[1083264]|0)==0?(Ma(1083264)|0)!=0:0){ak(1083248,1083272,8);Sa(205,1083248,p|0)|0;Xa(1083264)}i=b;return 1083248}function yr(b){b=b|0;b=i;if((a[1083304]|0)!=0){i=b;return 1083288}if((Ma(1083304)|0)==0){i=b;return 1083288}ok(1083288,1083312,ps(1083312)|0);Sa(231,1083288,p|0)|0;Xa(1083304);i=b;return 1083288}function zr(b){b=b|0;b=i;if((a[1083368]|0)==0?(Ma(1083368)|0)!=0:0){ak(1083352,1083376,8);Sa(205,1083352,p|0)|0;Xa(1083368)}i=b;return 1083352}function Ar(b){b=b|0;b=i;if((a[1083408]|0)!=0){i=b;return 1083392}if((Ma(1083408)|0)==0){i=b;return 1083392}ok(1083392,1083416,ps(1083416)|0);Sa(231,1083392,p|0)|0;Xa(1083408);i=b;return 1083392}function Br(b){b=b|0;b=i;if((a[1083472]|0)==0?(Ma(1083472)|0)!=0:0){ak(1083456,1083480,20);Sa(205,1083456,p|0)|0;Xa(1083472)}i=b;return 1083456}function Cr(b){b=b|0;b=i;if((a[1083520]|0)!=0){i=b;return 1083504}if((Ma(1083520)|0)==0){i=b;return 1083504}ok(1083504,1083528,ps(1083528)|0);Sa(231,1083504,p|0)|0;Xa(1083520);i=b;return 1083504}function Dr(b){b=b|0;b=i;if((a[1083632]|0)==0?(Ma(1083632)|0)!=0:0){ak(1083616,1083640,11);Sa(205,1083616,p|0)|0;Xa(1083632)}i=b;return 1083616}function Er(b){b=b|0;b=i;if((a[1083672]|0)!=0){i=b;return 1083656}if((Ma(1083672)|0)==0){i=b;return 1083656}ok(1083656,1083680,ps(1083680)|0);Sa(231,1083656,p|0)|0;Xa(1083672);i=b;return 1083656}function Fr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f;if((b|0)==(d|0)){c[e>>2]=4;k=0;i=f;return+k}j=Eb()|0;h=c[j>>2]|0;c[j>>2]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}k=+Bt(b,g,c[270684]|0);b=c[j>>2]|0;if((b|0)==0){c[j>>2]=h}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;k=0;i=f;return+k}if((b|0)!=34){i=f;return+k}c[e>>2]=4;i=f;return+k}function Gr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f;if((b|0)==(d|0)){c[e>>2]=4;k=0;i=f;return+k}j=Eb()|0;h=c[j>>2]|0;c[j>>2]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}k=+Bt(b,g,c[270684]|0);b=c[j>>2]|0;if((b|0)==0){c[j>>2]=h}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;k=0;i=f;return+k}if((b|0)!=34){i=f;return+k}c[e>>2]=4;i=f;return+k}function Hr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;g=f;if((b|0)==(d|0)){c[e>>2]=4;k=0;i=f;return+k}j=Eb()|0;h=c[j>>2]|0;c[j>>2]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}k=+Bt(b,g,c[270684]|0);b=c[j>>2]|0;if((b|0)==0){c[j>>2]=h}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;k=0;i=f;return+k}if((b|0)==34){c[e>>2]=4}i=f;return+k}function Ir(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;g=i;i=i+16|0;h=g;do{if((b|0)!=(d|0)){if((a[b>>0]|0)==45){c[e>>2]=4;e=0;b=0;break}k=Eb()|0;j=c[k>>2]|0;c[k>>2]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}b=Wr(b,h,f,c[270684]|0)|0;f=c[k>>2]|0;if((f|0)==0){c[k>>2]=j}if((c[h>>2]|0)!=(d|0)){c[e>>2]=4;e=0;b=0;break}if((f|0)==34){c[e>>2]=4;e=-1;b=-1}else{e=I}}else{c[e>>2]=4;e=0;b=0}}while(0);I=e;i=g;return b|0}function Jr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h;if((b|0)==(d|0)){c[e>>2]=4;l=0;i=h;return l|0}if((a[b>>0]|0)==45){c[e>>2]=4;l=0;i=h;return l|0}k=Eb()|0;j=c[k>>2]|0;c[k>>2]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}f=Wr(b,g,f,c[270684]|0)|0;b=I;l=c[k>>2]|0;if((l|0)==0){c[k>>2]=j}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;l=0;i=h;return l|0}if((l|0)==34|(b>>>0>0|(b|0)==0&f>>>0>4294967295)){c[e>>2]=4;l=-1;i=h;return l|0}else{l=f;i=h;return l|0}return 0}function Kr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h;if((b|0)==(d|0)){c[e>>2]=4;l=0;i=h;return l|0}if((a[b>>0]|0)==45){c[e>>2]=4;l=0;i=h;return l|0}k=Eb()|0;j=c[k>>2]|0;c[k>>2]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}f=Wr(b,g,f,c[270684]|0)|0;b=I;l=c[k>>2]|0;if((l|0)==0){c[k>>2]=j}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;l=0;i=h;return l|0}if((l|0)==34|(b>>>0>0|(b|0)==0&f>>>0>4294967295)){c[e>>2]=4;l=-1;i=h;return l|0}else{l=f;i=h;return l|0}return 0}function Lr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h;if((b|0)==(d|0)){c[e>>2]=4;l=0;i=h;return l|0}if((a[b>>0]|0)==45){c[e>>2]=4;l=0;i=h;return l|0}k=Eb()|0;j=c[k>>2]|0;c[k>>2]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}f=Wr(b,g,f,c[270684]|0)|0;b=I;l=c[k>>2]|0;if((l|0)==0){c[k>>2]=j}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;l=0;i=h;return l|0}if((l|0)==34|(b>>>0>0|(b|0)==0&f>>>0>65535)){c[e>>2]=4;l=-1;i=h;return l|0}else{l=f&65535;i=h;return l|0}return 0}function Mr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h;if((b|0)==(d|0)){c[e>>2]=4;f=0;l=0;I=f;i=h;return l|0}k=Eb()|0;j=c[k>>2]|0;c[k>>2]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}b=Xr(b,g,f,c[270684]|0)|0;l=I;f=c[k>>2]|0;if((f|0)==0){c[k>>2]=j}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;f=0;l=0;I=f;i=h;return l|0}if((f|0)==34){c[e>>2]=4;l=(l|0)>0|(l|0)==0&b>>>0>0;I=l?2147483647:-2147483648;i=h;return(l?-1:0)|0}else{f=l;l=b;I=f;i=h;return l|0}return 0}function Nr(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;h=i;i=i+16|0;g=h;if((b|0)==(d|0)){c[e>>2]=4;l=0;i=h;return l|0}k=Eb()|0;j=c[k>>2]|0;c[k>>2]=0;if((a[1082744]|0)==0?(Ma(1082744)|0)!=0:0){c[270684]=eb(2147483647,1082752,0)|0;Xa(1082744)}b=Xr(b,g,f,c[270684]|0)|0;l=I;f=c[k>>2]|0;if((f|0)==0){c[k>>2]=j}if((c[g>>2]|0)!=(d|0)){c[e>>2]=4;l=0;i=h;return l|0}do{if((f|0)==34){c[e>>2]=4;if((l|0)>0|(l|0)==0&b>>>0>0){l=2147483647;i=h;return l|0}}else{if((l|0)<-1|(l|0)==-1&b>>>0<2147483648){c[e>>2]=4;
+break}if((l|0)>0|(l|0)==0&b>>>0>2147483647){c[e>>2]=4;l=2147483647;i=h;return l|0}else{l=b;i=h;return l|0}}}while(0);l=-2147483648;i=h;return l|0}function Or(a){a=a|0;var b=0,e=0,f=0;b=i;f=a+4|0;e=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;f=f+4|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;a=(c[a>>2]|0)+(f>>1)|0;if((f&1|0)==0){f=e;dc[f&255](a);i=b;return}else{f=c[(c[a>>2]|0)+e>>2]|0;dc[f&255](a);i=b;return}}function Pr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;g=b+8|0;f=b+4|0;h=c[f>>2]|0;l=c[g>>2]|0;j=h;if(!(l-j>>2>>>0<d>>>0)){do{if((h|0)==0){g=0}else{c[h>>2]=0;g=c[f>>2]|0}h=g+4|0;c[f>>2]=h;d=d+-1|0}while((d|0)!=0);i=e;return}h=b+16|0;m=c[b>>2]|0;j=j-m>>2;n=j+d|0;if(n>>>0>1073741823){Ip(0)}l=l-m|0;if(l>>2>>>0<536870911){l=l>>1;l=l>>>0<n>>>0?n:l;if((l|0)!=0){m=b+128|0;if((a[m>>0]|0)==0&l>>>0<29){a[m>>0]=1;m=h}else{m=l;k=11}}else{l=0;m=0}}else{m=1073741823;k=11}if((k|0)==11){l=m;m=Vs(m<<2)|0}k=m+(j<<2)|0;do{if((k|0)==0){k=0}else{c[k>>2]=0}k=k+4|0;d=d+-1|0}while((d|0)!=0);d=c[b>>2]|0;o=(c[f>>2]|0)-d|0;n=m+(j-(o>>2)<<2)|0;Nt(n|0,d|0,o|0)|0;c[b>>2]=n;c[f>>2]=k;c[g>>2]=m+(l<<2);if((d|0)==0){i=e;return}if((h|0)==(d|0)){a[b+128>>0]=0;i=e;return}else{Ys(d);i=e;return}}function Qr(a){a=a|0;a=i;qk(1087940|0);qk(1087928|0);qk(1087916|0);qk(1087904|0);qk(1087892|0);qk(1087880|0);qk(1087868|0);qk(1087856|0);qk(1087844|0);qk(1087832|0);qk(1087820|0);qk(1087808|0);qk(1087796|0);qk(1087784|0);qk(1087772|0);qk(1087760|0);qk(1087748|0);qk(1087736|0);qk(1087724|0);qk(1087712|0);qk(1087700|0);qk(1087688|0);qk(1087676|0);qk(1087664);i=a;return}function Rr(a){a=a|0;a=i;ck(1088268|0);ck(1088256|0);ck(1088244|0);ck(1088232|0);ck(1088220|0);ck(1088208|0);ck(1088196|0);ck(1088184|0);ck(1088172|0);ck(1088160|0);ck(1088148|0);ck(1088136|0);ck(1088124|0);ck(1088112|0);ck(1088100|0);ck(1088088|0);ck(1088076|0);ck(1088064|0);ck(1088052|0);ck(1088040|0);ck(1088028|0);ck(1088016|0);ck(1088004|0);ck(1087992);i=a;return}function Sr(a){a=a|0;a=i;qk(1088580|0);qk(1088568|0);qk(1088556|0);qk(1088544|0);qk(1088532|0);qk(1088520|0);qk(1088508|0);qk(1088496|0);qk(1088484|0);qk(1088472|0);qk(1088460|0);qk(1088448|0);qk(1088436|0);qk(1088424|0);qk(1088412|0);qk(1088400|0);qk(1088388|0);qk(1088376|0);qk(1088364|0);qk(1088352|0);qk(1088340|0);qk(1088328|0);qk(1088316|0);qk(1088304);i=a;return}function Tr(a){a=a|0;a=i;ck(1089420|0);ck(1089408|0);ck(1089396|0);ck(1089384|0);ck(1089372|0);ck(1089360|0);ck(1089348|0);ck(1089336|0);ck(1089324|0);ck(1089312|0);ck(1089300|0);ck(1089288|0);ck(1089276|0);ck(1089264|0);ck(1089252|0);ck(1089240|0);ck(1089228|0);ck(1089216|0);ck(1089204|0);ck(1089192|0);ck(1089180|0);ck(1089168|0);ck(1089156|0);ck(1089144);i=a;return}function Ur(a){a=a|0;a=i;qk(1089812|0);qk(1089800|0);qk(1089788|0);qk(1089776|0);qk(1089764|0);qk(1089752|0);qk(1089740|0);qk(1089728|0);qk(1089716|0);qk(1089704|0);qk(1089692|0);qk(1089680|0);qk(1089668|0);qk(1089656);i=a;return}function Vr(a){a=a|0;a=i;ck(1090348|0);ck(1090336|0);ck(1090324|0);ck(1090312|0);ck(1090300|0);ck(1090288|0);ck(1090276|0);ck(1090264|0);ck(1090252|0);ck(1090240|0);ck(1090228|0);ck(1090216|0);ck(1090204|0);ck(1090192);i=a;return}function Wr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=i;d=Ct(a,b,c)|0;i=e;return d|0}function Xr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=i;d=Dt(a,b,c)|0;i=e;return d|0}function Yr(a){a=a|0;return(a+-97|0)>>>0<26|0}function Zr(a){a=a|0;if((a+-48|0)>>>0<10){a=1}else{a=((a|32)+-97|0)>>>0<6}return a&1|0}function _r(a){a=a|0;var b=0,c=0;c=i;b=(Yr(a)|0)==0;i=c;return(b?a:a&95)|0}function $r(a,b){a=a|0;b=b|0;return(a+-48|0)>>>0<10|0}function as(a,b){a=a|0;b=b|0;var c=0;c=i;b=Zr(a)|0;i=c;return b|0}function bs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=i;a=cs(0,a,b,(c|0)!=0?c:1090712)|0;i=d;return a|0}function cs(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;h=g;c[h>>2]=b;f=(f|0)==0?1090720:f;j=c[f>>2]|0;a:do{if((d|0)==0){if((j|0)==0){k=0;i=g;return k|0}}else{if((b|0)==0){c[h>>2]=h}else{h=b}if((e|0)==0){k=-2;i=g;return k|0}do{if((j|0)==0){b=a[d>>0]|0;j=b&255;if(b<<24>>24>-1){c[h>>2]=j;k=b<<24>>24!=0&1;i=g;return k|0}else{j=j+-194|0;if(j>>>0>50){break a}b=e+-1|0;j=c[1090504+(j<<2)>>2]|0;d=d+1|0;break}}else{b=e}}while(0);b:do{if((b|0)!=0){k=a[d>>0]|0;l=(k&255)>>>3;if((l+-16|l+(j>>26))>>>0>7){break a}while(1){d=d+1|0;j=(k&255)+-128|j<<6;b=b+-1|0;if((j|0)>=0){break}if((b|0)==0){break b}k=a[d>>0]|0;if(((k&255)+-128|0)>>>0>63){break a}}c[f>>2]=0;c[h>>2]=j;l=e-b|0;i=g;return l|0}}while(0);c[f>>2]=j;l=-2;i=g;return l|0}}while(0);c[f>>2]=0;c[(Eb()|0)>>2]=84;l=-1;i=g;return l|0}function ds(a){a=a|0;if((a|0)==0){a=1}else{a=(c[a>>2]|0)==0}return a&1|0}function es(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+1040|0;k=h+8|0;g=h;m=c[b>>2]|0;c[g>>2]=m;j=(a|0)!=0;e=j?e:256;l=j?a:k;a:do{if((m|0)==0|(e|0)==0){k=d;a=0}else{a=0;while(1){n=d>>>2;o=n>>>0>=e>>>0;if(!(o|d>>>0>131)){k=d;break a}m=o?e:n;d=d-m|0;m=fs(l,g,m,f)|0;if((m|0)==-1){break}if((l|0)==(k|0)){l=k}else{e=e-m|0;l=l+(m<<2)|0}a=m+a|0;m=c[g>>2]|0;if((m|0)==0|(e|0)==0){k=d;break a}}k=d;e=0;m=c[g>>2]|0;a=-1}}while(0);b:do{if((m|0)!=0?!((e|0)==0|(k|0)==0):0){while(1){d=cs(l,m,k,f)|0;if((d+2|0)>>>0<3){break}m=(c[g>>2]|0)+d|0;c[g>>2]=m;e=e+-1|0;a=a+1|0;if((e|0)==0|(k|0)==(d|0)){break b}else{k=k-d|0;l=l+4|0}}if((d|0)==0){c[g>>2]=0;break}else if((d|0)==-1){a=-1;break}else{c[f>>2]=0;break}}}while(0);if(!j){i=h;return a|0}c[b>>2]=c[g>>2];i=h;return a|0}function fs(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;k=c[e>>2]|0;if((g|0)!=0?(l=c[g>>2]|0,(l|0)!=0):0){if((b|0)==0){j=f;g=16}else{c[g>>2]=0;j=f;g=36}}else{if((b|0)==0){j=f;g=7}else{j=f;g=6}}a:while(1){if((g|0)==6){if((j|0)==0){g=53;break}while(1){m=a[k>>0]|0;do{if(((m&255)+-1|0)>>>0<127?(k&3|0)==0&j>>>0>3:0){while(1){l=c[k>>2]|0;if(((l+-16843009|l)&-2139062144|0)!=0){g=30;break}c[b>>2]=l&255;c[b+4>>2]=d[k+1>>0]|0;c[b+8>>2]=d[k+2>>0]|0;l=k+4|0;m=b+16|0;c[b+12>>2]=d[k+3>>0]|0;j=j+-4|0;if(j>>>0>3){b=m;k=l}else{g=31;break}}if((g|0)==30){m=l&255;break}else if((g|0)==31){b=m;m=a[l>>0]|0;k=l;break}}}while(0);g=m&255;if(!((g+-1|0)>>>0<127)){break}c[b>>2]=g;j=j+-1|0;if((j|0)==0){g=53;break a}else{b=b+4|0;k=k+1|0}}g=g+-194|0;if(g>>>0>50){g=47;break}l=c[1090504+(g<<2)>>2]|0;k=k+1|0;g=36;continue}else if((g|0)==7){g=a[k>>0]|0;if(((g&255)+-1|0)>>>0<127?(k&3|0)==0:0){g=c[k>>2]|0;if(((g+-16843009|g)&-2139062144|0)==0){do{k=k+4|0;j=j+-4|0;g=c[k>>2]|0}while(((g+-16843009|g)&-2139062144|0)==0)}g=g&255}g=g&255;if((g+-1|0)>>>0<127){j=j+-1|0;k=k+1|0;g=7;continue}g=g+-194|0;if(g>>>0>50){g=47;break}l=c[1090504+(g<<2)>>2]|0;k=k+1|0;g=16;continue}else if((g|0)==16){m=(d[k>>0]|0)>>>3;if((m+-16|m+(l>>26))>>>0>7){g=17;break}g=k+1|0;if((l&33554432|0)!=0){if(((d[g>>0]|0)+-128|0)>>>0>63){g=20;break}g=k+2|0;if((l&524288|0)==0){k=g}else{if(((d[g>>0]|0)+-128|0)>>>0>63){g=23;break}k=k+3|0}}else{k=g}j=j+-1|0;g=7;continue}else if((g|0)==36){m=d[k>>0]|0;g=m>>>3;if((g+-16|g+(l>>26))>>>0>7){g=37;break}g=k+1|0;l=m+-128|l<<6;if((l|0)<0){m=(d[g>>0]|0)+-128|0;if(m>>>0>63){g=40;break}g=k+2|0;l=m|l<<6;if((l|0)<0){g=(d[g>>0]|0)+-128|0;if(g>>>0>63){g=43;break}l=g|l<<6;k=k+3|0}else{k=g}}else{k=g}c[b>>2]=l;b=b+4|0;j=j+-1|0;g=6;continue}}if((g|0)==17){k=k+-1|0;g=46}else if((g|0)==20){k=k+-1|0;g=46}else if((g|0)==23){k=k+-1|0;g=46}else if((g|0)==37){k=k+-1|0;g=46}else if((g|0)==40){k=k+-1|0;g=46}else if((g|0)==43){k=k+-1|0;g=46}else if((g|0)==53){i=h;return f|0}if((g|0)==46){if((l|0)==0){g=47}}if((g|0)==47){if((a[k>>0]|0)==0){if((b|0)!=0){c[b>>2]=0;c[e>>2]=0}m=f-j|0;i=h;return m|0}}c[(Eb()|0)>>2]=84;if((b|0)==0){m=-1;i=h;return m|0}c[e>>2]=k;m=-1;i=h;return m|0}function gs(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0;g=i;i=i+16|0;h=g;c[h>>2]=b;if((e|0)==0){j=0;i=g;return j|0}do{if((f|0)!=0){if((b|0)==0){c[h>>2]=h}else{h=b}b=a[e>>0]|0;j=b&255;if(b<<24>>24>-1){c[h>>2]=j;j=b<<24>>24!=0&1;i=g;return j|0}j=j+-194|0;if(!(j>>>0>50)){b=e+1|0;j=c[1090504+(j<<2)>>2]|0;if(f>>>0<4?(j&-2147483648>>>((f*6|0)+-6|0)|0)!=0:0){break}f=d[b>>0]|0;b=f>>>3;if(!((b+-16|b+(j>>26))>>>0>7)){f=f+-128|j<<6;if((f|0)>=0){c[h>>2]=f;j=2;i=g;return j|0}b=(d[e+2>>0]|0)+-128|0;if(!(b>>>0>63)){f=b|f<<6;if((f|0)>=0){c[h>>2]=f;j=3;i=g;return j|0}e=(d[e+3>>0]|0)+-128|0;if(!(e>>>0>63)){c[h>>2]=e|f<<6;j=4;i=g;return j|0}}}}}}while(0);c[(Eb()|0)>>2]=84;j=-1;i=g;return j|0}function hs(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;h=i;i=i+272|0;j=h+8|0;g=h;l=c[b>>2]|0;c[g>>2]=l;f=(a|0)!=0;k=f?e:256;e=f?a:j;a:do{if((l|0)==0|(k|0)==0){j=d;d=l;a=0}else{a=0;while(1){m=d>>>0>=k>>>0;if(!(m|d>>>0>32)){j=d;d=l;break a}l=m?k:d;d=d-l|0;l=is(e,g,l,0)|0;if((l|0)==-1){break}if((e|0)==(j|0)){e=j}else{k=k-l|0;e=e+l|0}a=l+a|0;l=c[g>>2]|0;if((l|0)==0|(k|0)==0){j=d;d=l;break a}}j=d;k=0;d=c[g>>2]|0;a=-1}}while(0);b:do{if((d|0)!=0?!((k|0)==0|(j|0)==0):0){while(1){l=qt(e,c[d>>2]|0,0)|0;if((l+1|0)>>>0<2){break}d=(c[g>>2]|0)+4|0;c[g>>2]=d;j=j+-1|0;a=a+1|0;if((k|0)==(l|0)|(j|0)==0){break b}else{k=k-l|0;e=e+l|0}}if((l|0)==0){c[g>>2]=0}else{a=-1}}}while(0);if(!f){i=h;return a|0}c[b>>2]=c[g>>2];i=h;return a|0}function is(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+16|0;h=f;if((b|0)==0){k=c[d>>2]|0;l=c[k>>2]|0;if((l|0)==0){m=0;i=f;return m|0}else{j=0}while(1){if(l>>>0>127){l=qt(h,l,0)|0;if((l|0)==-1){j=-1;l=26;break}}else{l=1}j=l+j|0;k=k+4|0;l=c[k>>2]|0;if((l|0)==0){l=26;break}}if((l|0)==26){i=f;return j|0}}a:do{if(e>>>0>3){k=e;l=c[d>>2]|0;while(1){m=c[l>>2]|0;if((m|0)==0){break a}if(m>>>0>127){m=qt(b,m,0)|0;if((m|0)==-1){j=-1;break}b=b+m|0;k=k-m|0}else{a[b>>0]=m;b=b+1|0;k=k+-1|0;l=c[d>>2]|0}l=l+4|0;c[d>>2]=l;if(!(k>>>0>3)){break a}}i=f;return j|0}else{k=e}}while(0);b:do{if((k|0)!=0){l=c[d>>2]|0;while(1){m=c[l>>2]|0;if((m|0)==0){l=24;break}if(m>>>0>127){m=qt(h,m,0)|0;if((m|0)==-1){j=-1;l=26;break}if(m>>>0>k>>>0){l=20;break}qt(b,c[l>>2]|0,0)|0;b=b+m|0;k=k-m|0}else{a[b>>0]=m;b=b+1|0;k=k+-1|0;l=c[d>>2]|0}l=l+4|0;c[d>>2]=l;if((k|0)==0){g=0;break b}}if((l|0)==20){m=e-k|0;i=f;return m|0}else if((l|0)==24){a[b>>0]=0;g=k;break}else if((l|0)==26){i=f;return j|0}}else{g=0}}while(0);c[d>>2]=0;m=e-g|0;i=f;return m|0}function js(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;f=a+84|0;g=c[f>>2]|0;h=d+256|0;j=Et(g,0,h)|0;if((j|0)!=0){h=j-g|0}j=h>>>0<d>>>0?h:d;Nt(b|0,g|0,j|0)|0;c[a+4>>2]=g+j;h=g+h|0;c[a+8>>2]=h;c[f>>2]=h;i=e;return j|0}function ks(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=ns(a,b,f)|0;i=e;return d|0}function ls(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;j=e;f=Ps(240)|0;do{if((f|0)!=0){c[j>>2]=c[d>>2];j=yt(f,240,b,j)|0;if(j>>>0<240){h=Ss(f,j+1|0)|0;c[a>>2]=(h|0)!=0?h:f;break}Qs(f);if((j|0)>=0?(h=j+1|0,g=Ps(h)|0,c[a>>2]=g,(g|0)!=0):0){j=yt(g,h,b,d)|0}else{j=-1}}else{j=-1}}while(0);i=e;return j|0}function ms(e,f,j){e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0;l=i;i=i+304|0;p=l+16|0;x=l+8|0;o=l+33|0;n=l;s=l+32|0;B=a[f>>0]|0;if(B<<24>>24==0){N=0;i=l;return N|0}v=e+4|0;w=e+100|0;u=e+108|0;t=e+8|0;z=o+10|0;y=o+33|0;q=x+4|0;r=o+46|0;A=o+94|0;m=0;D=0;F=0;E=0;a:while(1){b:do{if((dt(B&255)|0)==0){B=(a[f>>0]|0)==37;c:do{if(B){C=f+1|0;G=a[C>>0]|0;do{if(G<<24>>24==42){B=0;f=f+2|0}else if(G<<24>>24==37){break c}else{B=(G&255)+-48|0;if(B>>>0<10?(a[f+2>>0]|0)==36:0){c[p>>2]=c[j>>2];C=B;while(1){N=c[p>>2]|0;B=c[N>>2]|0;c[p>>2]=N+4;if(C>>>0>1){C=C+-1|0}else{break}}f=f+3|0;break}f=c[j>>2]|0;B=c[f>>2]|0;c[j>>2]=f+4;f=C}}while(0);H=a[f>>0]|0;C=H&255;if((C+-48|0)>>>0<10){G=0;do{G=(G*10|0)+-48+C|0;f=f+1|0;H=a[f>>0]|0;C=H&255}while((C+-48|0)>>>0<10)}else{G=0}if(H<<24>>24==109){J=f+1|0;H=a[J>>0]|0;C=(B|0)!=0&1}else{C=0;J=f}f=J+1|0;switch(H&255|0){case 116:case 122:{H=1;break};case 108:{H=(a[f>>0]|0)==108;f=H?J+2|0:f;H=H?3:1;break};case 104:{H=(a[f>>0]|0)==104;f=H?J+2|0:f;H=H?-2:-1;break};case 106:{H=3;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:{f=J;H=0;break};case 76:{H=2;break};default:{k=162;break a}}K=d[f>>0]|0;J=(K&47|0)==3;K=J?K|32:K;J=J?1:H;if((K|0)==99){G=(G|0)<1?1:G}else if((K|0)==110){if((B|0)==0){break b}switch(J|0){case 3:{N=B;c[N>>2]=D;c[N+4>>2]=((D|0)<0)<<31>>31;break b};case 1:{c[B>>2]=D;break b};case-1:{b[B>>1]=D;break b};case-2:{a[B>>0]=D;break b};case 0:{c[B>>2]=D;break b};default:{break b}}}else if((K|0)!=91){jt(e,0);do{H=c[v>>2]|0;if(H>>>0<(c[w>>2]|0)>>>0){c[v>>2]=H+1;H=d[H>>0]|0}else{H=kt(e)|0}}while((dt(H)|0)!=0);H=c[v>>2]|0;if((c[w>>2]|0)!=0){H=H+-1|0;c[v>>2]=H}D=(c[u>>2]|0)+D+H-(c[t>>2]|0)|0}jt(e,G);H=c[v>>2]|0;L=c[w>>2]|0;if(H>>>0<L>>>0){c[v>>2]=H+1}else{if((kt(e)|0)<0){k=162;break a}L=c[w>>2]|0}if((L|0)!=0){c[v>>2]=(c[v>>2]|0)+-1}d:do{switch(K|0){case 91:case 99:case 115:{H=(K|0)==99;e:do{if((K&239|0)==99){Lt(o|0,-1,257)|0;a[o>>0]=0;if((K|0)==115){a[y>>0]=0;a[z+0>>0]=0;a[z+1>>0]=0;a[z+2>>0]=0;a[z+3>>0]=0;a[z+4>>0]=0}}else{N=f+1|0;M=(a[N>>0]|0)==94;K=M&1;f=M?f+2|0:N;Lt(o|0,M&1|0,257)|0;a[o>>0]=0;M=a[f>>0]|0;if(M<<24>>24==93){K=(K^1)&255;a[A>>0]=K;f=f+1|0}else if(M<<24>>24==45){K=(K^1)&255;a[r>>0]=K;f=f+1|0}else{K=(K^1)&255}while(1){N=a[f>>0]|0;if(N<<24>>24==45){M=f+1|0;N=a[M>>0]|0;if(!(N<<24>>24==93|N<<24>>24==0)){f=a[f+-1>>0]|0;if((f&255)<(N&255)){f=f&255;do{f=f+1|0;a[o+f>>0]=K;N=a[M>>0]|0}while((f|0)<(N&255|0));f=M}else{f=M}}else{N=45}}else if(N<<24>>24==93){break e}else if(N<<24>>24==0){k=162;break a}a[o+((N&255)+1)>>0]=K;f=f+1|0}}}while(0);M=H?G+1|0:31;J=(J|0)==1;K=(C|0)!=0;f:do{if(J){if(K){E=Ps(M<<2)|0;if((E|0)==0){F=0;k=162;break a}}else{E=B}c[x>>2]=0;c[q>>2]=0;L=0;F=M;g:while(1){if((E|0)==0){while(1){M=c[v>>2]|0;if(M>>>0<(c[w>>2]|0)>>>0){c[v>>2]=M+1;M=d[M>>0]|0}else{M=kt(e)|0}if((a[o+(M+1)>>0]|0)==0){E=0;break g}a[s>>0]=M;M=cs(n,s,1,x)|0;if((M|0)==-2){continue}else if((M|0)==-1){F=0;E=0;k=162;break a}if(K&(L|0)==(F|0)){break}}}else{if(!K){k=98;break}while(1){while(1){M=c[v>>2]|0;if(M>>>0<(c[w>>2]|0)>>>0){c[v>>2]=M+1;M=d[M>>0]|0}else{M=kt(e)|0}if((a[o+(M+1)>>0]|0)==0){break g}a[s>>0]=M;M=cs(n,s,1,x)|0;if((M|0)==-1){F=0;k=162;break a}else if(!((M|0)==-2)){break}}c[E+(L<<2)>>2]=c[n>>2];L=L+1|0;if((L|0)==(F|0)){L=F;break}}}F=F<<1|1;M=Ss(E,F<<2)|0;if((M|0)==0){F=0;k=162;break a}E=M}h:do{if((k|0)==98){while(1){k=0;while(1){F=c[v>>2]|0;if(F>>>0<(c[w>>2]|0)>>>0){c[v>>2]=F+1;F=d[F>>0]|0}else{F=kt(e)|0}if((a[o+(F+1)>>0]|0)==0){break h}a[s>>0]=F;F=cs(n,s,1,x)|0;if((F|0)==-1){C=0;F=0;k=162;break a}else if(!((F|0)==-2)){break}}c[E+(L<<2)>>2]=c[n>>2];L=L+1|0;k=98}}}while(0);if((ds(x)|0)==0){F=0;k=162;break a}else{F=0}}else{if(K){F=Ps(M)|0;if((F|0)==0){F=0;E=0;k=162;break a}else{L=0;E=M}while(1){do{M=c[v>>2]|0;if(M>>>0<(c[w>>2]|0)>>>0){c[v>>2]=M+1;M=d[M>>0]|0}else{M=kt(e)|0}if((a[o+(M+1)>>0]|0)==0){E=0;break f}a[F+L>>0]=M;L=L+1|0}while((L|0)!=(E|0));M=E<<1|1;L=Ss(F,M)|0;if((L|0)==0){E=0;k=162;break a}else{N=E;E=M;F=L;L=N}}}if((B|0)==0){while(1){E=c[v>>2]|0;if(E>>>0<L>>>0){c[v>>2]=E+1;E=d[E>>0]|0}else{E=kt(e)|0}if((a[o+(E+1)>>0]|0)==0){L=0;F=0;E=0;break f}L=c[w>>2]|0}}else{E=0;while(1){F=c[v>>2]|0;if(F>>>0<L>>>0){c[v>>2]=F+1;F=d[F>>0]|0}else{F=kt(e)|0}if((a[o+(F+1)>>0]|0)==0){L=E;F=B;E=0;break f}a[B+E>>0]=F;L=c[w>>2]|0;E=E+1|0}}}}while(0);M=c[v>>2]|0;if((c[w>>2]|0)!=0){M=M+-1|0;c[v>>2]=M}M=M-(c[t>>2]|0)+(c[u>>2]|0)|0;if((M|0)==0){break a}if(!((M|0)==(G|0)|H^1)){break a}do{if(K){if(J){c[B>>2]=E;break}else{c[B>>2]=F;break}}}while(0);if(!H){if((E|0)!=0){c[E+(L<<2)>>2]=0}if((F|0)==0){F=0}else{a[F+L>>0]=0}}break};case 105:{G=0;k=144;break};case 120:case 88:case 112:{G=16;k=144;break};case 111:{G=8;k=144;break};case 117:case 100:{G=10;k=144;break};case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{O=+ht(e,J,0);if((c[u>>2]|0)==((c[t>>2]|0)-(c[v>>2]|0)|0)){break a}if((B|0)!=0){if((J|0)==0){g[B>>2]=O;break d}else if((J|0)==1){h[B>>3]=O;break d}else if((J|0)==2){h[B>>3]=O;break d}else{break d}}break};default:{}}}while(0);i:do{if((k|0)==144){k=0;G=gt(e,G,0,-1,-1)|0;if((c[u>>2]|0)==((c[t>>2]|0)-(c[v>>2]|0)|0)){break a}C=(B|0)==0;if(!((K|0)!=112|C)){c[B>>2]=G;break}if(!C){switch(J|0){case-2:{a[B>>0]=G;break i};case-1:{b[B>>1]=G;break i};case 0:{c[B>>2]=G;break i};case 1:{c[B>>2]=G;break i};case 3:{N=B;c[N>>2]=G;c[N+4>>2]=I;break i};default:{break i}}}}}while(0);m=((B|0)!=0&1)+m|0;D=(c[u>>2]|0)+D+(c[v>>2]|0)-(c[t>>2]|0)|0;break b}}while(0);f=f+(B&1)|0;jt(e,0);B=c[v>>2]|0;if(B>>>0<(c[w>>2]|0)>>>0){c[v>>2]=B+1;B=d[B>>0]|0}else{B=kt(e)|0}if((B|0)!=(d[f>>0]|0)){k=19;break a}D=D+1|0}else{while(1){B=f+1|0;if((dt(d[B>>0]|0)|0)==0){break}else{f=B}}jt(e,0);do{B=c[v>>2]|0;if(B>>>0<(c[w>>2]|0)>>>0){c[v>>2]=B+1;B=d[B>>0]|0}else{B=kt(e)|0}}while((dt(B)|0)!=0);B=c[v>>2]|0;if((c[w>>2]|0)!=0){B=B+-1|0;c[v>>2]=B}D=(c[u>>2]|0)+D+B-(c[t>>2]|0)|0}}while(0);f=f+1|0;B=a[f>>0]|0;if(B<<24>>24==0){k=165;break}}if((k|0)==165){i=l;return m|0}if((k|0)==19){if((c[w>>2]|0)!=0){c[v>>2]=(c[v>>2]|0)+-1}if((B|0)<0){C=0;k=162}else{N=m;i=l;return N|0}}if((k|0)==162){m=(((m|0)==0)<<31>>31)+m|0}if((C|0)==0){N=m;i=l;return N|0}Qs(F);Qs(E);N=m;i=l;return N|0}function ns(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+112|0;f=g;h=f+0|0;e=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(e|0));c[f+32>>2]=27;c[f+44>>2]=a;c[f+76>>2]=-1;c[f+84>>2]=a;d=ms(f,b,d)|0;i=g;return d|0}function os(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=i;a=js(a,b,c)|0;i=d;return a|0}function ps(a){a=a|0;var b=0,d=0;b=i;d=a;while(1){if((c[d>>2]|0)==0){break}else{d=d+4|0}}i=b;return d-a>>2|0}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;if((d|0)==0){i=e;return a|0}else{f=a}while(1){d=d+-1|0;c[f>>2]=c[b>>2];if((d|0)==0){break}else{b=b+4|0;f=f+4|0}}i=e;return a|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;f=(d|0)==0;if(a-b>>2>>>0<d>>>0){if(!f){do{d=d+-1|0;c[a+(d<<2)>>2]=c[b+(d<<2)>>2]}while((d|0)!=0)}}else{if(!f){f=a;while(1){d=d+-1|0;c[f>>2]=c[b>>2];if((d|0)==0){break}else{b=b+4|0;f=f+4|0}}}}i=e;return a|0}function ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;if((d|0)!=0){f=a;while(1){d=d+-1|0;c[f>>2]=b;if((d|0)==0){break}else{f=f+4|0}}}i=e;return a|0}function ts(a){a=a|0;return}function us(a){a=a|0;c[a>>2]=1090736;return}function vs(a){a=a|0;var b=0;b=i;Gb(a|0);Ys(a);i=b;return}function ws(a){a=a|0;var b=0;b=i;Gb(a|0);i=b;return}function xs(a){a=a|0;return 1090752}function ys(a){a=a|0;return}function zs(a){a=a|0;return}function As(a){a=a|0;return}function Bs(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Cs(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Ds(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Es(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+64|0;f=e;if((a|0)==(b|0)){h=1;i=e;return h|0}if((b|0)==0){h=0;i=e;return h|0}b=Is(b,1090864,1090920,0)|0;if((b|0)==0){h=0;i=e;return h|0}h=f+0|0;g=h+56|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(g|0));c[f>>2]=b;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;rc[c[(c[b>>2]|0)+28>>2]&15](b,f,c[d>>2]|0,1);if((c[f+24>>2]|0)!=1){h=0;i=e;return h|0}c[d>>2]=c[f+16>>2];h=1;i=e;return h|0}function Fs(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;if((c[d+8>>2]|0)!=(b|0)){i=g;return}b=d+16|0;h=c[b>>2]|0;if((h|0)==0){c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1;i=g;return}if((h|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;i=g;return}e=d+24|0;if((c[e>>2]|0)!=2){i=g;return}c[e>>2]=f;i=g;return}function Gs(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=i;if((b|0)!=(c[d+8>>2]|0)){h=c[b+8>>2]|0;rc[c[(c[h>>2]|0)+28>>2]&15](h,d,e,f);i=g;return}b=d+16|0;h=c[b>>2]|0;if((h|0)==0){c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1;i=g;return}if((h|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;i=g;return}e=d+24|0;if((c[e>>2]|0)!=2){i=g;return}c[e>>2]=f;i=g;return}function Hs(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;if((b|0)==(c[d+8>>2]|0)){b=d+16|0;h=c[b>>2]|0;if((h|0)==0){c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1;i=g;return}if((h|0)!=(e|0)){l=d+36|0;c[l>>2]=(c[l>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;i=g;return}e=d+24|0;if((c[e>>2]|0)!=2){i=g;return}c[e>>2]=f;i=g;return}j=c[b+12>>2]|0;h=b+(j<<3)+16|0;k=c[b+20>>2]|0;l=k>>8;if((k&1|0)!=0){l=c[(c[e>>2]|0)+l>>2]|0}m=c[b+16>>2]|0;rc[c[(c[m>>2]|0)+28>>2]&15](m,d,e+l|0,(k&2|0)!=0?f:2);if((j|0)<=1){i=g;return}j=d+54|0;k=b+24|0;while(1){b=c[k+4>>2]|0;l=b>>8;if((b&1|0)!=0){l=c[(c[e>>2]|0)+l>>2]|0}m=c[k>>2]|0;rc[c[(c[m>>2]|0)+28>>2]&15](m,d,e+l|0,(b&2|0)!=0?f:2);if((a[j>>0]|0)!=0){f=16;break}k=k+8|0;if(!(k>>>0<h>>>0)){f=16;break}}if((f|0)==16){i=g;return}}function Is(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=i;i=i+64|0;j=h;k=c[d>>2]|0;l=d+(c[k+-8>>2]|0)|0;k=c[k+-4>>2]|0;c[j>>2]=f;c[j+4>>2]=d;c[j+8>>2]=e;c[j+12>>2]=g;n=j+16|0;o=j+20|0;e=j+24|0;m=j+28|0;g=j+32|0;d=j+40|0;p=(k|0)==(f|0);q=n+0|0;f=q+36|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(f|0));b[n+36>>1]=0;a[n+38>>0]=0;if(p){c[j+48>>2]=1;oc[c[(c[k>>2]|0)+20>>2]&31](k,j,l,l,1,0);q=(c[e>>2]|0)==1?l:0;i=h;return q|0}cc[c[(c[k>>2]|0)+24>>2]&3](k,j,l,1,0);j=c[j+36>>2]|0;if((j|0)==0){if((c[d>>2]|0)!=1){q=0;i=h;return q|0}if((c[m>>2]|0)!=1){q=0;i=h;return q|0}q=(c[g>>2]|0)==1?c[o>>2]|0:0;i=h;return q|0}else if((j|0)==1){if((c[e>>2]|0)!=1){if((c[d>>2]|0)!=0){q=0;i=h;return q|0}if((c[m>>2]|0)!=1){q=0;i=h;return q|0}if((c[g>>2]|0)!=1){q=0;i=h;return q|0}}q=c[n>>2]|0;i=h;return q|0}else{q=0;i=h;return q|0}return 0}function Js(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;h=i;if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)!=(e|0)){i=h;return}e=d+28|0;if((c[e>>2]|0)==1){i=h;return}c[e>>2]=f;i=h;return}if((b|0)==(c[d>>2]|0)){if((c[d+16>>2]|0)!=(e|0)?(l=d+20|0,(c[l>>2]|0)!=(e|0)):0){c[d+32>>2]=f;k=d+44|0;if((c[k>>2]|0)==4){i=h;return}w=c[b+12>>2]|0;p=b+(w<<3)+16|0;a:do{if((w|0)>0){n=d+52|0;q=d+53|0;o=d+54|0;t=b+8|0;r=d+24|0;u=0;s=0;b=b+16|0;b:do{a[n>>0]=0;a[q>>0]=0;v=c[b+4>>2]|0;w=v>>8;if((v&1|0)!=0){w=c[(c[e>>2]|0)+w>>2]|0}x=c[b>>2]|0;oc[c[(c[x>>2]|0)+20>>2]&31](x,d,e,e+w|0,2-(v>>>1&1)|0,g);if((a[o>>0]|0)!=0){break}do{if((a[q>>0]|0)!=0){if((a[n>>0]|0)==0){if((c[t>>2]&1|0)==0){s=1;break b}else{s=1;break}}if((c[r>>2]|0)==1){b=27;break a}if((c[t>>2]&2|0)==0){b=27;break a}else{u=1;s=1}}}while(0);b=b+8|0}while(b>>>0<p>>>0);if(u){j=s;b=26}else{m=s;b=23}}else{m=0;b=23}}while(0);if((b|0)==23){c[l>>2]=e;x=d+40|0;c[x>>2]=(c[x>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(m){b=27}else{b=28}}else{j=m;b=26}}if((b|0)==26){if(j){b=27}else{b=28}}if((b|0)==27){c[k>>2]=3;i=h;return}else if((b|0)==28){c[k>>2]=4;i=h;return}}if((f|0)!=1){i=h;return}c[d+32>>2]=1;i=h;return}m=c[b+12>>2]|0;j=b+(m<<3)+16|0;l=c[b+20>>2]|0;n=l>>8;if((l&1|0)!=0){n=c[(c[e>>2]|0)+n>>2]|0}x=c[b+16>>2]|0;cc[c[(c[x>>2]|0)+24>>2]&3](x,d,e+n|0,(l&2|0)!=0?f:2,g);l=b+24|0;if((m|0)<=1){i=h;return}m=c[b+8>>2]|0;if((m&2|0)==0?(k=d+36|0,(c[k>>2]|0)!=1):0){if((m&1|0)==0){m=d+54|0;b=l;while(1){if((a[m>>0]|0)!=0){b=53;break}if((c[k>>2]|0)==1){b=53;break}n=c[b+4>>2]|0;o=n>>8;if((n&1|0)!=0){o=c[(c[e>>2]|0)+o>>2]|0}x=c[b>>2]|0;cc[c[(c[x>>2]|0)+24>>2]&3](x,d,e+o|0,(n&2|0)!=0?f:2,g);b=b+8|0;if(!(b>>>0<j>>>0)){b=53;break}}if((b|0)==53){i=h;return}}n=d+24|0;o=d+54|0;b=l;while(1){if((a[o>>0]|0)!=0){b=53;break}if((c[k>>2]|0)==1?(c[n>>2]|0)==1:0){b=53;break}m=c[b+4>>2]|0;p=m>>8;if((m&1|0)!=0){p=c[(c[e>>2]|0)+p>>2]|0}x=c[b>>2]|0;cc[c[(c[x>>2]|0)+24>>2]&3](x,d,e+p|0,(m&2|0)!=0?f:2,g);b=b+8|0;if(!(b>>>0<j>>>0)){b=53;break}}if((b|0)==53){i=h;return}}k=d+54|0;while(1){if((a[k>>0]|0)!=0){b=53;break}m=c[l+4>>2]|0;b=m>>8;if((m&1|0)!=0){b=c[(c[e>>2]|0)+b>>2]|0}x=c[l>>2]|0;cc[c[(c[x>>2]|0)+24>>2]&3](x,d,e+b|0,(m&2|0)!=0?f:2,g);l=l+8|0;if(!(l>>>0<j>>>0)){b=53;break}}if((b|0)==53){i=h;return}}function Ks(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;h=i;if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)!=(e|0)){i=h;return}j=d+28|0;if((c[j>>2]|0)==1){i=h;return}c[j>>2]=f;i=h;return}if((b|0)!=(c[d>>2]|0)){l=c[b+8>>2]|0;cc[c[(c[l>>2]|0)+24>>2]&3](l,d,e,f,g);i=h;return}if((c[d+16>>2]|0)!=(e|0)?(k=d+20|0,(c[k>>2]|0)!=(e|0)):0){c[d+32>>2]=f;f=d+44|0;if((c[f>>2]|0)==4){i=h;return}l=d+52|0;a[l>>0]=0;m=d+53|0;a[m>>0]=0;b=c[b+8>>2]|0;oc[c[(c[b>>2]|0)+20>>2]&31](b,d,e,e,1,g);if((a[m>>0]|0)!=0){if((a[l>>0]|0)==0){b=1;j=13}}else{b=0;j=13}do{if((j|0)==13){c[k>>2]=e;m=d+40|0;c[m>>2]=(c[m>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(b){break}}else{j=16}if((j|0)==16?b:0){break}c[f>>2]=4;i=h;return}}while(0);c[f>>2]=3;i=h;return}if((f|0)!=1){i=h;return}c[d+32>>2]=1;i=h;return}function Ls(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;g=i;if((c[d+8>>2]|0)==(b|0)){if((c[d+4>>2]|0)!=(e|0)){i=g;return}d=d+28|0;if((c[d>>2]|0)==1){i=g;return}c[d>>2]=f;i=g;return}if((c[d>>2]|0)!=(b|0)){i=g;return}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;b=d+40|0;c[b>>2]=(c[b>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1}c[d+44>>2]=4;i=g;return}if((f|0)!=1){i=g;return}c[d+32>>2]=1;i=g;return}function Ms(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=i;if((b|0)!=(c[d+8>>2]|0)){m=d+52|0;l=a[m>>0]|0;o=d+53|0;n=a[o>>0]|0;q=c[b+12>>2]|0;k=b+(q<<3)+16|0;a[m>>0]=0;a[o>>0]=0;p=c[b+20>>2]|0;r=p>>8;if((p&1|0)!=0){r=c[(c[f>>2]|0)+r>>2]|0}t=c[b+16>>2]|0;oc[c[(c[t>>2]|0)+20>>2]&31](t,d,e,f+r|0,(p&2|0)!=0?g:2,h);a:do{if((q|0)>1){q=d+24|0;p=b+8|0;r=d+54|0;b=b+24|0;do{if((a[r>>0]|0)!=0){break a}if((a[m>>0]|0)==0){if((a[o>>0]|0)!=0?(c[p>>2]&1|0)==0:0){break a}}else{if((c[q>>2]|0)==1){break a}if((c[p>>2]&2|0)==0){break a}}a[m>>0]=0;a[o>>0]=0;s=c[b+4>>2]|0;t=s>>8;if((s&1|0)!=0){t=c[(c[f>>2]|0)+t>>2]|0}u=c[b>>2]|0;oc[c[(c[u>>2]|0)+20>>2]&31](u,d,e,f+t|0,(s&2|0)!=0?g:2,h);b=b+8|0}while(b>>>0<k>>>0)}}while(0);a[m>>0]=l;a[o>>0]=n;i=j;return}a[d+53>>0]=1;if((c[d+4>>2]|0)!=(f|0)){i=j;return}a[d+52>>0]=1;k=d+16|0;f=c[k>>2]|0;if((f|0)==0){c[k>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0)){i=j;return}a[d+54>>0]=1;i=j;return}if((f|0)!=(e|0)){u=d+36|0;c[u>>2]=(c[u>>2]|0)+1;a[d+54>>0]=1;i=j;return}e=d+24|0;k=c[e>>2]|0;if((k|0)==2){c[e>>2]=g}else{g=k}if(!((g|0)==1?(c[d+48>>2]|0)==1:0)){i=j;return}a[d+54>>0]=1;i=j;return}function Ns(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0;j=i;if((b|0)!=(c[d+8>>2]|0)){b=c[b+8>>2]|0;oc[c[(c[b>>2]|0)+20>>2]&31](b,d,e,f,g,h);i=j;return}a[d+53>>0]=1;if((c[d+4>>2]|0)!=(f|0)){i=j;return}a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if((f|0)==0){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0)){i=j;return}a[d+54>>0]=1;i=j;return}if((f|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;a[d+54>>0]=1;i=j;return}e=d+24|0;b=c[e>>2]|0;if((b|0)==2){c[e>>2]=g}else{g=b}if(!((g|0)==1?(c[d+48>>2]|0)==1:0)){i=j;return}a[d+54>>0]=1;i=j;return}function Os(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;h=i;if((c[d+8>>2]|0)!=(b|0)){i=h;return}a[d+53>>0]=1;if((c[d+4>>2]|0)!=(f|0)){i=h;return}a[d+52>>0]=1;f=d+16|0;b=c[f>>2]|0;if((b|0)==0){c[f>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0)){i=h;return}a[d+54>>0]=1;i=h;return}if((b|0)!=(e|0)){b=d+36|0;c[b>>2]=(c[b>>2]|0)+1;a[d+54>>0]=1;i=h;return}e=d+24|0;f=c[e>>2]|0;if((f|0)==2){c[e>>2]=g}else{g=f}if(!((g|0)==1?(c[d+48>>2]|0)==1:0)){i=h;return}a[d+54>>0]=1;i=h;return}function Ps(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=i;do{if(a>>>0<245){if(a>>>0<11){a=16}else{a=a+11&-8}v=a>>>3;p=c[272792]|0;w=p>>>v;if((w&3|0)!=0){h=(w&1^1)+v|0;g=h<<1;e=1091208+(g<<2)|0;g=1091208+(g+2<<2)|0;j=c[g>>2]|0;d=j+8|0;f=c[d>>2]|0;do{if((e|0)!=(f|0)){if(f>>>0<(c[1091184>>2]|0)>>>0){Ob()}k=f+12|0;if((c[k>>2]|0)==(j|0)){c[k>>2]=e;c[g>>2]=f;break}else{Ob()}}else{c[272792]=p&~(1<<h)}}while(0);H=h<<3;c[j+4>>2]=H|3;H=j+(H|4)|0;c[H>>2]=c[H>>2]|1;H=d;i=b;return H|0}if(a>>>0>(c[1091176>>2]|0)>>>0){if((w|0)!=0){h=2<<v;h=w<<v&(h|0-h);h=(h&0-h)+-1|0;d=h>>>12&16;h=h>>>d;f=h>>>5&8;h=h>>>f;g=h>>>2&4;h=h>>>g;e=h>>>1&2;h=h>>>e;j=h>>>1&1;j=(f|d|g|e|j)+(h>>>j)|0;h=j<<1;e=1091208+(h<<2)|0;h=1091208+(h+2<<2)|0;g=c[h>>2]|0;d=g+8|0;f=c[d>>2]|0;do{if((e|0)!=(f|0)){if(f>>>0<(c[1091184>>2]|0)>>>0){Ob()}k=f+12|0;if((c[k>>2]|0)==(g|0)){c[k>>2]=e;c[h>>2]=f;break}else{Ob()}}else{c[272792]=p&~(1<<j)}}while(0);h=j<<3;f=h-a|0;c[g+4>>2]=a|3;e=g+a|0;c[g+(a|4)>>2]=f|1;c[g+h>>2]=f;h=c[1091176>>2]|0;if((h|0)!=0){g=c[1091188>>2]|0;k=h>>>3;j=k<<1;h=1091208+(j<<2)|0;l=c[272792]|0;k=1<<k;if((l&k|0)!=0){j=1091208+(j+2<<2)|0;k=c[j>>2]|0;if(k>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{D=j;C=k}}else{c[272792]=l|k;D=1091208+(j+2<<2)|0;C=h}c[D>>2]=g;c[C+12>>2]=g;c[g+8>>2]=C;c[g+12>>2]=h}c[1091176>>2]=f;c[1091188>>2]=e;H=d;i=b;return H|0}p=c[1091172>>2]|0;if((p|0)!=0){e=(p&0-p)+-1|0;G=e>>>12&16;e=e>>>G;F=e>>>5&8;e=e>>>F;H=e>>>2&4;e=e>>>H;f=e>>>1&2;e=e>>>f;d=e>>>1&1;d=c[1091472+((F|G|H|f|d)+(e>>>d)<<2)>>2]|0;e=(c[d+4>>2]&-8)-a|0;f=d;while(1){g=c[f+16>>2]|0;if((g|0)==0){g=c[f+20>>2]|0;if((g|0)==0){break}}f=(c[g+4>>2]&-8)-a|0;H=f>>>0<e>>>0;e=H?f:e;f=g;d=H?g:d}h=c[1091184>>2]|0;if(d>>>0<h>>>0){Ob()}f=d+a|0;if(!(d>>>0<f>>>0)){Ob()}g=c[d+24>>2]|0;k=c[d+12>>2]|0;do{if((k|0)==(d|0)){k=d+20|0;j=c[k>>2]|0;if((j|0)==0){k=d+16|0;j=c[k>>2]|0;if((j|0)==0){B=0;break}}while(1){l=j+20|0;m=c[l>>2]|0;if((m|0)!=0){j=m;k=l;continue}m=j+16|0;l=c[m>>2]|0;if((l|0)==0){break}else{j=l;k=m}}if(k>>>0<h>>>0){Ob()}else{c[k>>2]=0;B=j;break}}else{j=c[d+8>>2]|0;if(j>>>0<h>>>0){Ob()}h=j+12|0;if((c[h>>2]|0)!=(d|0)){Ob()}l=k+8|0;if((c[l>>2]|0)==(d|0)){c[h>>2]=k;c[l>>2]=j;B=k;break}else{Ob()}}}while(0);do{if((g|0)!=0){h=c[d+28>>2]|0;j=1091472+(h<<2)|0;if((d|0)==(c[j>>2]|0)){c[j>>2]=B;if((B|0)==0){c[1091172>>2]=c[1091172>>2]&~(1<<h);break}}else{if(g>>>0<(c[1091184>>2]|0)>>>0){Ob()}h=g+16|0;if((c[h>>2]|0)==(d|0)){c[h>>2]=B}else{c[g+20>>2]=B}if((B|0)==0){break}}if(B>>>0<(c[1091184>>2]|0)>>>0){Ob()}c[B+24>>2]=g;g=c[d+16>>2]|0;do{if((g|0)!=0){if(g>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[B+16>>2]=g;c[g+24>>2]=B;break}}}while(0);g=c[d+20>>2]|0;if((g|0)!=0){if(g>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[B+20>>2]=g;c[g+24>>2]=B;break}}}}while(0);if(e>>>0<16){H=e+a|0;c[d+4>>2]=H|3;H=d+(H+4)|0;c[H>>2]=c[H>>2]|1}else{c[d+4>>2]=a|3;c[d+(a|4)>>2]=e|1;c[d+(e+a)>>2]=e;h=c[1091176>>2]|0;if((h|0)!=0){g=c[1091188>>2]|0;l=h>>>3;j=l<<1;h=1091208+(j<<2)|0;k=c[272792]|0;l=1<<l;if((k&l|0)!=0){j=1091208+(j+2<<2)|0;k=c[j>>2]|0;if(k>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{A=j;z=k}}else{c[272792]=k|l;A=1091208+(j+2<<2)|0;z=h}c[A>>2]=g;c[z+12>>2]=g;c[g+8>>2]=z;c[g+12>>2]=h}c[1091176>>2]=e;c[1091188>>2]=f}H=d+8|0;i=b;return H|0}}}else{if(!(a>>>0>4294967231)){z=a+11|0;a=z&-8;B=c[1091172>>2]|0;if((B|0)!=0){A=0-a|0;z=z>>>8;if((z|0)!=0){if(a>>>0>16777215){C=31}else{G=(z+1048320|0)>>>16&8;H=z<<G;F=(H+520192|0)>>>16&4;H=H<<F;C=(H+245760|0)>>>16&2;C=14-(F|G|C)+(H<<C>>>15)|0;C=a>>>(C+7|0)&1|C<<1}}else{C=0}D=c[1091472+(C<<2)>>2]|0;a:do{if((D|0)==0){F=0;z=0}else{if((C|0)==31){z=0}else{z=25-(C>>>1)|0}F=0;E=a<<z;z=0;while(1){H=c[D+4>>2]&-8;G=H-a|0;if(G>>>0<A>>>0){if((H|0)==(a|0)){A=G;F=D;z=D;break a}else{A=G;z=D}}H=c[D+20>>2]|0;D=c[D+(E>>>31<<2)+16>>2]|0;F=(H|0)==0|(H|0)==(D|0)?F:H;if((D|0)==0){break}else{E=E<<1}}}}while(0);if((F|0)==0&(z|0)==0){H=2<<C;B=B&(H|0-H);if((B|0)==0){break}H=(B&0-B)+-1|0;D=H>>>12&16;H=H>>>D;C=H>>>5&8;H=H>>>C;E=H>>>2&4;H=H>>>E;G=H>>>1&2;H=H>>>G;F=H>>>1&1;F=c[1091472+((C|D|E|G|F)+(H>>>F)<<2)>>2]|0}if((F|0)!=0){while(1){H=(c[F+4>>2]&-8)-a|0;B=H>>>0<A>>>0;A=B?H:A;z=B?F:z;B=c[F+16>>2]|0;if((B|0)!=0){F=B;continue}F=c[F+20>>2]|0;if((F|0)==0){break}}}if((z|0)!=0?A>>>0<((c[1091176>>2]|0)-a|0)>>>0:0){f=c[1091184>>2]|0;if(z>>>0<f>>>0){Ob()}d=z+a|0;if(!(z>>>0<d>>>0)){Ob()}e=c[z+24>>2]|0;h=c[z+12>>2]|0;do{if((h|0)==(z|0)){h=z+20|0;g=c[h>>2]|0;if((g|0)==0){h=z+16|0;g=c[h>>2]|0;if((g|0)==0){x=0;break}}while(1){j=g+20|0;k=c[j>>2]|0;if((k|0)!=0){g=k;h=j;continue}j=g+16|0;k=c[j>>2]|0;if((k|0)==0){break}else{g=k;h=j}}if(h>>>0<f>>>0){Ob()}else{c[h>>2]=0;x=g;break}}else{g=c[z+8>>2]|0;if(g>>>0<f>>>0){Ob()}f=g+12|0;if((c[f>>2]|0)!=(z|0)){Ob()}j=h+8|0;if((c[j>>2]|0)==(z|0)){c[f>>2]=h;c[j>>2]=g;x=h;break}else{Ob()}}}while(0);do{if((e|0)!=0){g=c[z+28>>2]|0;f=1091472+(g<<2)|0;if((z|0)==(c[f>>2]|0)){c[f>>2]=x;if((x|0)==0){c[1091172>>2]=c[1091172>>2]&~(1<<g);break}}else{if(e>>>0<(c[1091184>>2]|0)>>>0){Ob()}f=e+16|0;if((c[f>>2]|0)==(z|0)){c[f>>2]=x
+}else{c[e+20>>2]=x}if((x|0)==0){break}}if(x>>>0<(c[1091184>>2]|0)>>>0){Ob()}c[x+24>>2]=e;e=c[z+16>>2]|0;do{if((e|0)!=0){if(e>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[x+16>>2]=e;c[e+24>>2]=x;break}}}while(0);e=c[z+20>>2]|0;if((e|0)!=0){if(e>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[x+20>>2]=e;c[e+24>>2]=x;break}}}}while(0);b:do{if(!(A>>>0<16)){c[z+4>>2]=a|3;c[z+(a|4)>>2]=A|1;c[z+(A+a)>>2]=A;f=A>>>3;if(A>>>0<256){h=f<<1;e=1091208+(h<<2)|0;g=c[272792]|0;f=1<<f;do{if((g&f|0)==0){c[272792]=g|f;w=1091208+(h+2<<2)|0;v=e}else{f=1091208+(h+2<<2)|0;g=c[f>>2]|0;if(!(g>>>0<(c[1091184>>2]|0)>>>0)){w=f;v=g;break}Ob()}}while(0);c[w>>2]=d;c[v+12>>2]=d;c[z+(a+8)>>2]=v;c[z+(a+12)>>2]=e;break}e=A>>>8;if((e|0)!=0){if(A>>>0>16777215){e=31}else{G=(e+1048320|0)>>>16&8;H=e<<G;F=(H+520192|0)>>>16&4;H=H<<F;e=(H+245760|0)>>>16&2;e=14-(F|G|e)+(H<<e>>>15)|0;e=A>>>(e+7|0)&1|e<<1}}else{e=0}f=1091472+(e<<2)|0;c[z+(a+28)>>2]=e;c[z+(a+20)>>2]=0;c[z+(a+16)>>2]=0;h=c[1091172>>2]|0;g=1<<e;if((h&g|0)==0){c[1091172>>2]=h|g;c[f>>2]=d;c[z+(a+24)>>2]=f;c[z+(a+12)>>2]=d;c[z+(a+8)>>2]=d;break}f=c[f>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}c:do{if((c[f+4>>2]&-8|0)!=(A|0)){e=A<<e;while(1){g=f+(e>>>31<<2)+16|0;h=c[g>>2]|0;if((h|0)==0){break}if((c[h+4>>2]&-8|0)==(A|0)){p=h;break c}else{e=e<<1;f=h}}if(g>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[g>>2]=d;c[z+(a+24)>>2]=f;c[z+(a+12)>>2]=d;c[z+(a+8)>>2]=d;break b}}else{p=f}}while(0);f=p+8|0;e=c[f>>2]|0;g=c[1091184>>2]|0;if(p>>>0<g>>>0){Ob()}if(e>>>0<g>>>0){Ob()}else{c[e+12>>2]=d;c[f>>2]=d;c[z+(a+8)>>2]=e;c[z+(a+12)>>2]=p;c[z+(a+24)>>2]=0;break}}else{H=A+a|0;c[z+4>>2]=H|3;H=z+(H+4)|0;c[H>>2]=c[H>>2]|1}}while(0);H=z+8|0;i=b;return H|0}}}else{a=-1}}}while(0);p=c[1091176>>2]|0;if(!(a>>>0>p>>>0)){e=p-a|0;d=c[1091188>>2]|0;if(e>>>0>15){c[1091188>>2]=d+a;c[1091176>>2]=e;c[d+(a+4)>>2]=e|1;c[d+p>>2]=e;c[d+4>>2]=a|3}else{c[1091176>>2]=0;c[1091188>>2]=0;c[d+4>>2]=p|3;H=d+(p+4)|0;c[H>>2]=c[H>>2]|1}H=d+8|0;i=b;return H|0}p=c[1091180>>2]|0;if(a>>>0<p>>>0){G=p-a|0;c[1091180>>2]=G;H=c[1091192>>2]|0;c[1091192>>2]=H+a;c[H+(a+4)>>2]=G|1;c[H+4>>2]=a|3;H=H+8|0;i=b;return H|0}do{if((c[272910]|0)==0){p=kb(30)|0;if((p+-1&p|0)==0){c[1091648>>2]=p;c[1091644>>2]=p;c[1091652>>2]=-1;c[1091656>>2]=-1;c[1091660>>2]=0;c[1091612>>2]=0;c[272910]=(ub(0)|0)&-16^1431655768;break}else{Ob()}}}while(0);w=a+48|0;p=c[1091648>>2]|0;x=a+47|0;z=p+x|0;p=0-p|0;v=z&p;if(!(v>>>0>a>>>0)){H=0;i=b;return H|0}A=c[1091608>>2]|0;if((A|0)!=0?(G=c[1091600>>2]|0,H=G+v|0,H>>>0<=G>>>0|H>>>0>A>>>0):0){H=0;i=b;return H|0}d:do{if((c[1091612>>2]&4|0)==0){B=c[1091192>>2]|0;e:do{if((B|0)!=0){A=1091616|0;while(1){C=c[A>>2]|0;if(!(C>>>0>B>>>0)?(y=A+4|0,(C+(c[y>>2]|0)|0)>>>0>B>>>0):0){break}A=c[A+8>>2]|0;if((A|0)==0){o=182;break e}}if((A|0)!=0){B=z-(c[1091180>>2]|0)&p;if(B>>>0<2147483647){p=bb(B|0)|0;A=(p|0)==((c[A>>2]|0)+(c[y>>2]|0)|0);y=p;z=B;p=A?p:-1;A=A?B:0;o=191}else{A=0}}else{o=182}}else{o=182}}while(0);do{if((o|0)==182){p=bb(0)|0;if((p|0)!=(-1|0)){z=p;A=c[1091644>>2]|0;y=A+-1|0;if((y&z|0)==0){A=v}else{A=v-z+(y+z&0-A)|0}y=c[1091600>>2]|0;z=y+A|0;if(A>>>0>a>>>0&A>>>0<2147483647){H=c[1091608>>2]|0;if((H|0)!=0?z>>>0<=y>>>0|z>>>0>H>>>0:0){A=0;break}y=bb(A|0)|0;o=(y|0)==(p|0);z=A;p=o?p:-1;A=o?A:0;o=191}else{A=0}}else{A=0}}}while(0);f:do{if((o|0)==191){o=0-z|0;if((p|0)!=(-1|0)){q=A;o=202;break d}do{if((y|0)!=(-1|0)&z>>>0<2147483647&z>>>0<w>>>0?(u=c[1091648>>2]|0,u=x-z+u&0-u,u>>>0<2147483647):0){if((bb(u|0)|0)==(-1|0)){bb(o|0)|0;break f}else{z=u+z|0;break}}}while(0);if((y|0)!=(-1|0)){p=y;q=z;o=202;break d}}}while(0);c[1091612>>2]=c[1091612>>2]|4;o=199}else{A=0;o=199}}while(0);if((((o|0)==199?v>>>0<2147483647:0)?(t=bb(v|0)|0,s=bb(0)|0,(s|0)!=(-1|0)&(t|0)!=(-1|0)&t>>>0<s>>>0):0)?(r=s-t|0,q=r>>>0>(a+40|0)>>>0,q):0){p=t;q=q?r:A;o=202}if((o|0)==202){r=(c[1091600>>2]|0)+q|0;c[1091600>>2]=r;if(r>>>0>(c[1091604>>2]|0)>>>0){c[1091604>>2]=r}r=c[1091192>>2]|0;g:do{if((r|0)!=0){v=1091616|0;while(1){t=c[v>>2]|0;u=v+4|0;s=c[u>>2]|0;if((p|0)==(t+s|0)){o=214;break}w=c[v+8>>2]|0;if((w|0)==0){break}else{v=w}}if(((o|0)==214?(c[v+12>>2]&8|0)==0:0)?r>>>0>=t>>>0&r>>>0<p>>>0:0){c[u>>2]=s+q;d=(c[1091180>>2]|0)+q|0;e=r+8|0;if((e&7|0)==0){e=0}else{e=0-e&7}H=d-e|0;c[1091192>>2]=r+e;c[1091180>>2]=H;c[r+(e+4)>>2]=H|1;c[r+(d+4)>>2]=40;c[1091196>>2]=c[1091656>>2];break}if(p>>>0<(c[1091184>>2]|0)>>>0){c[1091184>>2]=p}t=p+q|0;s=1091616|0;while(1){if((c[s>>2]|0)==(t|0)){o=224;break}u=c[s+8>>2]|0;if((u|0)==0){break}else{s=u}}if((o|0)==224?(c[s+12>>2]&8|0)==0:0){c[s>>2]=p;h=s+4|0;c[h>>2]=(c[h>>2]|0)+q;h=p+8|0;if((h&7|0)==0){h=0}else{h=0-h&7}j=p+(q+8)|0;if((j&7|0)==0){n=0}else{n=0-j&7}o=p+(n+q)|0;j=h+a|0;k=p+j|0;m=o-(p+h)-a|0;c[p+(h+4)>>2]=a|3;h:do{if((o|0)!=(c[1091192>>2]|0)){if((o|0)==(c[1091188>>2]|0)){H=(c[1091176>>2]|0)+m|0;c[1091176>>2]=H;c[1091188>>2]=k;c[p+(j+4)>>2]=H|1;c[p+(H+j)>>2]=H;break}r=q+4|0;t=c[p+(r+n)>>2]|0;if((t&3|0)==1){a=t&-8;s=t>>>3;i:do{if(!(t>>>0<256)){l=c[p+((n|24)+q)>>2]|0;u=c[p+(q+12+n)>>2]|0;do{if((u|0)==(o|0)){u=n|16;t=p+(r+u)|0;s=c[t>>2]|0;if((s|0)==0){t=p+(u+q)|0;s=c[t>>2]|0;if((s|0)==0){g=0;break}}while(1){u=s+20|0;v=c[u>>2]|0;if((v|0)!=0){s=v;t=u;continue}u=s+16|0;v=c[u>>2]|0;if((v|0)==0){break}else{s=v;t=u}}if(t>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[t>>2]=0;g=s;break}}else{t=c[p+((n|8)+q)>>2]|0;if(t>>>0<(c[1091184>>2]|0)>>>0){Ob()}v=t+12|0;if((c[v>>2]|0)!=(o|0)){Ob()}s=u+8|0;if((c[s>>2]|0)==(o|0)){c[v>>2]=u;c[s>>2]=t;g=u;break}else{Ob()}}}while(0);if((l|0)==0){break}t=c[p+(q+28+n)>>2]|0;s=1091472+(t<<2)|0;do{if((o|0)!=(c[s>>2]|0)){if(l>>>0<(c[1091184>>2]|0)>>>0){Ob()}s=l+16|0;if((c[s>>2]|0)==(o|0)){c[s>>2]=g}else{c[l+20>>2]=g}if((g|0)==0){break i}}else{c[s>>2]=g;if((g|0)!=0){break}c[1091172>>2]=c[1091172>>2]&~(1<<t);break i}}while(0);if(g>>>0<(c[1091184>>2]|0)>>>0){Ob()}c[g+24>>2]=l;l=n|16;o=c[p+(l+q)>>2]|0;do{if((o|0)!=0){if(o>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[g+16>>2]=o;c[o+24>>2]=g;break}}}while(0);l=c[p+(r+l)>>2]|0;if((l|0)==0){break}if(l>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[g+20>>2]=l;c[l+24>>2]=g;break}}else{r=c[p+((n|8)+q)>>2]|0;g=c[p+(q+12+n)>>2]|0;t=1091208+(s<<1<<2)|0;do{if((r|0)!=(t|0)){if(r>>>0<(c[1091184>>2]|0)>>>0){Ob()}if((c[r+12>>2]|0)==(o|0)){break}Ob()}}while(0);if((g|0)==(r|0)){c[272792]=c[272792]&~(1<<s);break}do{if((g|0)==(t|0)){l=g+8|0}else{if(g>>>0<(c[1091184>>2]|0)>>>0){Ob()}s=g+8|0;if((c[s>>2]|0)==(o|0)){l=s;break}Ob()}}while(0);c[r+12>>2]=g;c[l>>2]=r}}while(0);o=p+((a|n)+q)|0;m=a+m|0}g=o+4|0;c[g>>2]=c[g>>2]&-2;c[p+(j+4)>>2]=m|1;c[p+(m+j)>>2]=m;g=m>>>3;if(m>>>0<256){m=g<<1;d=1091208+(m<<2)|0;l=c[272792]|0;g=1<<g;do{if((l&g|0)==0){c[272792]=l|g;f=1091208+(m+2<<2)|0;e=d}else{l=1091208+(m+2<<2)|0;g=c[l>>2]|0;if(!(g>>>0<(c[1091184>>2]|0)>>>0)){f=l;e=g;break}Ob()}}while(0);c[f>>2]=k;c[e+12>>2]=k;c[p+(j+8)>>2]=e;c[p+(j+12)>>2]=d;break}e=m>>>8;do{if((e|0)==0){e=0}else{if(m>>>0>16777215){e=31;break}G=(e+1048320|0)>>>16&8;H=e<<G;F=(H+520192|0)>>>16&4;H=H<<F;e=(H+245760|0)>>>16&2;e=14-(F|G|e)+(H<<e>>>15)|0;e=m>>>(e+7|0)&1|e<<1}}while(0);l=1091472+(e<<2)|0;c[p+(j+28)>>2]=e;c[p+(j+20)>>2]=0;c[p+(j+16)>>2]=0;f=c[1091172>>2]|0;g=1<<e;if((f&g|0)==0){c[1091172>>2]=f|g;c[l>>2]=k;c[p+(j+24)>>2]=l;c[p+(j+12)>>2]=k;c[p+(j+8)>>2]=k;break}l=c[l>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}j:do{if((c[l+4>>2]&-8|0)!=(m|0)){e=m<<e;while(1){g=l+(e>>>31<<2)+16|0;f=c[g>>2]|0;if((f|0)==0){break}if((c[f+4>>2]&-8|0)==(m|0)){d=f;break j}else{e=e<<1;l=f}}if(g>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[g>>2]=k;c[p+(j+24)>>2]=l;c[p+(j+12)>>2]=k;c[p+(j+8)>>2]=k;break h}}else{d=l}}while(0);f=d+8|0;e=c[f>>2]|0;g=c[1091184>>2]|0;if(d>>>0<g>>>0){Ob()}if(e>>>0<g>>>0){Ob()}else{c[e+12>>2]=k;c[f>>2]=k;c[p+(j+8)>>2]=e;c[p+(j+12)>>2]=d;c[p+(j+24)>>2]=0;break}}else{H=(c[1091180>>2]|0)+m|0;c[1091180>>2]=H;c[1091192>>2]=k;c[p+(j+4)>>2]=H|1}}while(0);H=p+(h|8)|0;i=b;return H|0}e=1091616|0;while(1){d=c[e>>2]|0;if(!(d>>>0>r>>>0)?(n=c[e+4>>2]|0,m=d+n|0,m>>>0>r>>>0):0){break}e=c[e+8>>2]|0}e=d+(n+-39)|0;if((e&7|0)==0){e=0}else{e=0-e&7}d=d+(n+-47+e)|0;d=d>>>0<(r+16|0)>>>0?r:d;e=d+8|0;f=p+8|0;if((f&7|0)==0){f=0}else{f=0-f&7}H=q+-40-f|0;c[1091192>>2]=p+f;c[1091180>>2]=H;c[p+(f+4)>>2]=H|1;c[p+(q+-36)>>2]=40;c[1091196>>2]=c[1091656>>2];c[d+4>>2]=27;c[e+0>>2]=c[1091616>>2];c[e+4>>2]=c[1091620>>2];c[e+8>>2]=c[1091624>>2];c[e+12>>2]=c[1091628>>2];c[1091616>>2]=p;c[1091620>>2]=q;c[1091628>>2]=0;c[1091624>>2]=e;e=d+28|0;c[e>>2]=7;if((d+32|0)>>>0<m>>>0){do{H=e;e=e+4|0;c[e>>2]=7}while((H+8|0)>>>0<m>>>0)}if((d|0)!=(r|0)){d=d-r|0;e=r+(d+4)|0;c[e>>2]=c[e>>2]&-2;c[r+4>>2]=d|1;c[r+d>>2]=d;e=d>>>3;if(d>>>0<256){g=e<<1;d=1091208+(g<<2)|0;f=c[272792]|0;e=1<<e;do{if((f&e|0)==0){c[272792]=f|e;k=1091208+(g+2<<2)|0;j=d}else{f=1091208+(g+2<<2)|0;e=c[f>>2]|0;if(!(e>>>0<(c[1091184>>2]|0)>>>0)){k=f;j=e;break}Ob()}}while(0);c[k>>2]=r;c[j+12>>2]=r;c[r+8>>2]=j;c[r+12>>2]=d;break}e=d>>>8;if((e|0)!=0){if(d>>>0>16777215){e=31}else{G=(e+1048320|0)>>>16&8;H=e<<G;F=(H+520192|0)>>>16&4;H=H<<F;e=(H+245760|0)>>>16&2;e=14-(F|G|e)+(H<<e>>>15)|0;e=d>>>(e+7|0)&1|e<<1}}else{e=0}j=1091472+(e<<2)|0;c[r+28>>2]=e;c[r+20>>2]=0;c[r+16>>2]=0;f=c[1091172>>2]|0;g=1<<e;if((f&g|0)==0){c[1091172>>2]=f|g;c[j>>2]=r;c[r+24>>2]=j;c[r+12>>2]=r;c[r+8>>2]=r;break}f=c[j>>2]|0;if((e|0)==31){e=0}else{e=25-(e>>>1)|0}k:do{if((c[f+4>>2]&-8|0)!=(d|0)){e=d<<e;while(1){j=f+(e>>>31<<2)+16|0;g=c[j>>2]|0;if((g|0)==0){break}if((c[g+4>>2]&-8|0)==(d|0)){h=g;break k}else{e=e<<1;f=g}}if(j>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[j>>2]=r;c[r+24>>2]=f;c[r+12>>2]=r;c[r+8>>2]=r;break g}}else{h=f}}while(0);f=h+8|0;e=c[f>>2]|0;d=c[1091184>>2]|0;if(h>>>0<d>>>0){Ob()}if(e>>>0<d>>>0){Ob()}else{c[e+12>>2]=r;c[f>>2]=r;c[r+8>>2]=e;c[r+12>>2]=h;c[r+24>>2]=0;break}}}else{H=c[1091184>>2]|0;if((H|0)==0|p>>>0<H>>>0){c[1091184>>2]=p}c[1091616>>2]=p;c[1091620>>2]=q;c[1091628>>2]=0;c[1091204>>2]=c[272910];c[1091200>>2]=-1;d=0;do{H=d<<1;G=1091208+(H<<2)|0;c[1091208+(H+3<<2)>>2]=G;c[1091208+(H+2<<2)>>2]=G;d=d+1|0}while((d|0)!=32);d=p+8|0;if((d&7|0)==0){d=0}else{d=0-d&7}H=q+-40-d|0;c[1091192>>2]=p+d;c[1091180>>2]=H;c[p+(d+4)>>2]=H|1;c[p+(q+-36)>>2]=40;c[1091196>>2]=c[1091656>>2]}}while(0);d=c[1091180>>2]|0;if(d>>>0>a>>>0){G=d-a|0;c[1091180>>2]=G;H=c[1091192>>2]|0;c[1091192>>2]=H+a;c[H+(a+4)>>2]=G|1;c[H+4>>2]=a|3;H=H+8|0;i=b;return H|0}}c[(Eb()|0)>>2]=12;H=0;i=b;return H|0}function Qs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,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=i;if((a|0)==0){i=b;return}q=a+-8|0;r=c[1091184>>2]|0;if(q>>>0<r>>>0){Ob()}o=c[a+-4>>2]|0;n=o&3;if((n|0)==1){Ob()}j=o&-8;h=a+(j+-8)|0;do{if((o&1|0)==0){u=c[q>>2]|0;if((n|0)==0){i=b;return}q=-8-u|0;o=a+q|0;n=u+j|0;if(o>>>0<r>>>0){Ob()}if((o|0)==(c[1091188>>2]|0)){d=a+(j+-4)|0;if((c[d>>2]&3|0)!=3){d=o;m=n;break}c[1091176>>2]=n;c[d>>2]=c[d>>2]&-2;c[a+(q+4)>>2]=n|1;c[h>>2]=n;i=b;return}t=u>>>3;if(u>>>0<256){d=c[a+(q+8)>>2]|0;m=c[a+(q+12)>>2]|0;p=1091208+(t<<1<<2)|0;if((d|0)!=(p|0)){if(d>>>0<r>>>0){Ob()}if((c[d+12>>2]|0)!=(o|0)){Ob()}}if((m|0)==(d|0)){c[272792]=c[272792]&~(1<<t);d=o;m=n;break}if((m|0)!=(p|0)){if(m>>>0<r>>>0){Ob()}p=m+8|0;if((c[p>>2]|0)==(o|0)){s=p}else{Ob()}}else{s=m+8|0}c[d+12>>2]=m;c[s>>2]=d;d=o;m=n;break}s=c[a+(q+24)>>2]|0;t=c[a+(q+12)>>2]|0;do{if((t|0)==(o|0)){u=a+(q+20)|0;t=c[u>>2]|0;if((t|0)==0){u=a+(q+16)|0;t=c[u>>2]|0;if((t|0)==0){p=0;break}}while(1){w=t+20|0;v=c[w>>2]|0;if((v|0)!=0){t=v;u=w;continue}v=t+16|0;w=c[v>>2]|0;if((w|0)==0){break}else{t=w;u=v}}if(u>>>0<r>>>0){Ob()}else{c[u>>2]=0;p=t;break}}else{u=c[a+(q+8)>>2]|0;if(u>>>0<r>>>0){Ob()}r=u+12|0;if((c[r>>2]|0)!=(o|0)){Ob()}v=t+8|0;if((c[v>>2]|0)==(o|0)){c[r>>2]=t;c[v>>2]=u;p=t;break}else{Ob()}}}while(0);if((s|0)!=0){t=c[a+(q+28)>>2]|0;r=1091472+(t<<2)|0;if((o|0)==(c[r>>2]|0)){c[r>>2]=p;if((p|0)==0){c[1091172>>2]=c[1091172>>2]&~(1<<t);d=o;m=n;break}}else{if(s>>>0<(c[1091184>>2]|0)>>>0){Ob()}r=s+16|0;if((c[r>>2]|0)==(o|0)){c[r>>2]=p}else{c[s+20>>2]=p}if((p|0)==0){d=o;m=n;break}}if(p>>>0<(c[1091184>>2]|0)>>>0){Ob()}c[p+24>>2]=s;r=c[a+(q+16)>>2]|0;do{if((r|0)!=0){if(r>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[p+16>>2]=r;c[r+24>>2]=p;break}}}while(0);q=c[a+(q+20)>>2]|0;if((q|0)!=0){if(q>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[p+20>>2]=q;c[q+24>>2]=p;d=o;m=n;break}}else{d=o;m=n}}else{d=o;m=n}}else{d=q;m=j}}while(0);if(!(d>>>0<h>>>0)){Ob()}n=a+(j+-4)|0;o=c[n>>2]|0;if((o&1|0)==0){Ob()}if((o&2|0)==0){if((h|0)==(c[1091192>>2]|0)){w=(c[1091180>>2]|0)+m|0;c[1091180>>2]=w;c[1091192>>2]=d;c[d+4>>2]=w|1;if((d|0)!=(c[1091188>>2]|0)){i=b;return}c[1091188>>2]=0;c[1091176>>2]=0;i=b;return}if((h|0)==(c[1091188>>2]|0)){w=(c[1091176>>2]|0)+m|0;c[1091176>>2]=w;c[1091188>>2]=d;c[d+4>>2]=w|1;c[d+w>>2]=w;i=b;return}m=(o&-8)+m|0;n=o>>>3;do{if(!(o>>>0<256)){l=c[a+(j+16)>>2]|0;q=c[a+(j|4)>>2]|0;do{if((q|0)==(h|0)){o=a+(j+12)|0;n=c[o>>2]|0;if((n|0)==0){o=a+(j+8)|0;n=c[o>>2]|0;if((n|0)==0){k=0;break}}while(1){p=n+20|0;q=c[p>>2]|0;if((q|0)!=0){n=q;o=p;continue}p=n+16|0;q=c[p>>2]|0;if((q|0)==0){break}else{n=q;o=p}}if(o>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[o>>2]=0;k=n;break}}else{o=c[a+j>>2]|0;if(o>>>0<(c[1091184>>2]|0)>>>0){Ob()}p=o+12|0;if((c[p>>2]|0)!=(h|0)){Ob()}n=q+8|0;if((c[n>>2]|0)==(h|0)){c[p>>2]=q;c[n>>2]=o;k=q;break}else{Ob()}}}while(0);if((l|0)!=0){n=c[a+(j+20)>>2]|0;o=1091472+(n<<2)|0;if((h|0)==(c[o>>2]|0)){c[o>>2]=k;if((k|0)==0){c[1091172>>2]=c[1091172>>2]&~(1<<n);break}}else{if(l>>>0<(c[1091184>>2]|0)>>>0){Ob()}n=l+16|0;if((c[n>>2]|0)==(h|0)){c[n>>2]=k}else{c[l+20>>2]=k}if((k|0)==0){break}}if(k>>>0<(c[1091184>>2]|0)>>>0){Ob()}c[k+24>>2]=l;h=c[a+(j+8)>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[k+16>>2]=h;c[h+24>>2]=k;break}}}while(0);h=c[a+(j+12)>>2]|0;if((h|0)!=0){if(h>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[k+20>>2]=h;c[h+24>>2]=k;break}}}}else{k=c[a+j>>2]|0;a=c[a+(j|4)>>2]|0;j=1091208+(n<<1<<2)|0;if((k|0)!=(j|0)){if(k>>>0<(c[1091184>>2]|0)>>>0){Ob()}if((c[k+12>>2]|0)!=(h|0)){Ob()}}if((a|0)==(k|0)){c[272792]=c[272792]&~(1<<n);break}if((a|0)!=(j|0)){if(a>>>0<(c[1091184>>2]|0)>>>0){Ob()}j=a+8|0;if((c[j>>2]|0)==(h|0)){l=j}else{Ob()}}else{l=a+8|0}c[k+12>>2]=a;c[l>>2]=k}}while(0);c[d+4>>2]=m|1;c[d+m>>2]=m;if((d|0)==(c[1091188>>2]|0)){c[1091176>>2]=m;i=b;return}}else{c[n>>2]=o&-2;c[d+4>>2]=m|1;c[d+m>>2]=m}h=m>>>3;if(m>>>0<256){a=h<<1;e=1091208+(a<<2)|0;j=c[272792]|0;h=1<<h;if((j&h|0)!=0){h=1091208+(a+2<<2)|0;a=c[h>>2]|0;if(a>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{f=h;g=a}}else{c[272792]=j|h;f=1091208+(a+2<<2)|0;g=e}c[f>>2]=d;c[g+12>>2]=d;c[d+8>>2]=g;c[d+12>>2]=e;i=b;return}f=m>>>8;if((f|0)!=0){if(m>>>0>16777215){f=31}else{v=(f+1048320|0)>>>16&8;w=f<<v;u=(w+520192|0)>>>16&4;w=w<<u;f=(w+245760|0)>>>16&2;f=14-(u|v|f)+(w<<f>>>15)|0;f=m>>>(f+7|0)&1|f<<1}}else{f=0}g=1091472+(f<<2)|0;c[d+28>>2]=f;c[d+20>>2]=0;c[d+16>>2]=0;a=c[1091172>>2]|0;h=1<<f;a:do{if((a&h|0)!=0){g=c[g>>2]|0;if((f|0)==31){f=0}else{f=25-(f>>>1)|0}b:do{if((c[g+4>>2]&-8|0)!=(m|0)){f=m<<f;a=g;while(1){h=a+(f>>>31<<2)+16|0;g=c[h>>2]|0;if((g|0)==0){break}if((c[g+4>>2]&-8|0)==(m|0)){e=g;break b}else{f=f<<1;a=g}}if(h>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[h>>2]=d;c[d+24>>2]=a;c[d+12>>2]=d;c[d+8>>2]=d;break a}}else{e=g}}while(0);g=e+8|0;f=c[g>>2]|0;h=c[1091184>>2]|0;if(e>>>0<h>>>0){Ob()}if(f>>>0<h>>>0){Ob()}else{c[f+12>>2]=d;c[g>>2]=d;c[d+8>>2]=f;c[d+12>>2]=e;c[d+24>>2]=0;break}}else{c[1091172>>2]=a|h;c[g>>2]=d;c[d+24>>2]=g;c[d+12>>2]=d;c[d+8>>2]=d}}while(0);w=(c[1091200>>2]|0)+-1|0;c[1091200>>2]=w;if((w|0)==0){d=1091624|0}else{i=b;return}while(1){d=c[d>>2]|0;if((d|0)==0){break}else{d=d+8|0}}c[1091200>>2]=-1;i=b;return}function Rs(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;if((a|0)!=0){e=ea(b,a)|0;if((b|a)>>>0>65535){e=((e>>>0)/(a>>>0)|0|0)==(b|0)?e:-1}}else{e=0}a=Ps(e)|0;if((a|0)==0){i=d;return a|0}if((c[a+-4>>2]&3|0)==0){i=d;return a|0}Lt(a|0,0,e|0)|0;i=d;return a|0}function Ss(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;do{if((a|0)!=0){if(b>>>0>4294967231){c[(Eb()|0)>>2]=12;e=0;break}if(b>>>0<11){e=16}else{e=b+11&-8}e=Ts(a+-8|0,e)|0;if((e|0)!=0){e=e+8|0;break}e=Ps(b)|0;if((e|0)==0){e=0}else{f=c[a+-4>>2]|0;f=(f&-8)-((f&3|0)==0?8:4)|0;Nt(e|0,a|0,(f>>>0<b>>>0?f:b)|0)|0;Qs(a)}}else{e=Ps(b)|0}}while(0);i=d;return e|0}function Ts(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=i;e=a+4|0;g=c[e>>2]|0;j=g&-8;f=a+j|0;l=c[1091184>>2]|0;if(a>>>0<l>>>0){Ob()}n=g&3;if(!((n|0)!=1&a>>>0<f>>>0)){Ob()}h=a+(j|4)|0;o=c[h>>2]|0;if((o&1|0)==0){Ob()}if((n|0)==0){if(b>>>0<256){q=0;i=d;return q|0}if(!(j>>>0<(b+4|0)>>>0)?!((j-b|0)>>>0>c[1091648>>2]<<1>>>0):0){q=a;i=d;return q|0}q=0;i=d;return q|0}if(!(j>>>0<b>>>0)){f=j-b|0;if(!(f>>>0>15)){q=a;i=d;return q|0}c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=f|3;c[h>>2]=c[h>>2]|1;Us(a+b|0,f);q=a;i=d;return q|0}if((f|0)==(c[1091192>>2]|0)){f=(c[1091180>>2]|0)+j|0;if(!(f>>>0>b>>>0)){q=0;i=d;return q|0}q=f-b|0;c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=q|1;c[1091192>>2]=a+b;c[1091180>>2]=q;q=a;i=d;return q|0}if((f|0)==(c[1091188>>2]|0)){h=(c[1091176>>2]|0)+j|0;if(h>>>0<b>>>0){q=0;i=d;return q|0}f=h-b|0;if(f>>>0>15){c[e>>2]=g&1|b|2;c[a+(b+4)>>2]=f|1;c[a+h>>2]=f;q=a+(h+4)|0;c[q>>2]=c[q>>2]&-2;b=a+b|0}else{c[e>>2]=g&1|h|2;b=a+(h+4)|0;c[b>>2]=c[b>>2]|1;b=0;f=0}c[1091176>>2]=f;c[1091188>>2]=b;q=a;i=d;return q|0}if((o&2|0)!=0){q=0;i=d;return q|0}h=(o&-8)+j|0;if(h>>>0<b>>>0){q=0;i=d;return q|0}g=h-b|0;n=o>>>3;do{if(!(o>>>0<256)){m=c[a+(j+24)>>2]|0;o=c[a+(j+12)>>2]|0;do{if((o|0)==(f|0)){o=a+(j+20)|0;n=c[o>>2]|0;if((n|0)==0){o=a+(j+16)|0;n=c[o>>2]|0;if((n|0)==0){k=0;break}}while(1){q=n+20|0;p=c[q>>2]|0;if((p|0)!=0){n=p;o=q;continue}q=n+16|0;p=c[q>>2]|0;if((p|0)==0){break}else{n=p;o=q}}if(o>>>0<l>>>0){Ob()}else{c[o>>2]=0;k=n;break}}else{n=c[a+(j+8)>>2]|0;if(n>>>0<l>>>0){Ob()}p=n+12|0;if((c[p>>2]|0)!=(f|0)){Ob()}l=o+8|0;if((c[l>>2]|0)==(f|0)){c[p>>2]=o;c[l>>2]=n;k=o;break}else{Ob()}}}while(0);if((m|0)!=0){l=c[a+(j+28)>>2]|0;n=1091472+(l<<2)|0;if((f|0)==(c[n>>2]|0)){c[n>>2]=k;if((k|0)==0){c[1091172>>2]=c[1091172>>2]&~(1<<l);break}}else{if(m>>>0<(c[1091184>>2]|0)>>>0){Ob()}l=m+16|0;if((c[l>>2]|0)==(f|0)){c[l>>2]=k}else{c[m+20>>2]=k}if((k|0)==0){break}}if(k>>>0<(c[1091184>>2]|0)>>>0){Ob()}c[k+24>>2]=m;f=c[a+(j+16)>>2]|0;do{if((f|0)!=0){if(f>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[k+16>>2]=f;c[f+24>>2]=k;break}}}while(0);f=c[a+(j+20)>>2]|0;if((f|0)!=0){if(f>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[k+20>>2]=f;c[f+24>>2]=k;break}}}}else{k=c[a+(j+8)>>2]|0;j=c[a+(j+12)>>2]|0;o=1091208+(n<<1<<2)|0;if((k|0)!=(o|0)){if(k>>>0<l>>>0){Ob()}if((c[k+12>>2]|0)!=(f|0)){Ob()}}if((j|0)==(k|0)){c[272792]=c[272792]&~(1<<n);break}if((j|0)!=(o|0)){if(j>>>0<l>>>0){Ob()}l=j+8|0;if((c[l>>2]|0)==(f|0)){m=l}else{Ob()}}else{m=j+8|0}c[k+12>>2]=j;c[m>>2]=k}}while(0);if(g>>>0<16){c[e>>2]=h|c[e>>2]&1|2;q=a+(h|4)|0;c[q>>2]=c[q>>2]|1;q=a;i=d;return q|0}else{c[e>>2]=c[e>>2]&1|b|2;c[a+(b+4)>>2]=g|3;q=a+(h|4)|0;c[q>>2]=c[q>>2]|1;Us(a+b|0,g);q=a;i=d;return q|0}return 0}function Us(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,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=i;h=a+b|0;l=c[a+4>>2]|0;do{if((l&1|0)==0){p=c[a>>2]|0;if((l&3|0)==0){i=d;return}l=a+(0-p)|0;m=p+b|0;q=c[1091184>>2]|0;if(l>>>0<q>>>0){Ob()}if((l|0)==(c[1091188>>2]|0)){e=a+(b+4)|0;if((c[e>>2]&3|0)!=3){e=l;n=m;break}c[1091176>>2]=m;c[e>>2]=c[e>>2]&-2;c[a+(4-p)>>2]=m|1;c[h>>2]=m;i=d;return}s=p>>>3;if(p>>>0<256){e=c[a+(8-p)>>2]|0;n=c[a+(12-p)>>2]|0;o=1091208+(s<<1<<2)|0;if((e|0)!=(o|0)){if(e>>>0<q>>>0){Ob()}if((c[e+12>>2]|0)!=(l|0)){Ob()}}if((n|0)==(e|0)){c[272792]=c[272792]&~(1<<s);e=l;n=m;break}if((n|0)!=(o|0)){if(n>>>0<q>>>0){Ob()}o=n+8|0;if((c[o>>2]|0)==(l|0)){r=o}else{Ob()}}else{r=n+8|0}c[e+12>>2]=n;c[r>>2]=e;e=l;n=m;break}r=c[a+(24-p)>>2]|0;t=c[a+(12-p)>>2]|0;do{if((t|0)==(l|0)){u=16-p|0;t=a+(u+4)|0;s=c[t>>2]|0;if((s|0)==0){t=a+u|0;s=c[t>>2]|0;if((s|0)==0){o=0;break}}while(1){u=s+20|0;v=c[u>>2]|0;if((v|0)!=0){s=v;t=u;continue}v=s+16|0;u=c[v>>2]|0;if((u|0)==0){break}else{s=u;t=v}}if(t>>>0<q>>>0){Ob()}else{c[t>>2]=0;o=s;break}}else{s=c[a+(8-p)>>2]|0;if(s>>>0<q>>>0){Ob()}u=s+12|0;if((c[u>>2]|0)!=(l|0)){Ob()}q=t+8|0;if((c[q>>2]|0)==(l|0)){c[u>>2]=t;c[q>>2]=s;o=t;break}else{Ob()}}}while(0);if((r|0)!=0){q=c[a+(28-p)>>2]|0;s=1091472+(q<<2)|0;if((l|0)==(c[s>>2]|0)){c[s>>2]=o;if((o|0)==0){c[1091172>>2]=c[1091172>>2]&~(1<<q);e=l;n=m;break}}else{if(r>>>0<(c[1091184>>2]|0)>>>0){Ob()}q=r+16|0;if((c[q>>2]|0)==(l|0)){c[q>>2]=o}else{c[r+20>>2]=o}if((o|0)==0){e=l;n=m;break}}if(o>>>0<(c[1091184>>2]|0)>>>0){Ob()}c[o+24>>2]=r;p=16-p|0;q=c[a+p>>2]|0;do{if((q|0)!=0){if(q>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[o+16>>2]=q;c[q+24>>2]=o;break}}}while(0);p=c[a+(p+4)>>2]|0;if((p|0)!=0){if(p>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[o+20>>2]=p;c[p+24>>2]=o;e=l;n=m;break}}else{e=l;n=m}}else{e=l;n=m}}else{e=a;n=b}}while(0);l=c[1091184>>2]|0;if(h>>>0<l>>>0){Ob()}m=a+(b+4)|0;o=c[m>>2]|0;if((o&2|0)==0){if((h|0)==(c[1091192>>2]|0)){v=(c[1091180>>2]|0)+n|0;c[1091180>>2]=v;c[1091192>>2]=e;c[e+4>>2]=v|1;if((e|0)!=(c[1091188>>2]|0)){i=d;return}c[1091188>>2]=0;c[1091176>>2]=0;i=d;return}if((h|0)==(c[1091188>>2]|0)){v=(c[1091176>>2]|0)+n|0;c[1091176>>2]=v;c[1091188>>2]=e;c[e+4>>2]=v|1;c[e+v>>2]=v;i=d;return}n=(o&-8)+n|0;m=o>>>3;do{if(!(o>>>0<256)){k=c[a+(b+24)>>2]|0;m=c[a+(b+12)>>2]|0;do{if((m|0)==(h|0)){o=a+(b+20)|0;m=c[o>>2]|0;if((m|0)==0){o=a+(b+16)|0;m=c[o>>2]|0;if((m|0)==0){j=0;break}}while(1){q=m+20|0;p=c[q>>2]|0;if((p|0)!=0){m=p;o=q;continue}p=m+16|0;q=c[p>>2]|0;if((q|0)==0){break}else{m=q;o=p}}if(o>>>0<l>>>0){Ob()}else{c[o>>2]=0;j=m;break}}else{o=c[a+(b+8)>>2]|0;if(o>>>0<l>>>0){Ob()}l=o+12|0;if((c[l>>2]|0)!=(h|0)){Ob()}p=m+8|0;if((c[p>>2]|0)==(h|0)){c[l>>2]=m;c[p>>2]=o;j=m;break}else{Ob()}}}while(0);if((k|0)!=0){l=c[a+(b+28)>>2]|0;m=1091472+(l<<2)|0;if((h|0)==(c[m>>2]|0)){c[m>>2]=j;if((j|0)==0){c[1091172>>2]=c[1091172>>2]&~(1<<l);break}}else{if(k>>>0<(c[1091184>>2]|0)>>>0){Ob()}l=k+16|0;if((c[l>>2]|0)==(h|0)){c[l>>2]=j}else{c[k+20>>2]=j}if((j|0)==0){break}}if(j>>>0<(c[1091184>>2]|0)>>>0){Ob()}c[j+24>>2]=k;h=c[a+(b+16)>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[j+16>>2]=h;c[h+24>>2]=j;break}}}while(0);h=c[a+(b+20)>>2]|0;if((h|0)!=0){if(h>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{c[j+20>>2]=h;c[h+24>>2]=j;break}}}}else{j=c[a+(b+8)>>2]|0;a=c[a+(b+12)>>2]|0;b=1091208+(m<<1<<2)|0;if((j|0)!=(b|0)){if(j>>>0<l>>>0){Ob()}if((c[j+12>>2]|0)!=(h|0)){Ob()}}if((a|0)==(j|0)){c[272792]=c[272792]&~(1<<m);break}if((a|0)!=(b|0)){if(a>>>0<l>>>0){Ob()}b=a+8|0;if((c[b>>2]|0)==(h|0)){k=b}else{Ob()}}else{k=a+8|0}c[j+12>>2]=a;c[k>>2]=j}}while(0);c[e+4>>2]=n|1;c[e+n>>2]=n;if((e|0)==(c[1091188>>2]|0)){c[1091176>>2]=n;i=d;return}}else{c[m>>2]=o&-2;c[e+4>>2]=n|1;c[e+n>>2]=n}a=n>>>3;if(n>>>0<256){b=a<<1;h=1091208+(b<<2)|0;j=c[272792]|0;a=1<<a;if((j&a|0)!=0){b=1091208+(b+2<<2)|0;a=c[b>>2]|0;if(a>>>0<(c[1091184>>2]|0)>>>0){Ob()}else{g=b;f=a}}else{c[272792]=j|a;g=1091208+(b+2<<2)|0;f=h}c[g>>2]=e;c[f+12>>2]=e;c[e+8>>2]=f;c[e+12>>2]=h;i=d;return}f=n>>>8;if((f|0)!=0){if(n>>>0>16777215){f=31}else{u=(f+1048320|0)>>>16&8;v=f<<u;t=(v+520192|0)>>>16&4;v=v<<t;f=(v+245760|0)>>>16&2;f=14-(t|u|f)+(v<<f>>>15)|0;f=n>>>(f+7|0)&1|f<<1}}else{f=0}a=1091472+(f<<2)|0;c[e+28>>2]=f;c[e+20>>2]=0;c[e+16>>2]=0;h=c[1091172>>2]|0;g=1<<f;if((h&g|0)==0){c[1091172>>2]=h|g;c[a>>2]=e;c[e+24>>2]=a;c[e+12>>2]=e;c[e+8>>2]=e;i=d;return}g=c[a>>2]|0;if((f|0)==31){f=0}else{f=25-(f>>>1)|0}a:do{if((c[g+4>>2]&-8|0)!=(n|0)){f=n<<f;a=g;while(1){h=a+(f>>>31<<2)+16|0;g=c[h>>2]|0;if((g|0)==0){break}if((c[g+4>>2]&-8|0)==(n|0)){break a}else{f=f<<1;a=g}}if(h>>>0<(c[1091184>>2]|0)>>>0){Ob()}c[h>>2]=e;c[e+24>>2]=a;c[e+12>>2]=e;c[e+8>>2]=e;i=d;return}}while(0);f=g+8|0;a=c[f>>2]|0;h=c[1091184>>2]|0;if(g>>>0<h>>>0){Ob()}if(a>>>0<h>>>0){Ob()}c[a+12>>2]=e;c[f>>2]=e;c[e+8>>2]=a;c[e+12>>2]=g;c[e+24>>2]=0;i=d;return}function Vs(a){a=a|0;var b=0,d=0;b=i;d=(a|0)==0?1:a;while(1){a=Ps(d)|0;if((a|0)!=0){d=6;break}a=c[272918]|0;c[272918]=a+0;if((a|0)==0){d=5;break}kc[a&1]()}if((d|0)==5){d=Ta(4)|0;c[d>>2]=1091688;Rb(d|0,1091736,197)}else if((d|0)==6){i=b;return a|0}return 0}function Ws(a,b){a=a|0;b=b|0;var c=0;c=i;b=Vs(a)|0;i=c;return b|0}function Xs(a){a=a|0;var b=0;b=i;a=Vs(a)|0;i=b;return a|0}function Ys(a){a=a|0;var b=0;b=i;if((a|0)!=0){Qs(a)}i=b;return}function Zs(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function _s(a){a=a|0;var b=0;b=i;Gb(a|0);Ys(a);i=b;return}function $s(a){a=a|0;var b=0;b=i;Gb(a|0);i=b;return}function at(a){a=a|0;return 1091704}function bt(){var a=0;a=Ta(4)|0;c[a>>2]=1091688;Rb(a|0,1091736,197)}function ct(a){a=a|0;return(a+-48|0)>>>0<10|0}function dt(a){a=a|0;if((a|0)==32){a=1}else{a=(a+-9|0)>>>0<5}return a&1|0}function et(a){a=a|0;return(a+-65|0)>>>0<26|0}function ft(a){a=a|0;var b=0,c=0;c=i;b=(et(a)|0)==0;i=c;return(b?a:a|32)|0}function gt(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;if(e>>>0>36){c[(Eb()|0)>>2]=22;s=0;t=0;I=s;i=j;return t|0}k=b+4|0;l=b+100|0;do{m=c[k>>2]|0;if(m>>>0<(c[l>>2]|0)>>>0){c[k>>2]=m+1;o=d[m>>0]|0}else{o=kt(b)|0}}while((dt(o)|0)!=0);do{if((o|0)==43|(o|0)==45){m=((o|0)==45)<<31>>31;n=c[k>>2]|0;if(n>>>0<(c[l>>2]|0)>>>0){c[k>>2]=n+1;o=d[n>>0]|0;break}else{o=kt(b)|0;break}}else{m=0}}while(0);n=(e|0)==0;do{if((e&-17|0)==0&(o|0)==48){o=c[k>>2]|0;if(o>>>0<(c[l>>2]|0)>>>0){c[k>>2]=o+1;o=d[o>>0]|0}else{o=kt(b)|0}if((o|32|0)!=120){f=n?8:e;e=32;break}e=c[k>>2]|0;if(e>>>0<(c[l>>2]|0)>>>0){c[k>>2]=e+1;o=d[e>>0]|0}else{o=kt(b)|0}if((d[o+1091753>>0]|0)>15){l=(c[l>>2]|0)==0;if(!l){c[k>>2]=(c[k>>2]|0)+-1}if((f|0)==0){jt(b,0);s=0;t=0;I=s;i=j;return t|0}if(l){s=0;t=0;I=s;i=j;return t|0}c[k>>2]=(c[k>>2]|0)+-1;s=0;t=0;I=s;i=j;return t|0}else{f=16;e=47}}else{f=n?10:e;if((d[o+1091753>>0]|0)>>>0<f>>>0){e=32}else{if((c[l>>2]|0)!=0){c[k>>2]=(c[k>>2]|0)+-1}jt(b,0);c[(Eb()|0)>>2]=22;s=0;t=0;I=s;i=j;return t|0}}}while(0);if((e|0)==32){if((f|0)==10){f=o+-48|0;if(f>>>0<10){n=0;while(1){n=n+f|0;f=c[k>>2]|0;if(f>>>0<(c[l>>2]|0)>>>0){c[k>>2]=f+1;o=d[f>>0]|0}else{o=kt(b)|0}f=o+-48|0;if(!(f>>>0<10&n>>>0<429496729)){break}n=n*10|0}p=0}else{n=0;p=0}f=o+-48|0;if(f>>>0<10){do{q=Vt(n|0,p|0,10,0)|0;s=I;r=((f|0)<0)<<31>>31;t=~r;if(s>>>0>t>>>0|(s|0)==(t|0)&q>>>0>~f>>>0){break}n=Jt(q|0,s|0,f|0,r|0)|0;p=I;f=c[k>>2]|0;if(f>>>0<(c[l>>2]|0)>>>0){c[k>>2]=f+1;o=d[f>>0]|0}else{o=kt(b)|0}f=o+-48|0}while(f>>>0<10&(p>>>0<429496729|(p|0)==429496729&n>>>0<2576980378));if(!(f>>>0>9)){f=10;e=73}}}else{e=47}}a:do{if((e|0)==47){if((f+-1&f|0)==0){e=a[1092016+((f*23|0)>>>5&7)>>0]|0;r=a[o+1091753>>0]|0;n=r&255;if(n>>>0<f>>>0){o=n;n=0;do{n=o|n<<e;o=c[k>>2]|0;if(o>>>0<(c[l>>2]|0)>>>0){c[k>>2]=o+1;s=d[o>>0]|0}else{s=kt(b)|0}r=a[s+1091753>>0]|0;o=r&255}while(o>>>0<f>>>0&n>>>0<134217728);p=0}else{p=0;n=0;s=o}o=Kt(-1,-1,e|0)|0;q=I;if((r&255)>>>0>=f>>>0|(p>>>0>q>>>0|(p|0)==(q|0)&n>>>0>o>>>0)){o=s;e=73;break}while(1){n=Mt(n|0,p|0,e|0)|0;p=I;n=r&255|n;r=c[k>>2]|0;if(r>>>0<(c[l>>2]|0)>>>0){c[k>>2]=r+1;s=d[r>>0]|0}else{s=kt(b)|0}r=a[s+1091753>>0]|0;if((r&255)>>>0>=f>>>0|(p>>>0>q>>>0|(p|0)==(q|0)&n>>>0>o>>>0)){o=s;e=73;break a}}}r=a[o+1091753>>0]|0;e=r&255;if(e>>>0<f>>>0){n=0;do{n=e+(ea(n,f)|0)|0;e=c[k>>2]|0;if(e>>>0<(c[l>>2]|0)>>>0){c[k>>2]=e+1;q=d[e>>0]|0}else{q=kt(b)|0}r=a[q+1091753>>0]|0;e=r&255}while(e>>>0<f>>>0&n>>>0<119304647);p=0}else{n=0;p=0;q=o}if((r&255)>>>0<f>>>0){o=Wt(-1,-1,f|0,0)|0;e=I;while(1){if(p>>>0>e>>>0|(p|0)==(e|0)&n>>>0>o>>>0){o=q;e=73;break a}s=Vt(n|0,p|0,f|0,0)|0;t=I;r=r&255;if(t>>>0>4294967295|(t|0)==-1&s>>>0>~r>>>0){o=q;e=73;break a}n=Jt(r|0,0,s|0,t|0)|0;p=I;q=c[k>>2]|0;if(q>>>0<(c[l>>2]|0)>>>0){c[k>>2]=q+1;q=d[q>>0]|0}else{q=kt(b)|0}r=a[q+1091753>>0]|0;if(!((r&255)>>>0<f>>>0)){o=q;e=73;break}}}else{o=q;e=73}}}while(0);if((e|0)==73){if((d[o+1091753>>0]|0)>>>0<f>>>0){do{e=c[k>>2]|0;if(e>>>0<(c[l>>2]|0)>>>0){c[k>>2]=e+1;e=d[e>>0]|0}else{e=kt(b)|0}}while((d[e+1091753>>0]|0)>>>0<f>>>0);c[(Eb()|0)>>2]=34;p=h;n=g}}if((c[l>>2]|0)!=0){c[k>>2]=(c[k>>2]|0)+-1}if(!(p>>>0<h>>>0|(p|0)==(h|0)&n>>>0<g>>>0)){if((g&1|0)==0&0==0&(m|0)==0){c[(Eb()|0)>>2]=34;t=Jt(g|0,h|0,-1,-1)|0;s=I;I=s;i=j;return t|0}if(p>>>0>h>>>0|(p|0)==(h|0)&n>>>0>g>>>0){c[(Eb()|0)>>2]=34;s=h;t=g;I=s;i=j;return t|0}}t=((m|0)<0)<<31>>31;t=Ht(n^m|0,p^t|0,m|0,t|0)|0;s=I;I=s;i=j;return t|0}function ht(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0;g=i;i=i+512|0;k=g;if((e|0)==0){e=24;h=-149}else if((e|0)==2){e=53;h=-1074}else if((e|0)==1){e=53;h=-1074}else{L=0;i=g;return+L}n=b+4|0;o=b+100|0;do{j=c[n>>2]|0;if(j>>>0<(c[o>>2]|0)>>>0){c[n>>2]=j+1;w=d[j>>0]|0}else{w=kt(b)|0}}while((dt(w)|0)!=0);do{if((w|0)==43|(w|0)==45){j=1-(((w|0)==45&1)<<1)|0;m=c[n>>2]|0;if(m>>>0<(c[o>>2]|0)>>>0){c[n>>2]=m+1;w=d[m>>0]|0;break}else{w=kt(b)|0;break}}else{j=1}}while(0);m=0;do{if((w|32|0)!=(a[1092032+m>>0]|0)){break}do{if(m>>>0<7){p=c[n>>2]|0;if(p>>>0<(c[o>>2]|0)>>>0){c[n>>2]=p+1;w=d[p>>0]|0;break}else{w=kt(b)|0;break}}}while(0);m=m+1|0}while(m>>>0<8);do{if((m|0)==3){q=23}else if((m|0)!=8){p=(f|0)==0;if(!(m>>>0<4|p)){if((m|0)==8){break}else{q=23;break}}a:do{if((m|0)==0){m=0;do{if((w|32|0)!=(a[1092048+m>>0]|0)){break a}do{if(m>>>0<2){s=c[n>>2]|0;if(s>>>0<(c[o>>2]|0)>>>0){c[n>>2]=s+1;w=d[s>>0]|0;break}else{w=kt(b)|0;break}}}while(0);m=m+1|0}while(m>>>0<3)}}while(0);if((m|0)==0){do{if((w|0)==48){m=c[n>>2]|0;if(m>>>0<(c[o>>2]|0)>>>0){c[n>>2]=m+1;m=d[m>>0]|0}else{m=kt(b)|0}if((m|32|0)!=120){if((c[o>>2]|0)==0){w=48;break}c[n>>2]=(c[n>>2]|0)+-1;w=48;break}k=c[n>>2]|0;if(k>>>0<(c[o>>2]|0)>>>0){c[n>>2]=k+1;A=d[k>>0]|0;w=0}else{A=kt(b)|0;w=0}while(1){if((A|0)==46){q=70;break}else if((A|0)!=48){k=0;m=0;t=0;s=0;v=0;z=0;H=1;u=0;r=0;break}k=c[n>>2]|0;if(k>>>0<(c[o>>2]|0)>>>0){c[n>>2]=k+1;A=d[k>>0]|0;w=1;continue}else{A=kt(b)|0;w=1;continue}}b:do{if((q|0)==70){k=c[n>>2]|0;if(k>>>0<(c[o>>2]|0)>>>0){c[n>>2]=k+1;A=d[k>>0]|0}else{A=kt(b)|0}if((A|0)==48){t=-1;s=-1;while(1){k=c[n>>2]|0;if(k>>>0<(c[o>>2]|0)>>>0){c[n>>2]=k+1;A=d[k>>0]|0}else{A=kt(b)|0}if((A|0)!=48){k=0;m=0;w=1;v=1;z=0;H=1;u=0;r=0;break b}J=Jt(t|0,s|0,-1,-1)|0;t=J;s=I}}else{k=0;m=0;t=0;s=0;v=1;z=0;H=1;u=0;r=0}}}while(0);c:while(1){D=A+-48|0;do{if(!(D>>>0<10)){B=A|32;C=(A|0)==46;if(!((B+-97|0)>>>0<6|C)){break c}if(C){if((v|0)==0){t=m;s=k;v=1;break}else{A=46;break c}}else{D=(A|0)>57?B+-87|0:D;q=84;break}}else{q=84}}while(0);if((q|0)==84){q=0;do{if(!((k|0)<0|(k|0)==0&m>>>0<8)){if((k|0)<0|(k|0)==0&m>>>0<14){L=H*.0625;K=L;r=r+L*+(D|0);break}if((D|0)!=0&(z|0)==0){z=1;K=H;r=r+H*.5}else{K=H}}else{K=H;u=D+(u<<4)|0}}while(0);m=Jt(m|0,k|0,1,0)|0;k=I;w=1;H=K}A=c[n>>2]|0;if(A>>>0<(c[o>>2]|0)>>>0){c[n>>2]=A+1;A=d[A>>0]|0;continue}else{A=kt(b)|0;continue}}if((w|0)==0){e=(c[o>>2]|0)==0;if(!e){c[n>>2]=(c[n>>2]|0)+-1}if(!p){if(!e?(l=c[n>>2]|0,c[n>>2]=l+-1,(v|0)!=0):0){c[n>>2]=l+-2}}else{jt(b,0)}L=+(j|0)*0;i=g;return+L}q=(v|0)==0;l=q?m:t;q=q?k:s;if((k|0)<0|(k|0)==0&m>>>0<8){do{u=u<<4;m=Jt(m|0,k|0,1,0)|0;k=I}while((k|0)<0|(k|0)==0&m>>>0<8)}do{if((A|32|0)==112){m=it(b,f)|0;k=I;if((m|0)==0&(k|0)==-2147483648){if(p){jt(b,0);L=0;i=g;return+L}else{if((c[o>>2]|0)==0){m=0;k=0;break}c[n>>2]=(c[n>>2]|0)+-1;m=0;k=0;break}}}else{if((c[o>>2]|0)==0){m=0;k=0}else{c[n>>2]=(c[n>>2]|0)+-1;m=0;k=0}}}while(0);l=Mt(l|0,q|0,2)|0;l=Jt(l|0,I|0,-32,-1)|0;k=Jt(l|0,I|0,m|0,k|0)|0;l=I;if((u|0)==0){L=+(j|0)*0;i=g;return+L}if((l|0)>0|(l|0)==0&k>>>0>(0-h|0)>>>0){c[(Eb()|0)>>2]=34;L=+(j|0)*1.7976931348623157e308*1.7976931348623157e308;i=g;return+L}J=h+-106|0;G=((J|0)<0)<<31>>31;if((l|0)<(G|0)|(l|0)==(G|0)&k>>>0<J>>>0){c[(Eb()|0)>>2]=34;L=+(j|0)*2.2250738585072014e-308*2.2250738585072014e-308;i=g;return+L}if((u|0)>-1){do{u=u<<1;if(!(r>=.5)){H=r}else{H=r+-1;u=u|1}r=r+H;k=Jt(k|0,l|0,-1,-1)|0;l=I}while((u|0)>-1)}h=Ht(32,0,h|0,((h|0)<0)<<31>>31|0)|0;h=Jt(k|0,l|0,h|0,I|0)|0;J=I;if(0>(J|0)|0==(J|0)&e>>>0>h>>>0){e=(h|0)<0?0:h}do{if((e|0)<53){H=+(j|0);K=+Mb(+ +nt(1,84-e|0),+H);if(!((e|0)<32&r!=0)){break}J=u&1;u=(J^1)+u|0;r=(J|0)==0?0:r}else{H=+(j|0);K=0}}while(0);r=H*r+(K+H*+(u>>>0))-K;if(!(r!=0)){c[(Eb()|0)>>2]=34}L=+ot(r,k);i=g;return+L}}while(0);m=h+e|0;l=0-m|0;D=0;while(1){if((w|0)==46){q=139;break}else if((w|0)!=48){G=0;C=0;A=0;break}s=c[n>>2]|0;if(s>>>0<(c[o>>2]|0)>>>0){c[n>>2]=s+1;w=d[s>>0]|0;D=1;continue}else{w=kt(b)|0;D=1;continue}}d:do{if((q|0)==139){s=c[n>>2]|0;if(s>>>0<(c[o>>2]|0)>>>0){c[n>>2]=s+1;w=d[s>>0]|0}else{w=kt(b)|0}if((w|0)==48){G=-1;C=-1;while(1){s=c[n>>2]|0;if(s>>>0<(c[o>>2]|0)>>>0){c[n>>2]=s+1;w=d[s>>0]|0}else{w=kt(b)|0}if((w|0)!=48){D=1;A=1;break d}J=Jt(G|0,C|0,-1,-1)|0;G=J;C=I}}else{G=0;C=0;A=1}}}while(0);c[k>>2]=0;
+B=w+-48|0;F=(w|0)==46;e:do{if(B>>>0<10|F){s=k+496|0;E=0;z=0;v=0;u=0;t=0;while(1){do{if(F){if((A|0)==0){G=E;C=z;A=1}else{s=G;break e}}else{F=Jt(E|0,z|0,1,0)|0;z=I;J=(w|0)!=48;if((u|0)>=125){if(!J){E=F;break}c[s>>2]=c[s>>2]|1;E=F;break}D=k+(u<<2)|0;if((v|0)!=0){B=w+-48+((c[D>>2]|0)*10|0)|0}c[D>>2]=B;v=v+1|0;B=(v|0)==9;E=F;D=1;v=B?0:v;u=(B&1)+u|0;t=J?F:t}}while(0);w=c[n>>2]|0;if(w>>>0<(c[o>>2]|0)>>>0){c[n>>2]=w+1;w=d[w>>0]|0}else{w=kt(b)|0}B=w+-48|0;F=(w|0)==46;if(!(B>>>0<10|F)){q=162;break}}}else{E=0;z=0;v=0;u=0;t=0;q=162}}while(0);if((q|0)==162){J=(A|0)==0;s=J?E:G;C=J?z:C}q=(D|0)!=0;if(q?(w|32|0)==101:0){w=it(b,f)|0;f=I;do{if((w|0)==0&(f|0)==-2147483648){if(p){jt(b,0);L=0;i=g;return+L}else{if((c[o>>2]|0)==0){w=0;f=0;break}c[n>>2]=(c[n>>2]|0)+-1;w=0;f=0;break}}}while(0);n=Jt(w|0,f|0,s|0,C|0)|0;C=I}else{if((w|0)>-1?(c[o>>2]|0)!=0:0){c[n>>2]=(c[n>>2]|0)+-1;n=s}else{n=s}}if(!q){c[(Eb()|0)>>2]=22;jt(b,0);L=0;i=g;return+L}b=c[k>>2]|0;if((b|0)==0){L=+(j|0)*0;i=g;return+L}do{if((n|0)==(E|0)&(C|0)==(z|0)&((z|0)<0|(z|0)==0&E>>>0<10)){if(!(e>>>0>30)?(b>>>e|0)!=0:0){break}L=+(j|0)*+(b>>>0);i=g;return+L}}while(0);J=(h|0)/-2|0;G=((J|0)<0)<<31>>31;if((C|0)>(G|0)|(C|0)==(G|0)&n>>>0>J>>>0){c[(Eb()|0)>>2]=34;L=+(j|0)*1.7976931348623157e308*1.7976931348623157e308;i=g;return+L}J=h+-106|0;G=((J|0)<0)<<31>>31;if((C|0)<(G|0)|(C|0)==(G|0)&n>>>0<J>>>0){c[(Eb()|0)>>2]=34;L=+(j|0)*2.2250738585072014e-308*2.2250738585072014e-308;i=g;return+L}if((v|0)!=0){if((v|0)<9){o=k+(u<<2)|0;b=c[o>>2]|0;do{b=b*10|0;v=v+1|0}while((v|0)!=9);c[o>>2]=b}u=u+1|0}do{if((t|0)<9?(t|0)<=(n|0)&(n|0)<18:0){if((n|0)==9){L=+(j|0)*+((c[k>>2]|0)>>>0);i=g;return+L}if((n|0)<9){L=+(j|0)*+((c[k>>2]|0)>>>0)/+(c[1092064+(8-n<<2)>>2]|0);i=g;return+L}J=e+27+(ea(n,-3)|0)|0;b=c[k>>2]|0;if((J|0)<=30?(b>>>J|0)!=0:0){break}L=+(j|0)*+(b>>>0)*+(c[1092064+(n+-10<<2)>>2]|0);i=g;return+L}}while(0);b=(n|0)%9|0;if((b|0)==0){b=0;o=0}else{f=(n|0)>-1?b:b+9|0;p=c[1092064+(8-f<<2)>>2]|0;if((u|0)!=0){q=1e9/(p|0)|0;b=0;o=0;s=0;do{F=k+(s<<2)|0;G=c[F>>2]|0;J=((G>>>0)/(p>>>0)|0)+o|0;c[F>>2]=J;o=ea((G>>>0)%(p>>>0)|0,q)|0;G=s;s=s+1|0;if((G|0)==(b|0)&(J|0)==0){b=s&127;n=n+-9|0}}while((s|0)!=(u|0));if((o|0)!=0){c[k+(u<<2)>>2]=o;u=u+1|0}}else{b=0;u=0}o=0;n=9-f+n|0}f:while(1){f=k+(b<<2)|0;if((n|0)<18){do{q=0;f=u+127|0;while(1){f=f&127;p=k+(f<<2)|0;s=Mt(c[p>>2]|0,0,29)|0;s=Jt(s|0,I|0,q|0,0)|0;q=I;if(q>>>0>0|(q|0)==0&s>>>0>1e9){J=Wt(s|0,q|0,1e9,0)|0;s=Xt(s|0,q|0,1e9,0)|0;q=J}else{q=0}c[p>>2]=s;p=(f|0)==(b|0);if(!((f|0)!=(u+127&127|0)|p)){u=(s|0)==0?f:u}if(p){break}else{f=f+-1|0}}o=o+-29|0}while((q|0)==0)}else{if((n|0)!=18){break}do{if(!((c[f>>2]|0)>>>0<9007199)){n=18;break f}q=0;p=u+127|0;while(1){p=p&127;s=k+(p<<2)|0;t=Mt(c[s>>2]|0,0,29)|0;t=Jt(t|0,I|0,q|0,0)|0;q=I;if(q>>>0>0|(q|0)==0&t>>>0>1e9){J=Wt(t|0,q|0,1e9,0)|0;t=Xt(t|0,q|0,1e9,0)|0;q=J}else{q=0}c[s>>2]=t;s=(p|0)==(b|0);if(!((p|0)!=(u+127&127|0)|s)){u=(t|0)==0?p:u}if(s){break}else{p=p+-1|0}}o=o+-29|0}while((q|0)==0)}b=b+127&127;if((b|0)==(u|0)){J=u+127&127;u=k+((u+126&127)<<2)|0;c[u>>2]=c[u>>2]|c[k+(J<<2)>>2];u=J}c[k+(b<<2)>>2]=q;n=n+9|0}g:while(1){f=u+1&127;p=k+((u+127&127)<<2)|0;while(1){s=(n|0)==18;q=(n|0)>27?9:1;while(1){t=0;while(1){v=t+b&127;if((v|0)==(u|0)){t=2;break}w=c[k+(v<<2)>>2]|0;z=c[1092056+(t<<2)>>2]|0;if(w>>>0<z>>>0){t=2;break}v=t+1|0;if(w>>>0>z>>>0){break}if((v|0)<2){t=v}else{t=v;break}}if((t|0)==2&s){break g}o=q+o|0;if((b|0)==(u|0)){b=u}else{break}}s=(1<<q)+-1|0;w=1e9>>>q;v=b;t=0;do{F=k+(b<<2)|0;G=c[F>>2]|0;J=(G>>>q)+t|0;c[F>>2]=J;t=ea(G&s,w)|0;J=(b|0)==(v|0)&(J|0)==0;b=b+1&127;n=J?n+-9|0:n;v=J?b:v}while((b|0)!=(u|0));if((t|0)==0){b=v;continue}if((f|0)!=(v|0)){break}c[p>>2]=c[p>>2]|1;b=v}c[k+(u<<2)>>2]=t;b=v;u=f}n=b&127;if((n|0)==(u|0)){c[k+(f+-1<<2)>>2]=0;u=f}H=+((c[k+(n<<2)>>2]|0)>>>0);n=b+1&127;if((n|0)==(u|0)){u=u+1&127;c[k+(u+-1<<2)>>2]=0}r=+(j|0);K=r*(H*1e9+ +((c[k+(n<<2)>>2]|0)>>>0));j=o+53|0;h=j-h|0;if((h|0)<(e|0)){e=(h|0)<0?0:h;n=1}else{n=0}if((e|0)<53){N=+Mb(+ +nt(1,105-e|0),+K);M=+_b(+K,+ +nt(1,53-e|0));H=N;L=M;K=N+(K-M)}else{H=0;L=0}f=b+2&127;do{if((f|0)!=(u|0)){k=c[k+(f<<2)>>2]|0;do{if(!(k>>>0<5e8)){if(k>>>0>5e8){L=r*.75+L;break}if((b+3&127|0)==(u|0)){L=r*.5+L;break}else{L=r*.75+L;break}}else{if((k|0)==0?(b+3&127|0)==(u|0):0){break}L=r*.25+L}}while(0);if((53-e|0)<=1){break}if(+_b(+L,1)!=0){break}L=L+1}}while(0);r=K+L-H;do{if((j&2147483647|0)>(-2-m|0)){if(+T(+r)>=9007199254740992){n=(n|0)!=0&(e|0)==(h|0)?0:n;o=o+1|0;r=r*.5}if((o+50|0)<=(l|0)?!((n|0)!=0&L!=0):0){break}c[(Eb()|0)>>2]=34}}while(0);N=+ot(r,o);i=g;return+N}else if((m|0)==3){e=c[n>>2]|0;if(e>>>0<(c[o>>2]|0)>>>0){c[n>>2]=e+1;e=d[e>>0]|0}else{e=kt(b)|0}if((e|0)==40){e=1}else{if((c[o>>2]|0)==0){N=x;i=g;return+N}c[n>>2]=(c[n>>2]|0)+-1;N=x;i=g;return+N}while(1){h=c[n>>2]|0;if(h>>>0<(c[o>>2]|0)>>>0){c[n>>2]=h+1;h=d[h>>0]|0}else{h=kt(b)|0}if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h+-97|0)>>>0<26|(h|0)==95):0){break}e=e+1|0}if((h|0)==41){N=x;i=g;return+N}h=(c[o>>2]|0)==0;if(!h){c[n>>2]=(c[n>>2]|0)+-1}if(p){c[(Eb()|0)>>2]=22;jt(b,0);N=0;i=g;return+N}if((e|0)==0|h){N=x;i=g;return+N}do{e=e+-1|0;c[n>>2]=(c[n>>2]|0)+-1}while((e|0)!=0);r=x;i=g;return+r}else{if((c[o>>2]|0)!=0){c[n>>2]=(c[n>>2]|0)+-1}c[(Eb()|0)>>2]=22;jt(b,0);N=0;i=g;return+N}}}while(0);if((q|0)==23){e=(c[o>>2]|0)==0;if(!e){c[n>>2]=(c[n>>2]|0)+-1}if(!(m>>>0<4|(f|0)==0|e)){do{c[n>>2]=(c[n>>2]|0)+-1;m=m+-1|0}while(m>>>0>3)}}N=+(j|0)*y;i=g;return+N}function it(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;g=a+4|0;h=c[g>>2]|0;f=a+100|0;if(h>>>0<(c[f>>2]|0)>>>0){c[g>>2]=h+1;j=d[h>>0]|0}else{j=kt(a)|0}if((j|0)==43|(j|0)==45){h=(j|0)==45&1;j=c[g>>2]|0;if(j>>>0<(c[f>>2]|0)>>>0){c[g>>2]=j+1;j=d[j>>0]|0}else{j=kt(a)|0}if(!((j+-48|0)>>>0<10|(b|0)==0)?(c[f>>2]|0)!=0:0){c[g>>2]=(c[g>>2]|0)+-1}}else{h=0}if((j+-48|0)>>>0>9){if((c[f>>2]|0)==0){j=-2147483648;k=0;I=j;i=e;return k|0}c[g>>2]=(c[g>>2]|0)+-1;j=-2147483648;k=0;I=j;i=e;return k|0}else{b=0}while(1){b=j+-48+b|0;j=c[g>>2]|0;if(j>>>0<(c[f>>2]|0)>>>0){c[g>>2]=j+1;j=d[j>>0]|0}else{j=kt(a)|0}if(!((j+-48|0)>>>0<10&(b|0)<214748364)){break}b=b*10|0}k=((b|0)<0)<<31>>31;if((j+-48|0)>>>0<10){do{k=Vt(b|0,k|0,10,0)|0;b=I;j=Jt(j|0,((j|0)<0)<<31>>31|0,-48,-1)|0;b=Jt(j|0,I|0,k|0,b|0)|0;k=I;j=c[g>>2]|0;if(j>>>0<(c[f>>2]|0)>>>0){c[g>>2]=j+1;j=d[j>>0]|0}else{j=kt(a)|0}}while((j+-48|0)>>>0<10&((k|0)<21474836|(k|0)==21474836&b>>>0<2061584302))}if((j+-48|0)>>>0<10){do{j=c[g>>2]|0;if(j>>>0<(c[f>>2]|0)>>>0){c[g>>2]=j+1;j=d[j>>0]|0}else{j=kt(a)|0}}while((j+-48|0)>>>0<10)}if((c[f>>2]|0)!=0){c[g>>2]=(c[g>>2]|0)+-1}g=(h|0)!=0;h=Ht(0,0,b|0,k|0)|0;j=g?I:k;k=g?h:b;I=j;i=e;return k|0}function jt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;c[a+104>>2]=b;f=c[a+8>>2]|0;e=c[a+4>>2]|0;g=f-e|0;c[a+108>>2]=g;if((b|0)!=0&(g|0)>(b|0)){c[a+100>>2]=e+b;i=d;return}else{c[a+100>>2]=f;i=d;return}}function kt(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;f=i;j=b+104|0;l=c[j>>2]|0;if(!((l|0)!=0?(c[b+108>>2]|0)>=(l|0):0)){k=3}if((k|0)==3?(e=tt(b)|0,(e|0)>=0):0){k=c[j>>2]|0;j=c[b+8>>2]|0;if((k|0)!=0?(g=c[b+4>>2]|0,h=k-(c[b+108>>2]|0)+-1|0,(j-g|0)>(h|0)):0){c[b+100>>2]=g+h}else{c[b+100>>2]=j}g=c[b+4>>2]|0;if((j|0)!=0){l=b+108|0;c[l>>2]=j+1-g+(c[l>>2]|0)}b=g+-1|0;if((d[b>>0]|0|0)==(e|0)){l=e;i=f;return l|0}a[b>>0]=e;l=e;i=f;return l|0}c[b+100>>2]=0;l=-1;i=f;return l|0}function lt(a,b){a=+a;b=b|0;var d=0,e=0,f=0,g=0;d=i;h[k>>3]=a;f=c[k>>2]|0;g=c[k+4>>2]|0;e=Kt(f|0,g|0,52)|0;e=e&2047;if((e|0)==2047){i=d;return+a}else if((e|0)==0){if(a!=0){a=+lt(a*0x10000000000000000,b);e=(c[b>>2]|0)+-64|0}else{e=0}c[b>>2]=e;i=d;return+a}else{c[b>>2]=e+-1022;c[k>>2]=f;c[k+4>>2]=g&-2146435073|1071644672;a=+h[k>>3];i=d;return+a}return 0}function mt(a,b){a=+a;b=b|0;var c=0;c=i;a=+lt(a,b);i=c;return+a}function nt(a,b){a=+a;b=b|0;var d=0,e=0;d=i;if((b|0)>1023){a=a*8.98846567431158e307;e=b+-1023|0;if((e|0)>1023){b=b+-2046|0;b=(b|0)>1023?1023:b;a=a*8.98846567431158e307}else{b=e}}else{if((b|0)<-1022){a=a*2.2250738585072014e-308;e=b+1022|0;if((e|0)<-1022){b=b+2044|0;b=(b|0)<-1022?-1022:b;a=a*2.2250738585072014e-308}else{b=e}}}b=Mt(b+1023|0,0,52)|0;e=I;c[k>>2]=b;c[k+4>>2]=e;a=a*+h[k>>3];i=d;return+a}function ot(a,b){a=+a;b=b|0;var c=0;c=i;a=+nt(a,b);i=c;return+a}function pt(a,b){a=a|0;b=b|0;var c=0;c=i;if((a|0)==0){a=0}else{a=qt(a,b,0)|0}i=c;return a|0}function qt(b,d,e){b=b|0;d=d|0;e=e|0;e=i;if((b|0)==0){b=1;i=e;return b|0}if(d>>>0<128){a[b>>0]=d;b=1;i=e;return b|0}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;i=e;return b|0}if(d>>>0<55296|(d+-57344|0)>>>0<8192){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;i=e;return b|0}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;i=e;return b|0}else{c[(Eb()|0)>>2]=84;b=-1;i=e;return b|0}return 0}function rt(b){b=b|0;var d=0,e=0,f=0;e=i;f=b+74|0;d=a[f>>0]|0;a[f>>0]=d+255|d;f=b+20|0;d=b+44|0;if((c[f>>2]|0)>>>0>(c[d>>2]|0)>>>0){ac[c[b+36>>2]&31](b,0,0)|0}c[b+16>>2]=0;c[b+28>>2]=0;c[f>>2]=0;f=c[b>>2]|0;if((f&20|0)==0){f=c[d>>2]|0;c[b+8>>2]=f;c[b+4>>2]=f;f=0;i=e;return f|0}if((f&4|0)==0){f=-1;i=e;return f|0}c[b>>2]=f|32;f=-1;i=e;return f|0}function st(b){b=b|0;var d=0,e=0,f=0;d=i;e=b+74|0;f=a[e>>0]|0;a[e>>0]=f+255|f;e=c[b>>2]|0;if((e&8|0)==0){c[b+8>>2]=0;c[b+4>>2]=0;f=c[b+44>>2]|0;c[b+28>>2]=f;c[b+20>>2]=f;c[b+16>>2]=f+(c[b+48>>2]|0);f=0;i=d;return f|0}else{c[b>>2]=e|32;f=-1;i=d;return f|0}return 0}function tt(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;if((c[a+8>>2]|0)==0?(rt(a)|0)!=0:0){a=-1}else{if((ac[c[a+32>>2]&31](a,e,1)|0)==1){a=d[e>>0]|0}else{a=-1}}i=b;return a|0}function ut(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;g=e+16|0;j=c[g>>2]|0;do{if((j|0)==0){if((st(e)|0)==0){j=c[g>>2]|0;break}else{k=0;i=f;return k|0}}}while(0);g=e+20|0;h=c[g>>2]|0;if((j-h|0)>>>0<d>>>0){k=ac[c[e+36>>2]&31](e,b,d)|0;i=f;return k|0}a:do{if((a[e+75>>0]|0)>-1){j=d;while(1){if((j|0)==0){j=0;break a}k=j+-1|0;if((a[b+k>>0]|0)==10){break}else{j=k}}if((ac[c[e+36>>2]&31](e,b,j)|0)>>>0<j>>>0){k=j;i=f;return k|0}else{d=d-j|0;b=b+j|0;h=c[g>>2]|0;break}}else{j=0}}while(0);Nt(h|0,b|0,d|0)|0;c[g>>2]=(c[g>>2]|0)+d;k=j+d|0;i=f;return k|0}function vt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;e=yt(a,b,d,g)|0;i=f;return e|0}function wt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+224|0;j=e+120|0;g=e+80|0;f=e;h=e+136|0;k=g+0|0;l=k+40|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));c[j>>2]=c[d>>2];if((xt(0,b,j,f,g)|0)<0){o=-1;i=e;return o|0}k=a+48|0;if((c[k>>2]|0)==0){o=a+44|0;d=c[o>>2]|0;c[o>>2]=h;m=a+28|0;c[m>>2]=h;l=a+20|0;c[l>>2]=h;c[k>>2]=80;n=a+16|0;c[n>>2]=h+80;f=xt(a,b,j,f,g)|0;if((d|0)!=0){ac[c[a+36>>2]&31](a,0,0)|0;f=(c[l>>2]|0)==0?-1:f;c[o>>2]=d;c[k>>2]=0;c[n>>2]=0;c[m>>2]=0;c[l>>2]=0}}else{f=xt(a,b,j,f,g)|0}o=f;i=e;return o|0}function Ne(e){e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,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,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;f=i;i=i+16|0;r=f;j=c[e+2216>>2]|0;g=e+2220|0;k=c[(c[g>>2]|0)+36>>2]|0;h=uf(e,j+792|0,j+804|0)|0;l=c[h+12>>2]|0;if((l|0)!=0){jb=pc[c[(c[l>>2]|0)+12>>2]&63](l,e)|0;jb=jb+17|0;i=f;return jb|0}l=(b[h+8>>1]|0)*65537|0;j=Ag(e,j+828|0)|0;p=c[j+8>>2]|0;q=(ea((p+32768&-65536|0)/65536|0,c[1003224>>2]|0)|0)/256|0;p=(ea((p&32767)-(p&32768)|0,c[1003228>>2]|0)|0)/256|0;U=Ng(e,0,0)|0;T=I;s=e+1296|0;H=33824+(c[s>>2]<<3)|0;J=c[H>>2]|0;H=c[H+4>>2]|0;x=j+48|0;y=c[x>>2]|0;x=c[x+4>>2]|0;if((c[e+356>>2]|0)!=0?(c[(c[g>>2]|0)+16>>2]|0)>2719:0){_=Kt(J|0,H|0,8)|0;_=_|J;$=I|H;m=y&J;n=x&H;if((m|0)==0&(n|0)==0){Ma=0}else{jb=m-(m>>>1&1431655765)|0;Ma=Kt(m|0,n|0,33)|0;Ma=n-(Ma&1431655765)|0;Ma=(ea((Ma&858993459)+(jb&858993459)+(jb>>>2&858993459)+(Ma>>>2&858993459)|0,286331153)|0)>>>28}}else{_=0;$=0;Ma=0}L=Ng(e,1,1)|0;K=I;t=e+784|0;M=c[t>>2]|0;V=33824+(M<<3)|0;W=c[V>>2]|0;V=c[V+4>>2]|0;z=j+56|0;A=c[z>>2]|0;z=c[z+4>>2]|0;if((c[e+388>>2]|0)!=0?(c[(c[g>>2]|0)+20>>2]|0)>2719:0){X=Mt(W|0,V|0,8)|0;X=X|W;Y=I|V;n=A&W;m=z&V;if((n|0)==0&(m|0)==0){Ga=0}else{jb=n-(n>>>1&1431655765)|0;Ga=Kt(n|0,m|0,33)|0;Ga=m-(Ga&1431655765)|0;Ga=(ea((Ga&858993459)+(jb&858993459)+(jb>>>2&858993459)+(Ga>>>2&858993459)|0,286331153)|0)>>>28}}else{Ga=0;X=0;Y=0}Va=W|y;Na=V|x;Ia=A|J;Ha=z|H;n=e+320|0;qa=n;ra=c[qa>>2]|0;qa=c[qa+4>>2]|0;o=e+264|0;pa=o;sa=c[pa>>2]|0;pa=c[pa+4>>2]|0;aa=e+304|0;ba=c[aa>>2]|sa;aa=c[aa+4>>2]|pa;ia=~(ba&ra|A);ha=~(aa&qa|z);m=e+328|0;ta=m;ua=c[ta>>2]|0;ta=c[ta+4>>2]|0;ba=~(ba&ua|y);aa=~(aa&ta|x);ga=c[e+528>>2]|0;if((ga|0)==64){u=0;N=0;O=0;Ja=0;Ka=0;La=0}else{ca=e+272|0;G=e+280|0;fa=ua&sa;da=ta&pa;w=c[250796]|0;v=c[1003128>>2]|0;N=0;O=0;Ka=0;Ja=0;La=0;u=0;va=e+532|0;while(1){Oa=31776+(ga<<3)|0;Fa=c[Oa>>2]|0;Oa=c[Oa+4>>2]|0;wa=29920+(ga<<3)|0;Ea=c[wa>>2]|0;wa=c[wa+4>>2]|0;if(!((Ea&U|0)==0&(wa&T|0)==0)){jb=71712+(M<<9)+(ga<<3)|0;Fa=c[jb>>2]&Fa;Oa=c[jb+4>>2]&Oa}N=Fa|N;O=Oa|O;Va=N|Va;Na=O|Na;if(!((Fa&_|0)==0&(Oa&$|0)==0)){Ma=Ma+1|0;Ka=Ka+2|0;Qa=Fa&J;Pa=Oa&H;if(!((Qa|0)==0&(Pa|0)==0)){ib=Qa-(Qa>>>1&1431655765)|0;jb=Kt(Qa|0,Pa|0,33)|0;jb=Pa-(jb&1431655765)|0;Ja=((ea((jb&858993459)+(ib&858993459)+(ib>>>2&858993459)+(jb>>>2&858993459)|0,286331153)|0)>>>28)+Ja|0}}jb=Fa&ia;hb=Oa&ha;ib=jb-(jb>>>1&1431655765)|0;jb=Kt(jb|0,hb|0,33)|0;jb=hb-(jb&1431655765)|0;La=(c[1002544+((ea((jb&858993459)+(ib&858993459)+(ib>>>2&858993459)+(jb>>>2&858993459)|0,286331153)|0)>>>28<<2)>>2]|0)+La|0;u=u-((Ea&A|0)==0&(wa&z|0)==0?0:v)|0;jb=110624+(ga<<3)|0;if((fa&c[jb>>2]|0)==0?(da&c[jb+4>>2]|0)==0:0){Fa=c[1003952+(ga<<2)>>2]|0;do{if((Fa|0)!=0){if(!((Ea&y|0)==0&(wa&x|0)==0)){jb=ca;if(((c[jb>>2]&ua|0)==0?(c[jb+4>>2]&ta|0)==0:0)?(ib=(Ea&-1437226411|0)!=0|(wa&-1437226411|0)!=0,jb=G,((ib?-1437226411:1437226410)&ua&c[jb>>2]|0)==0?((ib?-1437226411:1437226410)&ta&c[jb+4>>2]|0)==0:0):0){Fa=((Fa|0)/2|0)+(Fa<<1)|0;break}Fa=((Fa|0)/2|0)+Fa|0}}else{Fa=0}}while(0);u=(Fa*65537|0)+u|0}if((ga>>3|0)<4){jb=29920+(ga+8<<3)|0;u=(((c[jb>>2]&sa|0)==0?(c[jb+4>>2]&pa|0)==0:0)?0:w)+u|0}ga=c[va>>2]|0;if((ga|0)==64){break}else{va=va+4|0}}}Pa=c[e+1040>>2]|0;if((Pa|0)==64){w=0;da=0;ca=0;Oa=0;Ea=0;Fa=0}else{va=e+272|0;wa=e+280|0;fa=sa&ra;v=pa&qa;G=c[250796]|0;ga=c[1003128>>2]|0;da=0;ca=0;Ea=0;Oa=0;Fa=0;w=0;Qa=e+1044|0;while(1){Ua=31776+(Pa<<3)|0;Ta=c[Ua>>2]|0;Ua=c[Ua+4>>2]|0;Ra=29920+(Pa<<3)|0;Sa=c[Ra>>2]|0;Ra=c[Ra+4>>2]|0;if(!((Sa&L|0)==0&(Ra&K|0)==0)){jb=71712+(c[s>>2]<<9)+(Pa<<3)|0;Ta=c[jb>>2]&Ta;Ua=c[jb+4>>2]&Ua}da=Ta|da;ca=Ua|ca;Ia=da|Ia;Ha=ca|Ha;if(!((Ta&X|0)==0&(Ua&Y|0)==0)){Ga=Ga+1|0;Ea=Ea+2|0;Wa=Ta&W;Xa=Ua&V;if(!((Wa|0)==0&(Xa|0)==0)){ib=Wa-(Wa>>>1&1431655765)|0;jb=Kt(Wa|0,Xa|0,33)|0;jb=Xa-(jb&1431655765)|0;Oa=((ea((jb&858993459)+(ib&858993459)+(ib>>>2&858993459)+(jb>>>2&858993459)|0,286331153)|0)>>>28)+Oa|0}}jb=Ta&ba;hb=Ua&aa;ib=jb-(jb>>>1&1431655765)|0;jb=Kt(jb|0,hb|0,33)|0;jb=hb-(jb&1431655765)|0;Fa=(c[1002544+((ea((jb&858993459)+(ib&858993459)+(ib>>>2&858993459)+(jb>>>2&858993459)|0,286331153)|0)>>>28<<2)>>2]|0)+Fa|0;w=w-((Sa&y|0)==0&(Ra&x|0)==0?0:ga)|0;jb=111136+(Pa<<3)|0;if((fa&c[jb>>2]|0)==0?(v&c[jb+4>>2]|0)==0:0){Ta=c[1003952+((Pa^56)<<2)>>2]|0;do{if((Ta|0)!=0){if(!((Sa&A|0)==0&(Ra&z|0)==0)){jb=va;if(((c[jb>>2]&ra|0)==0?(c[jb+4>>2]&qa|0)==0:0)?(ib=(Sa&-1437226411|0)!=0|(Ra&-1437226411|0)!=0,jb=wa,((ib?-1437226411:1437226410)&ra&c[jb>>2]|0)==0?((ib?-1437226411:1437226410)&qa&c[jb+4>>2]|0)==0:0):0){Ta=((Ta|0)/2|0)+(Ta<<1)|0;break}Ta=((Ta|0)/2|0)+Ta|0}}else{Ta=0}}while(0);w=(Ta*65537|0)+w|0}if((Pa>>3^7|0)<4){jb=29920+(Pa+-8<<3)|0;w=(((c[jb>>2]&sa|0)==0?(c[jb+4>>2]&pa|0)==0:0)?0:G)+w|0}Pa=c[Qa>>2]|0;if((Pa|0)==64){break}else{Qa=Qa+4|0}}}v=e+592|0;Za=c[v>>2]|0;if((Za|0)==64){G=0;fa=0;ga=0}else{Pa=e+272|0;wa=e+280|0;Wa=e+256|0;Ra=e+296|0;Xa=c[Ra>>2]&ra^c[Wa>>2];Wa=c[Ra+4>>2]&qa^c[Wa+4>>2];Ra=c[250794]|0;Sa=ua&sa;Ta=ta&pa;va=c[250796]|0;Ya=(a[e+2224>>0]|0)==0;Ua=c[250802]|0;Qa=c[1003132>>2]|0;fa=0;ga=0;G=0;_a=e+596|0;while(1){bb=28384+(Za<<3)|0;cb=28896+(Za<<3)|0;cb=(ea(c[bb+4>>2]&Wa,c[cb+4>>2]|0)|0)^(ea(c[bb>>2]&Xa,c[cb>>2]|0)|0);cb=(c[29408+(Za<<2)>>2]|0)+(cb>>>(c[29664+(Za<<2)>>2]|0)<<3)|0;bb=c[cb>>2]|0;cb=c[cb+4>>2]|0;$a=29920+(Za<<3)|0;ab=c[$a>>2]|0;$a=c[$a+4>>2]|0;if(!((ab&U|0)==0&($a&T|0)==0)){jb=71712+(M<<9)+(Za<<3)|0;bb=c[jb>>2]&bb;cb=c[jb+4>>2]&cb}fa=bb|fa;ga=cb|ga;Va=fa|Va;Na=ga|Na;if(!((bb&_|0)==0&(cb&$|0)==0)){Ma=Ma+1|0;Ka=Ka+2|0;eb=bb&J;db=cb&H;if(!((eb|0)==0&(db|0)==0)){ib=eb-(eb>>>1&1431655765)|0;jb=Kt(eb|0,db|0,33)|0;jb=db-(jb&1431655765)|0;Ja=((ea((jb&858993459)+(ib&858993459)+(ib>>>2&858993459)+(jb>>>2&858993459)|0,286331153)|0)>>>28)+Ja|0}}bb=bb&ia;ib=cb&ha;jb=bb-(bb>>>1&1431655765)|0;bb=Kt(bb|0,ib|0,33)|0;bb=ib-(bb&1431655765)|0;La=(c[1002672+((ea((bb&858993459)+(jb&858993459)+(jb>>>2&858993459)+(bb>>>2&858993459)|0,286331153)|0)>>>28<<2)>>2]|0)+La|0;bb=(ab&-1437226411|0)!=0|($a&-1437226411|0)!=0;G=G-((ab&A|0)==0&($a&z|0)==0?0:Qa)-(ea(c[j+((bb&1)<<2)+104>>2]|0,Ra)|0)|0;jb=110624+(Za<<3)|0;if((Sa&c[jb>>2]|0)==0?(Ta&c[jb+4>>2]|0)==0:0){cb=c[1004208+(Za<<2)>>2]|0;do{if((cb|0)!=0){if(!((ab&y|0)==0&($a&x|0)==0)){jb=Pa;if(((c[jb>>2]&ua|0)==0?(c[jb+4>>2]&ta|0)==0:0)?(jb=wa,((bb?-1437226411:1437226410)&ua&c[jb>>2]|0)==0?((bb?-1437226411:1437226410)&ta&c[jb+4>>2]|0)==0:0):0){cb=((cb|0)/2|0)+(cb<<1)|0;break}cb=((cb|0)/2|0)+cb|0}}else{cb=0}}while(0);G=(cb*65537|0)+G|0}if((Za>>3|0)<4){jb=29920+(Za+8<<3)|0;G=(((c[jb>>2]&sa|0)==0?(c[jb+4>>2]&pa|0)==0:0)?0:va)+G|0}if((!Ya?(Za|0)==7|(Za|0)==0:0)?(Z=(Za&7|0)==0?9:7,F=Z+Za|0,(c[e+(F<<2)>>2]|0)==1):0){if((c[e+(F+8<<2)>>2]|0)==0){Za=(c[e+(F+Z<<2)>>2]|0)==1&1}else{Za=2}G=G-(Ua<<Za)|0}Za=c[_a>>2]|0;if((Za|0)==64){break}else{_a=_a+4|0}}}F=e+1104|0;ab=c[F>>2]|0;if((ab|0)==64){Z=0;va=0;wa=0;Da=Oa}else{Qa=e+272|0;Ra=e+280|0;Ya=e+256|0;$a=e+296|0;Xa=c[$a>>2]&ua^c[Ya>>2];Ya=c[$a+4>>2]&ta^c[Ya+4>>2];$a=c[250794]|0;_a=sa&ra;Za=pa&qa;Sa=c[250796]|0;Ta=(a[e+2224>>0]|0)==0;Ua=c[250802]|0;Pa=c[1003132>>2]|0;Z=0;Wa=e+1108|0;va=0;wa=0;while(1){db=28384+(ab<<3)|0;eb=28896+(ab<<3)|0;eb=(ea(c[db+4>>2]&Ya,c[eb+4>>2]|0)|0)^(ea(c[db>>2]&Xa,c[eb>>2]|0)|0);eb=(c[29408+(ab<<2)>>2]|0)+(eb>>>(c[29664+(ab<<2)>>2]|0)<<3)|0;db=c[eb>>2]|0;eb=c[eb+4>>2]|0;cb=29920+(ab<<3)|0;bb=c[cb>>2]|0;cb=c[cb+4>>2]|0;if(!((bb&L|0)==0&(cb&K|0)==0)){jb=71712+(c[s>>2]<<9)+(ab<<3)|0;db=c[jb>>2]&db;eb=c[jb+4>>2]&eb}va=db|va;wa=eb|wa;Ia=va|Ia;Ha=wa|Ha;if(!((db&X|0)==0&(eb&Y|0)==0)){Ga=Ga+1|0;Ea=Ea+2|0;fb=db&W;gb=eb&V;if(!((fb|0)==0&(gb|0)==0)){ib=fb-(fb>>>1&1431655765)|0;jb=Kt(fb|0,gb|0,33)|0;jb=gb-(jb&1431655765)|0;Oa=((ea((jb&858993459)+(ib&858993459)+(ib>>>2&858993459)+(jb>>>2&858993459)|0,286331153)|0)>>>28)+Oa|0}}db=db&ba;ib=eb&aa;jb=db-(db>>>1&1431655765)|0;db=Kt(db|0,ib|0,33)|0;db=ib-(db&1431655765)|0;Fa=(c[1002672+((ea((db&858993459)+(jb&858993459)+(jb>>>2&858993459)+(db>>>2&858993459)|0,286331153)|0)>>>28<<2)>>2]|0)+Fa|0;db=(bb&-1437226411|0)!=0|(cb&-1437226411|0)!=0;Z=Z-((bb&y|0)==0&(cb&x|0)==0?0:Pa)-(ea(c[j+((db&1)<<2)+112>>2]|0,$a)|0)|0;jb=111136+(ab<<3)|0;if((_a&c[jb>>2]|0)==0?(Za&c[jb+4>>2]|0)==0:0){eb=c[1004208+((ab^56)<<2)>>2]|0;do{if((eb|0)!=0){if(!((bb&A|0)==0&(cb&z|0)==0)){jb=Qa;if(((c[jb>>2]&ra|0)==0?(c[jb+4>>2]&qa|0)==0:0)?(jb=Ra,((db?-1437226411:1437226410)&ra&c[jb>>2]|0)==0?((db?-1437226411:1437226410)&qa&c[jb+4>>2]|0)==0:0):0){eb=((eb|0)/2|0)+(eb<<1)|0;break}eb=((eb|0)/2|0)+eb|0}}else{eb=0}}while(0);Z=(eb*65537|0)+Z|0}if((ab>>3^7|0)<4){jb=29920+(ab+-8<<3)|0;Z=(((c[jb>>2]&sa|0)==0?(c[jb+4>>2]&pa|0)==0:0)?0:Sa)+Z|0}if((!Ta?(ab|0)==63|(ab|0)==56:0)?(oa=(ab&7|0)==0?-7:-9,Da=oa+ab|0,(c[e+(Da<<2)>>2]|0)==9):0){if((c[e+(Da+-8<<2)>>2]|0)==0){ab=(c[e+(Da+oa<<2)>>2]|0)==9&1}else{ab=2}Z=Z-(Ua<<ab)|0}ab=c[Wa>>2]|0;if((ab|0)==64){Da=Oa;break}else{Wa=Wa+4|0}}}oa=c[e+656>>2]|0;if((oa|0)!=64){eb=e+660|0;Ua=j+100|0;Xa=e+256|0;Ra=e+288|0;_a=e+296|0;Oa=(c[_a>>2]|c[Ra>>2])&ra^c[Xa>>2];Xa=(c[_a+4>>2]|c[Ra+4>>2])&qa^c[Xa+4>>2];Ra=c[250788]|0;_a=c[j+96>>2]|0;Pa=c[250798]|0;Ta=c[250790]|0;Sa=c[250792]|0;$a=c[1003136>>2]|0;Qa=ua&sa;Ya=ta&pa;ab=M&7;bb=ab>>>0<4;cb=M>>3;Wa=(1<<ab)+-1|0;Za=-1<<ab+1;if((cb|0)==0){za=oa;xa=0;ya=0;oa=0;cb=eb;while(1){fb=26848+(za<<3)|0;gb=27360+(za<<3)|0;gb=(ea(c[fb+4>>2]&Xa,c[gb+4>>2]|0)|0)^(ea(c[fb>>2]&Oa,c[gb>>2]|0)|0);gb=(c[27872+(za<<2)>>2]|0)+(gb>>>(c[28128+(za<<2)>>2]|0)<<3)|0;fb=c[gb>>2]|0;gb=c[gb+4>>2]|0;db=29920+(za<<3)|0;eb=c[db>>2]|0;db=c[db+4>>2]|0;if(!((eb&U|0)==0&(db&T|0)==0)){jb=71712+(M<<9)+(za<<3)|0;fb=c[jb>>2]&fb;gb=c[jb+4>>2]&gb}xa=fb|xa;ya=gb|ya;Va=xa|Va;Na=ya|Na;if(!((fb&_|0)==0&(gb&$|0)==0)){Ma=Ma+1|0;Ka=Ka+3|0;hb=fb&J;ib=gb&H;if(!((hb|0)==0&(ib|0)==0)){kb=hb-(hb>>>1&1431655765)|0;jb=Kt(hb|0,ib|0,33)|0;jb=ib-(jb&1431655765)|0;Ja=((ea((jb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(jb>>>2&858993459)|0,286331153)|0)>>>28)+Ja|0}}jb=fb&ia;kb=gb&ha;fb=jb-(jb>>>1&1431655765)|0;gb=Kt(jb|0,kb|0,33)|0;gb=kb-(gb&1431655765)|0;gb=ea((gb&858993459)+(fb&858993459)+(fb>>>2&858993459)+(gb>>>2&858993459)|0,286331153)|0;fb=gb>>>28;La=(c[1002800+(fb<<2)>>2]|0)+La|0;oa=oa-((eb&A|0)==0&(db&z|0)==0?0:$a)|0;if((za>>3|0)>3?(Aa=113696+(za<<3)|0,Ba=Qa&c[Aa>>2],Aa=Ya&c[Aa+4>>2],!((Ba|0)==0&(Aa|0)==0)):0){jb=Ba-(Ba>>>1&1431655765)|0;kb=Kt(Ba|0,Aa|0,33)|0;kb=Aa-(kb&1431655765)|0;oa=(ea((ea((kb&858993459)+(jb&858993459)+(jb>>>2&858993459)+(kb>>>2&858993459)|0,286331153)|0)>>>28,Ra)|0)+oa|0}za=za&7;db=1<<za;if((db&_a|0)==0){if((!(gb>>>0>1073741823)?(Ca=za>>>0<ab>>>0,!(bb^Ca)):0)?((Ca?Wa:Za)&_a|0)==0:0){oa=oa-(ea((c[(c[g>>2]|0)+24>>2]&3|0)==0?2:1,Pa-(fb<<19)|0)|0)|0}}else{oa=((c[Ua>>2]&db|0)!=0?Ta:Sa)+oa|0}za=c[cb>>2]|0;if((za|0)==64){break}else{cb=cb+4|0}}}else{Aa=oa;db=0;Ca=0;oa=0;Ba=eb;while(1){gb=26848+(Aa<<3)|0;hb=27360+(Aa<<3)|0;hb=(ea(c[gb+4>>2]&Xa,c[hb+4>>2]|0)|0)^(ea(c[gb>>2]&Oa,c[hb>>2]|0)|0);hb=(c[27872+(Aa<<2)>>2]|0)+(hb>>>(c[28128+(Aa<<2)>>2]|0)<<3)|0;gb=c[hb>>2]|0;hb=c[hb+4>>2]|0;eb=29920+(Aa<<3)|0;fb=c[eb>>2]|0;eb=c[eb+4>>2]|0;if(!((fb&U|0)==0&(eb&T|0)==0)){kb=71712+(M<<9)+(Aa<<3)|0;gb=c[kb>>2]&gb;hb=c[kb+4>>2]&hb}db=gb|db;Ca=hb|Ca;Va=db|Va;Na=Ca|Na;if(!((gb&_|0)==0&(hb&$|0)==0)){Ma=Ma+1|0;Ka=Ka+3|0;jb=gb&J;ib=hb&H;if(!((jb|0)==0&(ib|0)==0)){lb=jb-(jb>>>1&1431655765)|0;kb=Kt(jb|0,ib|0,33)|0;kb=ib-(kb&1431655765)|0;Ja=((ea((kb&858993459)+(lb&858993459)+(lb>>>2&858993459)+(kb>>>2&858993459)|0,286331153)|0)>>>28)+Ja|0}}gb=gb&ia;lb=hb&ha;hb=gb-(gb>>>1&1431655765)|0;gb=Kt(gb|0,lb|0,33)|0;gb=lb-(gb&1431655765)|0;gb=ea((gb&858993459)+(hb&858993459)+(hb>>>2&858993459)+(gb>>>2&858993459)|0,286331153)|0;hb=gb>>>28;La=(c[1002800+(hb<<2)>>2]|0)+La|0;oa=oa-((fb&A|0)==0&(eb&z|0)==0?0:$a)|0;eb=Aa>>3;if((eb|0)>3?(xa=113696+(Aa<<3)|0,ya=Qa&c[xa>>2],xa=Ya&c[xa+4>>2],!((ya|0)==0&(xa|0)==0)):0){kb=ya-(ya>>>1&1431655765)|0;lb=Kt(ya|0,xa|0,33)|0;lb=xa-(lb&1431655765)|0;oa=(ea((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28,Ra)|0)+oa|0}fb=Aa&7;Aa=1<<fb;if((Aa&_a|0)==0){if((!(gb>>>0>1073741823)?(za=fb>>>0<ab>>>0,(cb|0)==(eb|0)&(bb^za^1)):0)?((za?Wa:Za)&_a|0)==0:0){oa=oa-(ea((c[(c[g>>2]|0)+24>>2]&3|0)==0?2:1,Pa-(hb<<19)|0)|0)|0}}else{oa=((c[Ua>>2]&Aa|0)!=0?Ta:Sa)+oa|0}Aa=c[Ba>>2]|0;if((Aa|0)==64){xa=db;ya=Ca;break}else{Ba=Ba+4|0}}}}else{oa=0;xa=0;ya=0}Sa=c[e+1168>>2]|0;if((Sa|0)==64){ja=0;za=e+256|0;la=0;ma=0}else{za=e+256|0;Aa=j+96|0;Pa=za;Oa=e+288|0;Ca=e+296|0;ua=(c[Ca>>2]|c[Oa>>2])&ua^c[Pa>>2];ta=(c[Ca+4>>2]|c[Oa+4>>2])&ta^c[Pa+4>>2];Pa=c[250788]|0;Oa=c[j+100>>2]|0;Ca=c[250798]|0;Qa=c[250790]|0;Ra=c[250792]|0;Ba=c[1003136>>2]|0;ra=sa&ra;pa=pa&qa;qa=Sa;Ta=0;Sa=0;Xa=0;sa=e+1172|0;while(1){Ya=26848+(qa<<3)|0;Za=27360+(qa<<3)|0;Za=(ea(c[Ya+4>>2]&ta,c[Za+4>>2]|0)|0)^(ea(c[Ya>>2]&ua,c[Za>>2]|0)|0);Za=(c[27872+(qa<<2)>>2]|0)+(Za>>>(c[28128+(qa<<2)>>2]|0)<<3)|0;Ya=c[Za>>2]|0;Za=c[Za+4>>2]|0;Wa=29920+(qa<<3)|0;Ua=c[Wa>>2]|0;Wa=c[Wa+4>>2]|0;if(!((Ua&L|0)==0&(Wa&K|0)==0)){lb=71712+(c[s>>2]<<9)+(qa<<3)|0;Ya=c[lb>>2]&Ya;Za=c[lb+4>>2]&Za}Ta=Ya|Ta;Sa=Za|Sa;Ia=Ta|Ia;Ha=Sa|Ha;if(!((Ya&X|0)==0&(Za&Y|0)==0)){Ga=Ga+1|0;Ea=Ea+3|0;$a=Ya&W;_a=Za&V;if(!(($a|0)==0&(_a|0)==0)){kb=$a-($a>>>1&1431655765)|0;lb=Kt($a|0,_a|0,33)|0;lb=_a-(lb&1431655765)|0;Da=((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)+Da|0}}kb=Ya&ba;lb=Za&aa;Ya=kb-(kb>>>1&1431655765)|0;Za=Kt(kb|0,lb|0,33)|0;Za=lb-(Za&1431655765)|0;Za=ea((Za&858993459)+(Ya&858993459)+(Ya>>>2&858993459)+(Za>>>2&858993459)|0,286331153)|0;Ya=Za>>>28;Fa=(c[1002800+(Ya<<2)>>2]|0)+Fa|0;Xa=Xa-((Ua&y|0)==0&(Wa&x|0)==0?0:Ba)|0;Ua=qa>>3;if((Ua^7|0)>3?(na=113696+(qa<<3)|0,ma=ra&c[na>>2],na=pa&c[na+4>>2],!((ma|0)==0&(na|0)==0)):0){kb=ma-(ma>>>1&1431655765)|0;lb=Kt(ma|0,na|0,33)|0;lb=na-(lb&1431655765)|0;Xa=(ea((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28,Pa)|0)+Xa|0}qa=qa&7;Wa=1<<qa;do{if((Wa&Oa|0)==0){if((!(Za>>>0>1073741823)?(la=c[s>>2]|0,ja=la&7,ka=qa>>>0<ja>>>0,!(ja>>>0<4^ka)):0)?(lb=la>>3,(lb|0)==(Ua|0)|(lb|0)==7):0){if(ka){qa=(1<<ja)+-1|0}else{qa=-1<<ja+1}if((qa&Oa|0)!=0){break}Xa=Xa-(ea((c[(c[g>>2]|0)+24>>2]&12|0)==0?2:1,Ca-(Ya<<19)|0)|0)|0}}else{Xa=((c[Aa>>2]&Wa|0)!=0?Qa:Ra)+Xa|0}}while(0);qa=c[sa>>2]|0;if((qa|0)==64){ja=Xa;la=Ta;ma=Sa;break}else{sa=sa+4|0}}}pa=va|da;na=wa|ca;sa=~(la|pa)&ia;ta=~(ma|na)&ha;Aa=c[1003140>>2]|0;ha=0;ia=Va;ka=Na;ra=0;qa=0;ua=e+720|0;a:while(1){do{Pa=ua;ua=ua+4|0;Pa=c[Pa>>2]|0;if((Pa|0)==64){break a}lb=za;Na=c[lb>>2]|0;lb=c[lb+4>>2]|0;Ba=26848+(Pa<<3)|0;Oa=27360+(Pa<<3)|0;Oa=(ea(c[Ba+4>>2]&lb,c[Oa+4>>2]|0)|0)^(ea(c[Ba>>2]&Na,c[Oa>>2]|0)|0);Oa=(c[27872+(Pa<<2)>>2]|0)+(Oa>>>(c[28128+(Pa<<2)>>2]|0)<<3)|0;Ba=28384+(Pa<<3)|0;Ca=28896+(Pa<<3)|0;Ca=(ea(c[Ba+4>>2]&lb,c[Ca+4>>2]|0)|0)^(ea(c[Ba>>2]&Na,c[Ca>>2]|0)|0);Ca=(c[29408+(Pa<<2)>>2]|0)+(Ca>>>(c[29664+(Pa<<2)>>2]|0)<<3)|0;Na=c[Ca>>2]|c[Oa>>2];Oa=c[Ca+4>>2]|c[Oa+4>>2];Ca=29920+(Pa<<3)|0;Ba=c[Ca>>2]|0;Ca=c[Ca+4>>2]|0;if(!((Ba&U|0)==0&(Ca&T|0)==0)){lb=71712+(M<<9)+(Pa<<3)|0;Na=c[lb>>2]&Na;Oa=c[lb+4>>2]&Oa}ra=Na|ra;qa=Oa|qa;ia=ra|ia;ka=qa|ka;if(!((Na&_|0)==0&(Oa&$|0)==0)){Ma=Ma+1|0;Ka=Ka+5|0;Qa=Na&J;Pa=Oa&H;if(!((Qa|0)==0&(Pa|0)==0)){kb=Qa-(Qa>>>1&1431655765)|0;lb=Kt(Qa|0,Pa|0,33)|0;lb=Pa-(lb&1431655765)|0;Ja=((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)+Ja|0}}lb=sa&Na;jb=ta&Oa;kb=lb-(lb>>>1&1431655765)|0;lb=Kt(lb|0,jb|0,33)|0;lb=jb-(lb&1431655765)|0;kb=(kb>>>2&858993459)+(kb&858993459)|0;lb=(lb>>>2&858993459)+(lb&858993459)|0;La=(c[1002928+((ea(lb+kb+(kb>>>4)+(lb>>>4)&252645135,16843009)|0)>>>24<<2)>>2]|0)+La|0}while((Ba&A|0)==0&(Ca&z|0)==0);ha=ha-Aa|0}ua=fa|N;ta=ga|O;Ba=~(xa|ua)&ba;Ca=~(ya|ta)&aa;_=0;$=Ia;aa=Ha;sa=0;ba=0;Ha=e+1232|0;b:while(1){do{Qa=Ha;Ha=Ha+4|0;Qa=c[Qa>>2]|0;if((Qa|0)==64){break b}lb=za;Oa=c[lb>>2]|0;lb=c[lb+4>>2]|0;Ia=26848+(Qa<<3)|0;Pa=27360+(Qa<<3)|0;Pa=(ea(c[Ia+4>>2]&lb,c[Pa+4>>2]|0)|0)^(ea(c[Ia>>2]&Oa,c[Pa>>2]|0)|0);Pa=(c[27872+(Qa<<2)>>2]|0)+(Pa>>>(c[28128+(Qa<<2)>>2]|0)<<3)|0;Ia=28384+(Qa<<3)|0;Na=28896+(Qa<<3)|0;Na=(ea(c[Ia+4>>2]&lb,c[Na+4>>2]|0)|0)^(ea(c[Ia>>2]&Oa,c[Na>>2]|0)|0);Na=(c[29408+(Qa<<2)>>2]|0)+(Na>>>(c[29664+(Qa<<2)>>2]|0)<<3)|0;Oa=c[Na>>2]|c[Pa>>2];Pa=c[Na+4>>2]|c[Pa+4>>2];Na=29920+(Qa<<3)|0;Ia=c[Na>>2]|0;Na=c[Na+4>>2]|0;if(!((Ia&L|0)==0&(Na&K|0)==0)){lb=71712+(c[s>>2]<<9)+(Qa<<3)|0;Oa=c[lb>>2]&Oa;Pa=c[lb+4>>2]&Pa}sa=Oa|sa;ba=Pa|ba;$=sa|$;aa=ba|aa;if(!((Oa&X|0)==0&(Pa&Y|0)==0)){Ga=Ga+1|0;Ea=Ea+5|0;Qa=Oa&W;Ra=Pa&V;if(!((Qa|0)==0&(Ra|0)==0)){kb=Qa-(Qa>>>1&1431655765)|0;lb=Kt(Qa|0,Ra|0,33)|0;lb=Ra-(lb&1431655765)|0;Da=((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)+Da|0}}lb=Ba&Oa;jb=Ca&Pa;kb=lb-(lb>>>1&1431655765)|0;lb=Kt(lb|0,jb|0,33)|0;lb=jb-(lb&1431655765)|0;kb=(kb>>>2&858993459)+(kb&858993459)|0;lb=(lb>>>2&858993459)+(lb&858993459)|0;Fa=(c[1002928+((ea(lb+kb+(kb>>>4)+(lb>>>4)&252645135,16843009)|0)>>>24<<2)>>2]|0)+Fa|0}while((Ia&y|0)==0&(Na&x|0)==0);_=_-Aa|0}Y=La-Fa|0;X=(ea((Y+32768&-65536|0)/65536|0,c[250804]|0)|0)/256|0;Y=(ea(c[1003220>>2]|0,(Y&32767)-(Y&32768)|0)|0)/256|0;if((c[j+64>>2]|0)==(M|0)?(c[j+88>>2]|0)==(c[(c[g>>2]|0)+24>>2]&3|0):0){za=c[j+72>>2]|0}else{za=vg(j,e,M)|0;c[j+72>>2]=za}if((Ga|0)==0){M=za}else{W=W&~(N|y|fa|xa|ra)&$;V=V&~(O|x|ga|ya|qa)&aa;Ba=(ea(Ga,Ea)|0)/2|0;Ea=W-(W>>>1&1431655765)|0;Aa=Kt(W|0,V|0,33)|0;Aa=V-(Aa&1431655765)|0;Da=((((ea((Aa&858993459)+(Ea&858993459)+(Ea>>>2&858993459)+(Aa>>>2&858993459)|0,286331153)|0)>>>28)+Da|0)*3|0)+((((U|0)!=0|(T|0)!=0)&1)<<1)+((za+32768&-65536|0)/-2097152|0)+((Ba|0)<20?Ba:20)|0;T=m;U=c[T>>2]|0;T=c[T+4>>2]|0;Ba=~U;Aa=~T;Ea=sa&W&Ba;Ca=ba&V&Aa;if(!((Ea|0)==0&(Ca|0)==0)?(R=Ea&(da|A|va|la),S=Ca&(ca|z|wa|ma),!((R|0)==0&(S|0)==0)):0){kb=R-(R>>>1&1431655765)|0;lb=Kt(R|0,S|0,33)|0;lb=S-(lb&1431655765)|0;Da=(((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)*24|0)+Da|0}S=113696+(M<<3)|0;R=W&la&Ba&c[S>>2];S=V&ma&Aa&c[S+4>>2];if(!((R|0)==0&(S|0)==0)?(P=R&(da|A|va|sa),Q=S&(ca|z|wa|ba),!((P|0)==0&(Q|0)==0)):0){kb=P-(P>>>1&1431655765)|0;lb=Kt(P|0,Q|0,33)|0;lb=Q-(lb&1431655765)|0;Da=((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28<<4)+Da|0}Q=~(U|ia);P=~(T|ka);W=e+256|0;S=c[W>>2]|0;W=c[W+4>>2]|0;U=26848+(M<<3)|0;T=27360+(M<<3)|0;T=(ea(c[U+4>>2]&W,c[T+4>>2]|0)|0)^(ea(c[U>>2]&S,c[T>>2]|0)|0);T=(c[27872+(M<<2)>>2]|0)+(T>>>(c[28128+(M<<2)>>2]|0)<<3)|0;U=c[T>>2]&Q;T=c[T+4>>2]&P;V=28384+(M<<3)|0;R=28896+(M<<3)|0;R=(ea(c[V+4>>2]&W,c[R+4>>2]|0)|0)^(ea(c[V>>2]&S,c[R>>2]|0)|0);R=(c[29408+(M<<2)>>2]|0)+(R>>>(c[29664+(M<<2)>>2]|0)<<3)|0;S=c[R>>2]&Q;R=c[R+4>>2]&P;V=(S|U)&sa;W=(R|T)&ba;if(!((V|0)==0&(W|0)==0)){kb=V-(V>>>1&1431655765)|0;lb=Kt(V|0,W|0,33)|0;lb=W-(lb&1431655765)|0;Da=(((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)*12|0)+Da|0}U=U&la;T=T&ma;if(!((U|0)==0&(T|0)==0)){kb=U-(U>>>1&1431655765)|0;lb=Kt(U|0,T|0,33)|0;lb=T-(lb&1431655765)|0;Da=Da+((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28<<3)|0}S=S&va;R=R&wa;if(!((S|0)==0&(R|0)==0)){kb=S-(S>>>1&1431655765)|0;lb=Kt(S|0,R|0,33)|0;lb=R-(lb&1431655765)|0;Da=Da+((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28<<1)|0}lb=31776+(M<<3)|0;M=da&Q&c[lb>>2];P=ca&P&c[lb+4>>2];if(!((M|0)==0&(P|0)==0)){kb=M-(M>>>1&1431655765)|0;lb=Kt(M|0,P|0,33)|0;lb=P-(lb&1431655765)|0;Da=(((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)*3|0)+Da|0}M=(Da|0)>0?Da:0;M=za-(c[1003440+(((M|0)<99?M:99)<<2)>>2]|0)|0}Q=c[s>>2]|0;if((c[j+68>>2]|0)==(Q|0)?(c[j+92>>2]|0)==(c[(c[g>>2]|0)+24>>2]&12|0):0){P=c[j+76>>2]|0}else{P=xg(j,e,Q)|0;c[j+76>>2]=P}if((Ma|0)==0){B=P}else{J=ia&J&~(da|A|va|la|sa);H=ka&H&~(ca|z|wa|ma|ba);V=(ea(Ma,Ka)|0)/2|0;R=J-(J>>>1&1431655765)|0;S=Kt(J|0,H|0,33)|0;S=H-(S&1431655765)|0;V=((((ea((S&858993459)+(R&858993459)+(R>>>2&858993459)+(S>>>2&858993459)|0,286331153)|0)>>>28)+Ja|0)*3|0)+((((L|0)!=0|(K|0)!=0)&1)<<1)+((P+32768&-65536|0)/-2097152|0)+((V|0)<20?V:20)|0;K=n;L=c[K>>2]|0;K=c[K+4>>2]|0;S=~L;R=~K;U=J&ra&S;T=H&qa&R;if(!((U|0)==0&(T|0)==0)?(D=U&(N|y|fa|xa),E=T&(O|x|ga|ya),!((D|0)==0&(E|0)==0)):0){kb=D-(D>>>1&1431655765)|0;lb=Kt(D|0,E|0,33)|0;lb=E-(lb&1431655765)|0;V=(((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)*24|0)+V|0}E=113696+(Q<<3)|0;D=J&xa&S&c[E>>2];E=H&ya&R&c[E+4>>2];if(!((D|0)==0&(E|0)==0)?(B=D&(N|y|fa|ra),C=E&(O|x|ga|qa),!((B|0)==0&(C|0)==0)):0){kb=B-(B>>>1&1431655765)|0;lb=Kt(B|0,C|0,33)|0;lb=C-(lb&1431655765)|0;V=((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28<<4)+V|0}C=~(L|$);B=~(K|aa);K=e+256|0;E=c[K>>2]|0;K=c[K+4>>2]|0;J=26848+(Q<<3)|0;H=27360+(Q<<3)|0;H=(ea(c[J+4>>2]&K,c[H+4>>2]|0)|0)^(ea(c[J>>2]&E,c[H>>2]|0)|0);H=(c[27872+(Q<<2)>>2]|0)+(H>>>(c[28128+(Q<<2)>>2]|0)<<3)|0;J=c[H>>2]&C;H=c[H+4>>2]&B;L=28384+(Q<<3)|0;D=28896+(Q<<3)|0;D=(ea(c[L+4>>2]&K,c[D+4>>2]|0)|0)^(ea(c[L>>2]&E,c[D>>2]|0)|0);D=(c[29408+(Q<<2)>>2]|0)+(D>>>(c[29664+(Q<<2)>>2]|0)<<3)|0;E=c[D>>2]&C;D=c[D+4>>2]&B;L=(E|J)&ra;K=(D|H)&qa;if(!((L|0)==0&(K|0)==0)){kb=L-(L>>>1&1431655765)|0;lb=Kt(L|0,K|0,33)|0;lb=K-(lb&1431655765)|0;
+V=(((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)*12|0)+V|0}J=J&xa;H=H&ya;if(!((J|0)==0&(H|0)==0)){kb=J-(J>>>1&1431655765)|0;lb=Kt(J|0,H|0,33)|0;lb=H-(lb&1431655765)|0;V=V+((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28<<3)|0}E=E&fa;D=D&ga;if(!((E|0)==0&(D|0)==0)){kb=E-(E>>>1&1431655765)|0;lb=Kt(E|0,D|0,33)|0;lb=D-(lb&1431655765)|0;V=V+((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28<<1)|0}lb=31776+(Q<<3)|0;C=N&C&c[lb>>2];B=O&B&c[lb+4>>2];if(!((C|0)==0&(B|0)==0)){kb=C-(C>>>1&1431655765)|0;lb=Kt(C|0,B|0,33)|0;lb=B-(lb&1431655765)|0;V=(((ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)*3|0)+V|0}B=(V|0)>0?V:0;B=P-(c[1003440+(((B|0)<99?B:99)<<2)>>2]|0)|0}D=m;A=~A;z=~z;E=ia&A&c[D>>2];D=ka&z&c[D+4>>2];if(!((E|0)==0&(D|0)==0)){C=E&ua;H=D&ta;if((C|0)==0&(H|0)==0){C=0}else{C=c[1003056+((c[e+((bd(C,H)|0)<<2)>>2]&7)<<2)>>2]|0}H=E&(ra|xa);J=D&(qa|ya);if(!((H|0)==0&(J|0)==0)){C=(c[1003088+((c[e+((bd(H,J)|0)<<2)>>2]&7)<<2)>>2]|0)+C|0}E=E&~$;D=D&~aa;if(!((E|0)==0&(D|0)==0)){lb=Jt(E|0,D|0,-1,-1)|0;H=c[250786]|0;if(!((lb&E|0)==0&(I&D|0)==0)){kb=E-(E>>>1&1431655765)|0;lb=Kt(E|0,D|0,33)|0;lb=D-(lb&1431655765)|0;H=ea(H,(ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)|0}C=H+C|0}}else{C=0}D=n;y=~y;x=~x;H=$&y&c[D>>2];D=aa&x&c[D+4>>2];if(!((H|0)==0&(D|0)==0)){E=H&pa;J=D&na;if((E|0)==0&(J|0)==0){E=0}else{E=c[1003056+((c[e+((bd(E,J)|0)<<2)>>2]&7)<<2)>>2]|0}J=H&(sa|la);K=D&(ba|ma);if(!((J|0)==0&(K|0)==0)){E=(c[1003088+((c[e+((bd(J,K)|0)<<2)>>2]&7)<<2)>>2]|0)+E|0}H=H&~ia;J=D&~ka;if(!((H|0)==0&(J|0)==0)){lb=Jt(H|0,J|0,-1,-1)|0;D=c[250786]|0;if(!((lb&H|0)==0&(I&J|0)==0)){kb=H-(H>>>1&1431655765)|0;lb=Kt(H|0,J|0,33)|0;lb=J-(lb&1431655765)|0;D=ea(D,(ea((lb&858993459)+(kb&858993459)+(kb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0)>>>28)|0}E=D+E|0}}else{E=0}D=j+16|0;lb=D;kb=c[lb>>2]|0;lb=c[lb+4>>2]|0;jb=r;c[jb>>2]=kb;c[jb+4>>2]=lb;if((kb|0)==0&(lb|0)==0){O=0}else{N=e+340|0;L=e+372|0;J=e+288|0;H=e+296|0;K=e+256|0;O=0;do{S=cd(r)|0;P=S>>3;R=P+-1|0;P=ea(R,P+-2|0)|0;T=P*17|0;R=((P+R|0)*7|0)+7|0;do{if((P|0)!=0){Q=S+8|0;U=c[t>>2]|0;R=(ea(((c[115744+(c[s>>2]<<8)+(Q<<2)>>2]|0)*5|0)-(c[115744+(U<<8)+(Q<<2)>>2]<<1)|0,P)|0)+R|0;if((Q&-8|0)!=56){R=R-(ea(c[115744+(U<<8)+(S+16<<2)>>2]|0,P)|0)|0}if((c[e+(Q<<2)>>2]|0)!=0){break}U=108576+(S<<3)|0;T=c[U>>2]|0;U=c[U+4>>2]|0;W=109088+(S<<3)|0;da=c[W>>2]|0;W=c[W+4>>2]|0;ca=m;la=c[ca>>2]|0;ca=c[ca+4>>2]|0;ba=J;ga=H;fa=c[ga>>2]|c[ba>>2];ba=c[ga+4>>2]|c[ba+4>>2];ga=la&da&fa;V=ca&W&ba;if(!((ga|0)==0&(V|0)==0)?(kb=K,jb=26848+(S<<3)|0,lb=27360+(S<<3)|0,lb=(ea(c[jb+4>>2]&c[kb+4>>2],c[lb+4>>2]|0)|0)^(ea(c[jb>>2]&c[kb>>2],c[lb>>2]|0)|0),lb=(c[27872+(S<<2)>>2]|0)+(lb>>>(c[28128+(S<<2)>>2]|0)<<3)|0,!((c[lb>>2]&ga|0)==0?(c[lb+4>>2]&V|0)==0:0)):0){V=T;ca=U}else{V=(la|$)&T;ca=(ca|aa)&U}lb=n;da=fa&da&c[lb>>2];W=ba&W&c[lb+4>>2];if(!((da|0)==0&(W|0)==0)?(kb=K,jb=26848+(S<<3)|0,lb=27360+(S<<3)|0,lb=(ea(c[jb+4>>2]&c[kb+4>>2],c[lb+4>>2]|0)|0)^(ea(c[jb>>2]&c[kb>>2],c[lb>>2]|0)|0),lb=(c[27872+(S<<2)>>2]|0)+(lb>>>(c[28128+(S<<2)>>2]|0)<<3)|0,!((c[lb>>2]&da|0)==0?(c[lb+4>>2]&W|0)==0:0)):0){S=T;W=U}else{S=T&ia;W=U&ka}if((V|0)==0&(ca|0)==0){V=15}else{lb=29920+(Q<<3)|0;V=((c[lb>>2]&V|0)==0?(c[lb+4>>2]&ca|0)==0:0)?9:0}if((S|0)==(T|0)&(W|0)==(U|0)){Q=V+6|0}else{Q=29920+(Q<<3)|0;Q=((c[Q>>2]&S|0)==0?(c[Q+4>>2]&W|0)==0:0)?V:V+4|0}R=(ea(Q,P)|0)+R|0;T=ea(Q+17|0,P)|0}}while(0);if((c[N>>2]|0)<(c[L>>2]|0)){R=((R|0)/4|0)+R|0}O=(T<<16)+O+R|0;lb=r}while(!((c[lb>>2]|0)==0&(c[lb+4>>2]|0)==0))}N=c[1003232>>2]|0;L=c[1003236>>2]|0;J=(ea((O+32768&-65536|0)/65536|0,N)|0)/256|0;K=(ea(L,(O&32767)-(O&32768)|0)|0)/256|0;H=j+24|0;lb=H;kb=c[lb>>2]|0;lb=c[lb+4>>2]|0;jb=r;c[jb>>2]=kb;c[jb+4>>2]=lb;if((kb|0)==0&(lb|0)==0){r=L;L=0}else{O=e+372|0;R=e+340|0;P=e+288|0;N=e+296|0;Q=e+256|0;L=0;do{V=cd(r)|0;S=V>>3^7;U=S+-1|0;S=ea(U,S+-2|0)|0;W=S*17|0;U=((S+U|0)*7|0)+7|0;do{if((S|0)!=0){T=V+-8|0;ba=c[s>>2]|0;U=(ea(((c[115744+(c[t>>2]<<8)+(T<<2)>>2]|0)*5|0)-(c[115744+(ba<<8)+(T<<2)>>2]<<1)|0,S)|0)+U|0;if(!(T>>>0<8)){U=U-(ea(c[115744+(ba<<8)+(V+-16<<2)>>2]|0,S)|0)|0}if((c[e+(T<<2)>>2]|0)!=0){break}W=109088+(V<<3)|0;ba=c[W>>2]|0;W=c[W+4>>2]|0;ca=108576+(V<<3)|0;ga=c[ca>>2]|0;ca=c[ca+4>>2]|0;ma=n;pa=c[ma>>2]|0;ma=c[ma+4>>2]|0;da=P;na=N;la=c[na>>2]|c[da>>2];da=c[na+4>>2]|c[da+4>>2];na=pa&ga&la;fa=ma&ca&da;if(!((na|0)==0&(fa|0)==0)?(kb=Q,jb=26848+(V<<3)|0,lb=27360+(V<<3)|0,lb=(ea(c[jb+4>>2]&c[kb+4>>2],c[lb+4>>2]|0)|0)^(ea(c[jb>>2]&c[kb>>2],c[lb>>2]|0)|0),lb=(c[27872+(V<<2)>>2]|0)+(lb>>>(c[28128+(V<<2)>>2]|0)<<3)|0,!((c[lb>>2]&na|0)==0?(c[lb+4>>2]&fa|0)==0:0)):0){fa=ba;ma=W}else{fa=(pa|ia)&ba;ma=(ma|ka)&W}lb=m;ga=la&ga&c[lb>>2];ca=da&ca&c[lb+4>>2];if(!((ga|0)==0&(ca|0)==0)?(kb=Q,jb=26848+(V<<3)|0,lb=27360+(V<<3)|0,lb=(ea(c[jb+4>>2]&c[kb+4>>2],c[lb+4>>2]|0)|0)^(ea(c[jb>>2]&c[kb>>2],c[lb>>2]|0)|0),lb=(c[27872+(V<<2)>>2]|0)+(lb>>>(c[28128+(V<<2)>>2]|0)<<3)|0,!((c[lb>>2]&ga|0)==0?(c[lb+4>>2]&ca|0)==0:0)):0){ca=ba;V=W}else{ca=ba&$;V=W&aa}if((fa|0)==0&(ma|0)==0){da=15}else{da=29920+(T<<3)|0;da=((c[da>>2]&fa|0)==0?(c[da+4>>2]&ma|0)==0:0)?9:0}if((ca|0)==(ba|0)&(V|0)==(W|0)){T=da+6|0}else{T=29920+(T<<3)|0;T=((c[T>>2]&ca|0)==0?(c[T+4>>2]&V|0)==0:0)?da:da+4|0}U=(ea(T,S)|0)+U|0;W=ea(T+17|0,S)|0}}while(0);if((c[O>>2]|0)<(c[R>>2]|0)){U=((U|0)/4|0)+U|0}L=(W<<16)+L+U|0;lb=r}while(!((c[lb>>2]|0)==0&(c[lb+4>>2]|0)==0));N=c[1003232>>2]|0;r=c[1003236>>2]|0}k=l+k+p+u-w+G-Z+oa-ja+ha-_+Y+M-B+C-E+K+(X+q+J<<16)+(ea((ea((L+32768&-65536|0)/65536|0,N)|0)/256|0,-65536)|0)+((ea((L&32767)-(L&32768)|0,r)|0)/-256|0)|0;lb=c[g>>2]|0;if((c[lb+16>>2]|0)==0?(c[lb+20>>2]|0)==0:0){p=D;lb=j+32|0;l=c[lb>>2]|c[p>>2];p=c[lb+4>>2]|c[p+4>>2];if((l|0)==0&(p|0)==0){l=0}else{lb=c[250800]|0;l=ea((dd(l,p)|0)>>3,lb)|0}lb=H;j=j+40|0;p=c[j>>2]|c[lb>>2];j=c[j+4>>2]|c[lb+4>>2];if((p|0)==0&(j|0)==0){j=0}else{lb=c[250800]|0;j=ea((bd(p,j)|0)>>3^7,lb)|0}k=l+k-j|0}j=c[h+24>>2]|0;if((j|0)!=0){ib=o;kb=c[ib>>2]|0;ib=c[ib+4>>2]|0;gb=n;jb=c[gb>>2]&kb;gb=c[gb+4>>2]&ib;(aa|ka)&z;hb=($^1010580480|ia)&A&(jb&1010580480^1010580480);lb=Kt(jb|0,gb|0,8)|0;jb=lb|jb;gb=I|gb;lb=Kt(jb|0,gb|0,16)|0;I|gb;jb=(lb|jb)&hb;jb=jb-(jb>>>1&1431655765)|0;lb=Kt(hb|0,0,1)|0;lb=hb-(lb&336860160)|0;jb=(jb>>>2&858993459)+(jb&858993459)|0;lb=(lb>>>2&858993459)+(lb&858992640)|0;jb=(ea((lb>>>4)+lb+jb+(jb>>>4)&252645135,16843009)|0)>>>24;lb=m;kb=c[lb>>2]&kb;ib=c[lb+4>>2]&ib;($|ia)&y;lb=(aa|ka^3947580)&x&(ib&3947580^3947580);hb=Mt(kb|0,ib|0,8)|0;kb=hb|kb;ib=I|ib;hb=Mt(kb|0,ib|0,16)|0;hb|kb;ib=(I|ib)&lb;kb=Kt(0,lb|0,33)|0;kb=lb-(kb&1315860)|0;lb=Kt(0,ib|0,33)|0;lb=ib-(lb&1431655765)|0;kb=(kb>>>2&858993459)+(kb&858993459)|0;lb=(lb>>>2&858993459)+(lb&858993459)|0;lb=ea(jb-((ea((kb>>>4)+kb+lb+(lb>>>4)&252645135,16843009)|0)>>>24)|0,j)|0;k=((ea((lb&32767)-(lb&32768)|0,c[1003244>>2]|0)|0)/256|0)+k+(((ea((lb+32768&-65536|0)/65536|0,c[1003240>>2]|0)|0)/256|0)<<16)|0}j=(k&32767)-(k&32768)|0;c:do{if((j|0)>0){l=h+16|0;m=c[l>>2]|0;do{if((m|0)!=0){if((pc[c[(c[m>>2]|0)+12>>2]&63](m,e)|0)==255){break}l=c[l>>2]|0;l=pc[c[(c[l>>2]|0)+12>>2]&63](l,e)|0;break c}}while(0);l=d[h+10>>0]|0}else{l=h+20|0;m=c[l>>2]|0;do{if((m|0)!=0){if((pc[c[(c[m>>2]|0)+12>>2]&63](m,e)|0)==255){break}l=c[l>>2]|0;l=pc[c[(c[l>>2]|0)+12>>2]&63](l,e)|0;break c}}while(0);l=d[h+11>>0]|0}}while(0);h=c[h+28>>2]|0;d:do{if((h|0)<128){if((c[e+348>>2]|0)!=1){break}if((c[e+380>>2]|0)!=1){break}lb=c[F>>2]^c[v>>2];if(((lb>>>3^lb)&1|0)==0){break}if(!((l|0)==48|(l|0)==64)){break}g=c[g>>2]|0;do{if((c[g+16>>2]|0)==836){if((c[g+20>>2]|0)!=836){break}l=((c[e+372>>2]|0)+(c[e+340>>2]|0)|0)==1?8:32;break d}}while(0);l=(l*50|0)/64|0}}while(0);lb=(((ea(ea(128-h|0,j)|0,l)|0)/64|0)+(ea((k+32768&-65536|0)/65536|0,h)|0)|0)/128|0;lb=(c[e+2212>>2]|0)==0?lb:0-lb|0;lb=lb+17|0;i=f;return lb|0}function Oe(a,b){a=a|0;b=b|0;var c=0;c=i;Pe(a,b);i=c;return}function Pe(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,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,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;h=i;i=i+160|0;j=h;g=h+16|0;k=1004464|0;l=k+120|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));n=c[f+2216>>2]|0;l=f+2220|0;J=c[(c[l>>2]|0)+36>>2]|0;m=uf(f,n+792|0,n+804|0)|0;k=m+8|0;o=c[m+12>>2]|0;if((o|0)==0){K=(b[k>>1]|0)*65537|0;s=Ag(f,n+828|0)|0;r=s+8|0;L=c[r>>2]|0;M=(ea((L+32768&-65536|0)/65536|0,c[1003224>>2]|0)|0)/256|0;L=(ea((L&32767)-(L&32768)|0,c[1003228>>2]|0)|0)/256|0;n=Ng(f,0,0)|0;t=I;N=f+1296|0;o=33824+(c[N>>2]<<3)|0;p=c[o>>2]|0;o=c[o+4>>2]|0;u=s+48|0;q=c[u>>2]|0;u=c[u+4>>2]|0;if((c[f+356>>2]|0)!=0?(c[(c[l>>2]|0)+16>>2]|0)>2719:0){v=Kt(p|0,o|0,8)|0;v=v|p;C=I|o;w=q&p;x=u&o;if((w|0)==0&(x|0)==0){Ma=0}else{ob=w-(w>>>1&1431655765)|0;Ma=Kt(w|0,x|0,33)|0;Ma=x-(Ma&1431655765)|0;Ma=(ea((Ma&858993459)+(ob&858993459)+(ob>>>2&858993459)+(Ma>>>2&858993459)|0,286331153)|0)>>>28}}else{v=0;C=0;Ma=0}x=Ng(f,1,1)|0;w=I;O=f+784|0;ca=c[O>>2]|0;B=33824+(ca<<3)|0;A=c[B>>2]|0;B=c[B+4>>2]|0;y=s+56|0;z=c[y>>2]|0;y=c[y+4>>2]|0;if((c[f+388>>2]|0)!=0?(c[(c[l>>2]|0)+20>>2]|0)>2719:0){D=Mt(A|0,B|0,8)|0;D=D|A;H=I|B;F=z&A;E=y&B;if((F|0)==0&(E|0)==0){Ja=0}else{ob=F-(F>>>1&1431655765)|0;Ja=Kt(F|0,E|0,33)|0;Ja=E-(Ja&1431655765)|0;Ja=(ea((Ja&858993459)+(ob&858993459)+(ob>>>2&858993459)+(Ja>>>2&858993459)|0,286331153)|0)>>>28}}else{Ja=0;D=0;H=0}Qa=A|q;Ra=B|u;Oa=z|p;Na=y|o;F=f+320|0;xa=F;za=c[xa>>2]|0;xa=c[xa+4>>2]|0;E=f+264|0;ya=E;Aa=c[ya>>2]|0;ya=c[ya+4>>2]|0;la=f+304|0;ma=c[la>>2]|Aa;la=c[la+4>>2]|ya;va=~(ma&za|z);qa=~(la&xa|y);G=f+328|0;Ba=G;Fa=c[Ba>>2]|0;Ba=c[Ba+4>>2]|0;ma=~(ma&Fa|q);la=~(la&Ba|u);ba=c[f+528>>2]|0;if((ba|0)==64){R=0;P=0;Q=0;Ia=0;La=0;Pa=0}else{T=f+272|0;S=f+280|0;W=Fa&Aa;U=Ba&ya;V=c[250796]|0;X=c[1003128>>2]|0;P=0;Q=0;La=0;Ia=0;Pa=0;R=0;ja=f+532|0;while(1){Ha=31776+(ba<<3)|0;Ga=c[Ha>>2]|0;Ha=c[Ha+4>>2]|0;ka=29920+(ba<<3)|0;pa=c[ka>>2]|0;ka=c[ka+4>>2]|0;if(!((pa&n|0)==0&(ka&t|0)==0)){ob=71712+(ca<<9)+(ba<<3)|0;Ga=c[ob>>2]&Ga;Ha=c[ob+4>>2]&Ha}P=Ga|P;Q=Ha|Q;Qa=P|Qa;Ra=Q|Ra;if(!((Ga&v|0)==0&(Ha&C|0)==0)){Ma=Ma+1|0;La=La+2|0;Ka=Ga&p;Sa=Ha&o;if(!((Ka|0)==0&(Sa|0)==0)){nb=Ka-(Ka>>>1&1431655765)|0;ob=Kt(Ka|0,Sa|0,33)|0;ob=Sa-(ob&1431655765)|0;Ia=((ea((ob&858993459)+(nb&858993459)+(nb>>>2&858993459)+(ob>>>2&858993459)|0,286331153)|0)>>>28)+Ia|0}}ob=Ga&va;mb=Ha&qa;nb=ob-(ob>>>1&1431655765)|0;ob=Kt(ob|0,mb|0,33)|0;ob=mb-(ob&1431655765)|0;Pa=(c[1002544+((ea((ob&858993459)+(nb&858993459)+(nb>>>2&858993459)+(ob>>>2&858993459)|0,286331153)|0)>>>28<<2)>>2]|0)+Pa|0;R=R-((pa&z|0)==0&(ka&y|0)==0?0:X)|0;ob=110624+(ba<<3)|0;if((W&c[ob>>2]|0)==0?(U&c[ob+4>>2]|0)==0:0){Ga=c[1003952+(ba<<2)>>2]|0;do{if((Ga|0)!=0){if(!((pa&q|0)==0&(ka&u|0)==0)){ob=T;if(((c[ob>>2]&Fa|0)==0?(c[ob+4>>2]&Ba|0)==0:0)?(nb=(pa&-1437226411|0)!=0|(ka&-1437226411|0)!=0,ob=S,((nb?-1437226411:1437226410)&Fa&c[ob>>2]|0)==0?((nb?-1437226411:1437226410)&Ba&c[ob+4>>2]|0)==0:0):0){Ga=((Ga|0)/2|0)+(Ga<<1)|0;break}Ga=((Ga|0)/2|0)+Ga|0}}else{Ga=0}}while(0);R=(Ga*65537|0)+R|0}if((ba>>3|0)<4){ob=29920+(ba+8<<3)|0;R=(((c[ob>>2]&Aa|0)==0?(c[ob+4>>2]&ya|0)==0:0)?0:V)+R|0}ba=c[ja>>2]|0;if((ba|0)==64){break}else{ja=ja+4|0}}}c[1004472>>2]=R;pa=c[f+1040>>2]|0;if((pa|0)==64){V=0;S=0;T=0;Ga=0;Ha=0;Ka=0}else{ka=f+272|0;ja=f+280|0;W=Aa&za;X=ya&xa;ba=c[250796]|0;U=c[1003128>>2]|0;S=0;T=0;Ha=0;Ga=0;Ka=0;V=0;Sa=f+1044|0;while(1){Wa=31776+(pa<<3)|0;Va=c[Wa>>2]|0;Wa=c[Wa+4>>2]|0;Ta=29920+(pa<<3)|0;Ua=c[Ta>>2]|0;Ta=c[Ta+4>>2]|0;if(!((Ua&x|0)==0&(Ta&w|0)==0)){ob=71712+(c[N>>2]<<9)+(pa<<3)|0;Va=c[ob>>2]&Va;Wa=c[ob+4>>2]&Wa}S=Va|S;T=Wa|T;Oa=S|Oa;Na=T|Na;if(!((Va&D|0)==0&(Wa&H|0)==0)){Ja=Ja+1|0;Ha=Ha+2|0;Xa=Va&A;Ya=Wa&B;if(!((Xa|0)==0&(Ya|0)==0)){nb=Xa-(Xa>>>1&1431655765)|0;ob=Kt(Xa|0,Ya|0,33)|0;ob=Ya-(ob&1431655765)|0;Ga=((ea((ob&858993459)+(nb&858993459)+(nb>>>2&858993459)+(ob>>>2&858993459)|0,286331153)|0)>>>28)+Ga|0}}ob=Va&ma;mb=Wa&la;nb=ob-(ob>>>1&1431655765)|0;ob=Kt(ob|0,mb|0,33)|0;ob=mb-(ob&1431655765)|0;Ka=(c[1002544+((ea((ob&858993459)+(nb&858993459)+(nb>>>2&858993459)+(ob>>>2&858993459)|0,286331153)|0)>>>28<<2)>>2]|0)+Ka|0;V=V-((Ua&q|0)==0&(Ta&u|0)==0?0:U)|0;ob=111136+(pa<<3)|0;if((W&c[ob>>2]|0)==0?(X&c[ob+4>>2]|0)==0:0){Va=c[1003952+((pa^56)<<2)>>2]|0;do{if((Va|0)!=0){if(!((Ua&z|0)==0&(Ta&y|0)==0)){ob=ka;if(((c[ob>>2]&za|0)==0?(c[ob+4>>2]&xa|0)==0:0)?(nb=(Ua&-1437226411|0)!=0|(Ta&-1437226411|0)!=0,ob=ja,((nb?-1437226411:1437226410)&za&c[ob>>2]|0)==0?((nb?-1437226411:1437226410)&xa&c[ob+4>>2]|0)==0:0):0){Va=((Va|0)/2|0)+(Va<<1)|0;break}Va=((Va|0)/2|0)+Va|0}}else{Va=0}}while(0);V=(Va*65537|0)+V|0}if((pa>>3^7|0)<4){ob=29920+(pa+-8<<3)|0;V=(((c[ob>>2]&Aa|0)==0?(c[ob+4>>2]&ya|0)==0:0)?0:ba)+V|0}pa=c[Sa>>2]|0;if((pa|0)==64){break}else{Sa=Sa+4|0}}}c[1004532>>2]=V;U=f+592|0;_a=c[U>>2]|0;if((_a|0)==64){ba=0;W=0;X=0}else{Ua=f+272|0;Wa=f+280|0;ka=f+256|0;Sa=f+296|0;pa=c[Sa>>2]&za^c[ka>>2];ka=c[Sa+4>>2]&xa^c[ka+4>>2];Sa=c[250794]|0;Ta=Fa&Aa;Va=Ba&ya;Xa=c[250796]|0;Ya=(a[f+2224>>0]|0)==0;Za=c[250802]|0;ja=c[1003132>>2]|0;W=0;X=0;ba=0;$a=f+596|0;while(1){cb=28384+(_a<<3)|0;db=28896+(_a<<3)|0;db=(ea(c[cb+4>>2]&ka,c[db+4>>2]|0)|0)^(ea(c[cb>>2]&pa,c[db>>2]|0)|0);db=(c[29408+(_a<<2)>>2]|0)+(db>>>(c[29664+(_a<<2)>>2]|0)<<3)|0;cb=c[db>>2]|0;db=c[db+4>>2]|0;ab=29920+(_a<<3)|0;bb=c[ab>>2]|0;ab=c[ab+4>>2]|0;if(!((bb&n|0)==0&(ab&t|0)==0)){ob=71712+(ca<<9)+(_a<<3)|0;cb=c[ob>>2]&cb;db=c[ob+4>>2]&db}W=cb|W;X=db|X;Qa=W|Qa;Ra=X|Ra;if(!((cb&v|0)==0&(db&C|0)==0)){Ma=Ma+1|0;La=La+2|0;eb=cb&p;fb=db&o;if(!((eb|0)==0&(fb|0)==0)){nb=eb-(eb>>>1&1431655765)|0;ob=Kt(eb|0,fb|0,33)|0;ob=fb-(ob&1431655765)|0;Ia=((ea((ob&858993459)+(nb&858993459)+(nb>>>2&858993459)+(ob>>>2&858993459)|0,286331153)|0)>>>28)+Ia|0}}cb=cb&va;nb=db&qa;ob=cb-(cb>>>1&1431655765)|0;cb=Kt(cb|0,nb|0,33)|0;cb=nb-(cb&1431655765)|0;Pa=(c[1002672+((ea((cb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(cb>>>2&858993459)|0,286331153)|0)>>>28<<2)>>2]|0)+Pa|0;cb=(bb&-1437226411|0)!=0|(ab&-1437226411|0)!=0;ba=ba-((bb&z|0)==0&(ab&y|0)==0?0:ja)-(ea(c[s+((cb&1)<<2)+104>>2]|0,Sa)|0)|0;ob=110624+(_a<<3)|0;if((Ta&c[ob>>2]|0)==0?(Va&c[ob+4>>2]|0)==0:0){db=c[1004208+(_a<<2)>>2]|0;do{if((db|0)!=0){if(!((bb&q|0)==0&(ab&u|0)==0)){ob=Ua;if(((c[ob>>2]&Fa|0)==0?(c[ob+4>>2]&Ba|0)==0:0)?(ob=Wa,((cb?-1437226411:1437226410)&Fa&c[ob>>2]|0)==0?((cb?-1437226411:1437226410)&Ba&c[ob+4>>2]|0)==0:0):0){db=((db|0)/2|0)+(db<<1)|0;break}db=((db|0)/2|0)+db|0}}else{db=0}}while(0);ba=(db*65537|0)+ba|0}if((_a>>3|0)<4){ob=29920+(_a+8<<3)|0;ba=(((c[ob>>2]&Aa|0)==0?(c[ob+4>>2]&ya|0)==0:0)?0:Xa)+ba|0}if((!Ya?(_a|0)==7|(_a|0)==0:0)?(aa=(_a&7|0)==0?9:7,ia=aa+_a|0,(c[f+(ia<<2)>>2]|0)==1):0){if((c[f+(ia+8<<2)>>2]|0)==0){_a=(c[f+(ia+aa<<2)>>2]|0)==1&1}else{_a=2}ba=ba-(Za<<_a)|0}_a=c[$a>>2]|0;if((_a|0)==64){break}else{$a=$a+4|0}}}c[1004476>>2]=ba;aa=f+1104|0;bb=c[aa>>2]|0;if((bb|0)==64){ka=0;ia=0;ja=0}else{Wa=f+272|0;Va=f+280|0;$a=f+256|0;Ya=f+296|0;pa=c[Ya>>2]&Fa^c[$a>>2];$a=c[Ya+4>>2]&Ba^c[$a+4>>2];Ya=c[250794]|0;Za=Aa&za;_a=ya&xa;Ua=c[250796]|0;Ta=(a[f+2224>>0]|0)==0;Sa=c[250802]|0;Xa=c[1003132>>2]|0;ka=0;ab=f+1108|0;ia=0;ja=0;while(1){eb=28384+(bb<<3)|0;fb=28896+(bb<<3)|0;fb=(ea(c[eb+4>>2]&$a,c[fb+4>>2]|0)|0)^(ea(c[eb>>2]&pa,c[fb>>2]|0)|0);fb=(c[29408+(bb<<2)>>2]|0)+(fb>>>(c[29664+(bb<<2)>>2]|0)<<3)|0;eb=c[fb>>2]|0;fb=c[fb+4>>2]|0;db=29920+(bb<<3)|0;cb=c[db>>2]|0;db=c[db+4>>2]|0;if(!((cb&x|0)==0&(db&w|0)==0)){ob=71712+(c[N>>2]<<9)+(bb<<3)|0;eb=c[ob>>2]&eb;fb=c[ob+4>>2]&fb}ia=eb|ia;ja=fb|ja;Oa=ia|Oa;Na=ja|Na;if(!((eb&D|0)==0&(fb&H|0)==0)){Ja=Ja+1|0;Ha=Ha+2|0;gb=eb&A;hb=fb&B;if(!((gb|0)==0&(hb|0)==0)){nb=gb-(gb>>>1&1431655765)|0;ob=Kt(gb|0,hb|0,33)|0;ob=hb-(ob&1431655765)|0;Ga=((ea((ob&858993459)+(nb&858993459)+(nb>>>2&858993459)+(ob>>>2&858993459)|0,286331153)|0)>>>28)+Ga|0}}eb=eb&ma;nb=fb&la;ob=eb-(eb>>>1&1431655765)|0;eb=Kt(eb|0,nb|0,33)|0;eb=nb-(eb&1431655765)|0;Ka=(c[1002672+((ea((eb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(eb>>>2&858993459)|0,286331153)|0)>>>28<<2)>>2]|0)+Ka|0;eb=(cb&-1437226411|0)!=0|(db&-1437226411|0)!=0;ka=ka-((cb&q|0)==0&(db&u|0)==0?0:Xa)-(ea(c[s+((eb&1)<<2)+112>>2]|0,Ya)|0)|0;ob=111136+(bb<<3)|0;if((Za&c[ob>>2]|0)==0?(_a&c[ob+4>>2]|0)==0:0){fb=c[1004208+((bb^56)<<2)>>2]|0;do{if((fb|0)!=0){if(!((cb&z|0)==0&(db&y|0)==0)){ob=Wa;if(((c[ob>>2]&za|0)==0?(c[ob+4>>2]&xa|0)==0:0)?(ob=Va,((eb?-1437226411:1437226410)&za&c[ob>>2]|0)==0?((eb?-1437226411:1437226410)&xa&c[ob+4>>2]|0)==0:0):0){fb=((fb|0)/2|0)+(fb<<1)|0;break}fb=((fb|0)/2|0)+fb|0}}else{fb=0}}while(0);ka=(fb*65537|0)+ka|0}if((bb>>3^7|0)<4){ob=29920+(bb+-8<<3)|0;ka=(((c[ob>>2]&Aa|0)==0?(c[ob+4>>2]&ya|0)==0:0)?0:Ua)+ka|0}if((!Ta?(bb|0)==63|(bb|0)==56:0)?(oa=(bb&7|0)==0?-7:-9,na=oa+bb|0,(c[f+(na<<2)>>2]|0)==9):0){if((c[f+(na+-8<<2)>>2]|0)==0){bb=(c[f+(na+oa<<2)>>2]|0)==9&1}else{bb=2}ka=ka-(Sa<<bb)|0}bb=c[ab>>2]|0;if((bb|0)==64){break}else{ab=ab+4|0}}}c[1004536>>2]=ka;hb=c[f+656>>2]|0;if((hb|0)==64){pa=0;na=0;oa=0;Sa=La;Ta=Ma;Ua=Pa}else{fb=s+100|0;bb=f+256|0;$a=f+288|0;Va=f+296|0;cb=(c[Va>>2]|c[$a>>2])&za^c[bb>>2];bb=(c[Va+4>>2]|c[$a+4>>2])&xa^c[bb+4>>2];$a=c[250788]|0;Va=c[s+96>>2]|0;Ya=c[250798]|0;eb=c[250790]|0;db=c[250792]|0;ab=c[1003136>>2]|0;_a=Fa&Aa;Za=Ba&ya;Sa=ca&7;gb=Sa>>>0<4;Ua=ca>>3;Ta=(Ua|0)==0;Xa=(1<<Sa)+-1|0;Wa=-1<<Sa+1;na=0;oa=0;pa=0;ib=f+660|0;while(1){lb=26848+(hb<<3)|0;mb=27360+(hb<<3)|0;mb=(ea(c[lb+4>>2]&bb,c[mb+4>>2]|0)|0)^(ea(c[lb>>2]&cb,c[mb>>2]|0)|0);mb=(c[27872+(hb<<2)>>2]|0)+(mb>>>(c[28128+(hb<<2)>>2]|0)<<3)|0;lb=c[mb>>2]|0;mb=c[mb+4>>2]|0;jb=29920+(hb<<3)|0;kb=c[jb>>2]|0;jb=c[jb+4>>2]|0;if(!((kb&n|0)==0&(jb&t|0)==0)){ob=71712+(ca<<9)+(hb<<3)|0;lb=c[ob>>2]&lb;mb=c[ob+4>>2]&mb}na=lb|na;oa=mb|oa;Qa=na|Qa;Ra=oa|Ra;if(!((lb&v|0)==0&(mb&C|0)==0)){Ma=Ma+1|0;La=La+3|0;nb=lb&p;ob=mb&o;if(!((nb|0)==0&(ob|0)==0)){pb=nb-(nb>>>1&1431655765)|0;nb=Kt(nb|0,ob|0,33)|0;ob=ob-(nb&1431655765)|0;Ia=((ea((ob&858993459)+(pb&858993459)+(pb>>>2&858993459)+(ob>>>2&858993459)|0,286331153)|0)>>>28)+Ia|0}}lb=lb&va;pb=mb&qa;mb=lb-(lb>>>1&1431655765)|0;lb=Kt(lb|0,pb|0,33)|0;lb=pb-(lb&1431655765)|0;lb=ea((lb&858993459)+(mb&858993459)+(mb>>>2&858993459)+(lb>>>2&858993459)|0,286331153)|0;mb=lb>>>28;Pa=(c[1002800+(mb<<2)>>2]|0)+Pa|0;pa=pa-((kb&z|0)==0&(jb&y|0)==0?0:ab)|0;jb=hb>>3;if((jb|0)>3?(Da=113696+(hb<<3)|0,Ea=_a&c[Da>>2],Da=Za&c[Da+4>>2],!((Ea|0)==0&(Da|0)==0)):0){ob=Ea-(Ea>>>1&1431655765)|0;pb=Kt(Ea|0,Da|0,33)|0;pb=Da-(pb&1431655765)|0;pa=(ea((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28,$a)|0)+pa|0}hb=hb&7;kb=1<<hb;if((kb&Va|0)==0){if(((!(lb>>>0>1073741823)?(Ca=hb>>>0<Sa>>>0,!(gb^Ca)):0)?(Ua|0)==(jb|0)|Ta:0)?((Ca?Xa:Wa)&Va|0)==0:0){pa=pa-(ea((c[(c[l>>2]|0)+24>>2]&3|0)==0?2:1,Ya-(mb<<19)|0)|0)|0}}else{pa=((c[fb>>2]&kb|0)!=0?eb:db)+pa|0}hb=c[ib>>2]|0;if((hb|0)==64){Sa=La;Ta=Ma;Ua=Pa;break}else{ib=ib+4|0}}}c[1004480>>2]=pa;Ca=c[f+1168>>2]|0;if((Ca|0)==64){ta=0;Pa=f+256|0;ra=0;sa=0;Fa=Ja;Ca=Oa;Da=Na;Ea=Ka}else{Pa=f+256|0;La=s+96|0;Xa=Pa;Ya=f+288|0;Za=f+296|0;Ma=(c[Za>>2]|c[Ya>>2])&Fa^c[Xa>>2];Xa=(c[Za+4>>2]|c[Ya+4>>2])&Ba^c[Xa+4>>2];Ya=c[250788]|0;Za=c[s+100>>2]|0;_a=c[250798]|0;Va=c[250790]|0;Ba=c[250792]|0;Wa=c[1003136>>2]|0;za=Aa&za;xa=ya&xa;ya=Ca;ab=0;$a=0;Ca=Oa;Da=Na;Fa=Ja;Ea=Ka;Na=0;Aa=f+1172|0;while(1){cb=26848+(ya<<3)|0;db=27360+(ya<<3)|0;db=(ea(c[cb+4>>2]&Xa,c[db+4>>2]|0)|0)^(ea(c[cb>>2]&Ma,c[db>>2]|0)|0);db=(c[27872+(ya<<2)>>2]|0)+(db>>>(c[28128+(ya<<2)>>2]|0)<<3)|0;cb=c[db>>2]|0;db=c[db+4>>2]|0;Oa=29920+(ya<<3)|0;bb=c[Oa>>2]|0;Oa=c[Oa+4>>2]|0;if(!((bb&x|0)==0&(Oa&w|0)==0)){pb=71712+(c[N>>2]<<9)+(ya<<3)|0;cb=c[pb>>2]&cb;db=c[pb+4>>2]&db}Ka=cb|ab;Ja=db|$a;Ca=Ka|Ca;Da=Ja|Da;if(!((cb&D|0)==0&(db&H|0)==0)){Fa=Fa+1|0;Ha=Ha+3|0;$a=cb&A;ab=db&B;if(!(($a|0)==0&(ab|0)==0)){ob=$a-($a>>>1&1431655765)|0;pb=Kt($a|0,ab|0,33)|0;pb=ab-(pb&1431655765)|0;Ga=((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)+Ga|0}}ab=cb&ma;pb=db&la;$a=ab-(ab>>>1&1431655765)|0;ab=Kt(ab|0,pb|0,33)|0;ab=pb-(ab&1431655765)|0;ab=ea((ab&858993459)+($a&858993459)+($a>>>2&858993459)+(ab>>>2&858993459)|0,286331153)|0;$a=ab>>>28;Ea=(c[1002800+($a<<2)>>2]|0)+Ea|0;Na=Na-((bb&q|0)==0&(Oa&u|0)==0?0:Wa)|0;Oa=ya>>3;if((Oa^7|0)>3?(sa=113696+(ya<<3)|0,ta=za&c[sa>>2],sa=xa&c[sa+4>>2],!((ta|0)==0&(sa|0)==0)):0){ob=ta-(ta>>>1&1431655765)|0;pb=Kt(ta|0,sa|0,33)|0;pb=sa-(pb&1431655765)|0;Na=(ea((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28,Ya)|0)+Na|0}ya=ya&7;bb=1<<ya;do{if((bb&Za|0)==0){if((!(ab>>>0>1073741823)?(ua=c[N>>2]|0,ra=ua&7,wa=ya>>>0<ra>>>0,!(ra>>>0<4^wa)):0)?(pb=ua>>3,(pb|0)==(Oa|0)|(pb|0)==7):0){if(wa){ya=(1<<ra)+-1|0}else{ya=-1<<ra+1}if((ya&Za|0)!=0){break}Na=Na-(ea((c[(c[l>>2]|0)+24>>2]&12|0)==0?2:1,_a-($a<<19)|0)|0)|0}}else{Na=((c[La>>2]&bb|0)!=0?Va:Ba)+Na|0}}while(0);ya=c[Aa>>2]|0;if((ya|0)==64){ta=Na;ra=Ka;sa=Ja;break}else{ab=Ka;$a=Ja;Aa=Aa+4|0}}}c[1004540>>2]=ta;Ma=ia|S;La=ja|T;Ka=~(ra|Ma)&va;Na=~(sa|La)&qa;Ja=c[1003140>>2]|0;Ba=0;za=Ia;Aa=Sa;ya=Ta;va=Qa;xa=Ra;wa=Ua;qa=0;ua=0;Ia=f+720|0;a:while(1){do{Ta=Ia;Ia=Ia+4|0;Ta=c[Ta>>2]|0;if((Ta|0)==64){break a}pb=Pa;Ra=c[pb>>2]|0;pb=c[pb+4>>2]|0;Qa=26848+(Ta<<3)|0;Sa=27360+(Ta<<3)|0;Sa=(ea(c[Qa+4>>2]&pb,c[Sa+4>>2]|0)|0)^(ea(c[Qa>>2]&Ra,c[Sa>>2]|0)|0);Sa=(c[27872+(Ta<<2)>>2]|0)+(Sa>>>(c[28128+(Ta<<2)>>2]|0)<<3)|0;Qa=28384+(Ta<<3)|0;Oa=28896+(Ta<<3)|0;Oa=(ea(c[Qa+4>>2]&pb,c[Oa+4>>2]|0)|0)^(ea(c[Qa>>2]&Ra,c[Oa>>2]|0)|0);Oa=(c[29408+(Ta<<2)>>2]|0)+(Oa>>>(c[29664+(Ta<<2)>>2]|0)<<3)|0;Ra=c[Oa>>2]|c[Sa>>2];Sa=c[Oa+4>>2]|c[Sa+4>>2];Oa=29920+(Ta<<3)|0;Qa=c[Oa>>2]|0;Oa=c[Oa+4>>2]|0;if(!((Qa&n|0)==0&(Oa&t|0)==0)){pb=71712+(ca<<9)+(Ta<<3)|0;Ra=c[pb>>2]&Ra;Sa=c[pb+4>>2]&Sa}qa=Ra|qa;ua=Sa|ua;va=qa|va;xa=ua|xa;if(!((Ra&v|0)==0&(Sa&C|0)==0)){ya=ya+1|0;Aa=Aa+5|0;Ta=Ra&p;Ua=Sa&o;if(!((Ta|0)==0&(Ua|0)==0)){ob=Ta-(Ta>>>1&1431655765)|0;pb=Kt(Ta|0,Ua|0,33)|0;pb=Ua-(pb&1431655765)|0;za=((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)+za|0}}pb=Ka&Ra;nb=Na&Sa;ob=pb-(pb>>>1&1431655765)|0;pb=Kt(pb|0,nb|0,33)|0;pb=nb-(pb&1431655765)|0;ob=(ob>>>2&858993459)+(ob&858993459)|0;pb=(pb>>>2&858993459)+(pb&858993459)|0;wa=(c[1002928+((ea(pb+ob+(ob>>>4)+(pb>>>4)&252645135,16843009)|0)>>>24<<2)>>2]|0)+wa|0}while((Qa&z|0)==0&(Oa&y|0)==0);Ba=Ba-Ja|0}c[1004484>>2]=Ba;Oa=W|P;Na=X|Q;Ka=~(na|Oa)&ma;Qa=~(oa|Na)&la;Ia=0;la=0;ma=0;Ra=f+1232|0;b:while(1){do{Wa=Ra;Ra=Ra+4|0;Wa=c[Wa>>2]|0;if((Wa|0)==64){break b}pb=Pa;Ua=c[pb>>2]|0;pb=c[pb+4>>2]|0;Ta=26848+(Wa<<3)|0;Va=27360+(Wa<<3)|0;Va=(ea(c[Ta+4>>2]&pb,c[Va+4>>2]|0)|0)^(ea(c[Ta>>2]&Ua,c[Va>>2]|0)|0);Va=(c[27872+(Wa<<2)>>2]|0)+(Va>>>(c[28128+(Wa<<2)>>2]|0)<<3)|0;Ta=28384+(Wa<<3)|0;Sa=28896+(Wa<<3)|0;Sa=(ea(c[Ta+4>>2]&pb,c[Sa+4>>2]|0)|0)^(ea(c[Ta>>2]&Ua,c[Sa>>2]|0)|0);Sa=(c[29408+(Wa<<2)>>2]|0)+(Sa>>>(c[29664+(Wa<<2)>>2]|0)<<3)|0;Ua=c[Sa>>2]|c[Va>>2];Va=c[Sa+4>>2]|c[Va+4>>2];Sa=29920+(Wa<<3)|0;Ta=c[Sa>>2]|0;Sa=c[Sa+4>>2]|0;if(!((Ta&x|0)==0&(Sa&w|0)==0)){pb=71712+(c[N>>2]<<9)+(Wa<<3)|0;Ua=c[pb>>2]&Ua;Va=c[pb+4>>2]&Va}la=Ua|la;ma=Va|ma;Ca=la|Ca;Da=ma|Da;if(!((Ua&D|0)==0&(Va&H|0)==0)){Fa=Fa+1|0;Ha=Ha+5|0;Wa=Ua&A;Xa=Va&B;if(!((Wa|0)==0&(Xa|0)==0)){ob=Wa-(Wa>>>1&1431655765)|0;pb=Kt(Wa|0,Xa|0,33)|0;pb=Xa-(pb&1431655765)|0;Ga=((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)+Ga|0}}pb=Ka&Ua;nb=Qa&Va;ob=pb-(pb>>>1&1431655765)|0;pb=Kt(pb|0,nb|0,33)|0;pb=nb-(pb&1431655765)|0;ob=(ob>>>2&858993459)+(ob&858993459)|0;pb=(pb>>>2&858993459)+(pb&858993459)|0;Ea=(c[1002928+((ea(pb+ob+(ob>>>4)+(pb>>>4)&252645135,16843009)|0)>>>24<<2)>>2]|0)+Ea|0}while((Ta&q|0)==0&(Sa&u|0)==0);Ia=Ia-Ja|0}c[1004544>>2]=Ia;Ja=wa-Ea|0;Ka=(ea((Ja+32768&-65536|0)/65536|0,c[250804]|0)|0)/256|0;Ja=(ea(c[1003220>>2]|0,(Ja&32767)-(Ja&32768)|0)|0)/256|0;if((c[s+64>>2]|0)==(ca|0)?(c[s+88>>2]|0)==(c[(c[l>>2]|0)+24>>2]&3|0):0){Pa=c[s+72>>2]|0}else{Pa=vg(s,f,ca)|0;c[s+72>>2]=Pa}if((Fa|0)==0){ca=Pa}else{Ua=A&~(P|q|W|na|qa)&Ca;Ta=B&~(Q|u|X|oa|ua)&Da;Wa=(ea(Fa,Ha)|0)/2|0;Ra=Ua-(Ua>>>1&1431655765)|0;Qa=Kt(Ua|0,Ta|0,33)|0;Qa=Ta-(Qa&1431655765)|0;Wa=((((ea((Qa&858993459)+(Ra&858993459)+(Ra>>>2&858993459)+(Qa>>>2&858993459)|0,286331153)|0)>>>28)+Ga|0)*3|0)+((((n|0)!=0|(t|0)!=0)&1)<<1)+((Pa+32768&-65536|0)/-2097152|0)+((Wa|0)<20?Wa:20)|0;Qa=G;Ra=c[Qa>>2]|0;Qa=c[Qa+4>>2]|0;Va=~Ra;Sa=~Qa;Xa=la&Ua&Va;Ya=ma&Ta&Sa;if(!((Xa|0)==0&(Ya|0)==0)?(ha=Xa&(S|z|ia|ra),ga=Ya&(T|y|ja|sa),!((ha|0)==0&(ga|0)==0)):0){ob=ha-(ha>>>1&1431655765)|0;pb=Kt(ha|0,ga|0,33)|0;pb=ga-(pb&1431655765)|0;Wa=(((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)*24|0)+Wa|0}ha=113696+(ca<<3)|0;ga=Ua&ra&Va&c[ha>>2];ha=Ta&sa&Sa&c[ha+4>>2];if(!((ga|0)==0&(ha|0)==0)?(fa=ga&(S|z|ia|la),da=ha&(T|y|ja|ma),!((fa|0)==0&(da|0)==0)):0){ob=fa-(fa>>>1&1431655765)|0;pb=Kt(fa|0,da|0,33)|0;pb=da-(pb&1431655765)|0;Wa=((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28<<4)+Wa|0}da=~(Ra|va);fa=~(Qa|xa);Ta=f+256|0;ha=c[Ta>>2]|0;Ta=c[Ta+4>>2]|0;Ra=26848+(ca<<3)|0;Qa=27360+(ca<<3)|0;Qa=(ea(c[Ra+4>>2]&Ta,c[Qa+4>>2]|0)|0)^(ea(c[Ra>>2]&ha,c[Qa>>2]|0)|0);Qa=(c[27872+(ca<<2)>>2]|0)+(Qa>>>(c[28128+(ca<<2)>>2]|0)<<3)|0;Ra=c[Qa>>2]&da;Qa=c[Qa+4>>2]&fa;Sa=28384+(ca<<3)|0;ga=28896+(ca<<3)|0;ga=(ea(c[Sa+4>>2]&Ta,c[ga+4>>2]|0)|0)^(ea(c[Sa>>2]&ha,c[ga>>2]|0)|0);ga=(c[29408+(ca<<2)>>2]|0)+(ga>>>(c[29664+(ca<<2)>>2]|0)<<3)|0;ha=c[ga>>2]&da;ga=c[ga+4>>2]&fa;Sa=(ha|Ra)&la;Ta=(ga|Qa)&ma;if(!((Sa|0)==0&(Ta|0)==0)){ob=Sa-(Sa>>>1&1431655765)|0;pb=Kt(Sa|0,Ta|0,33)|0;pb=Ta-(pb&1431655765)|0;Wa=(((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)*12|0)+Wa|0}Ra=Ra&ra;Qa=Qa&sa;if(!((Ra|0)==0&(Qa|0)==0)){ob=Ra-(Ra>>>1&1431655765)|0;pb=Kt(Ra|0,Qa|0,33)|0;pb=Qa-(pb&1431655765)|0;Wa=Wa+((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28<<3)|0}ha=ha&ia;ga=ga&ja;if(!((ha|0)==0&(ga|0)==0)){ob=ha-(ha>>>1&1431655765)|0;pb=Kt(ha|0,ga|0,33)|0;pb=ga-(pb&1431655765)|0;Wa=Wa+((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28<<1)|0}pb=31776+(ca<<3)|0;ca=S&da&c[pb>>2];da=T&fa&c[pb+4>>2];if(!((ca|0)==0&(da|0)==0)){ob=ca-(ca>>>1&1431655765)|0;pb=Kt(ca|0,da|0,33)|0;pb=da-(pb&1431655765)|0;Wa=(((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)*3|0)+Wa|0}ca=(Wa|0)>0?Wa:0;ca=Pa-(c[1003440+(((ca|0)<99?ca:99)<<2)>>2]|0)|0}c[1004488>>2]=ca;fa=c[N>>2]|0;if((c[s+68>>2]|0)==(fa|0)?(c[s+92>>2]|0)==(c[(c[l>>2]|0)+24>>2]&12|0):0){da=c[s+76>>2]|0}else{da=xg(s,f,fa)|0;c[s+76>>2]=da}if((ya|0)!=0){Ra=va&p&~(S|z|ia|ra|la);Qa=xa&o&~(T|y|ja|sa|ma);Ta=(ea(ya,Aa)|0)/2|0;ha=Ra-(Ra>>>1&1431655765)|0;ga=Kt(Ra|0,Qa|0,33)|0;ga=Qa-(ga&1431655765)|0;Ta=((((ea((ga&858993459)+(ha&858993459)+(ha>>>2&858993459)+(ga>>>2&858993459)|0,286331153)|0)>>>28)+za|0)*3|0)+((((x|0)!=0|(w|0)!=0)&1)<<1)+((da+32768&-65536|0)/-2097152|0)+((Ta|0)<20?Ta:20)|0;ga=F;ha=c[ga>>2]|0;ga=c[ga+4>>2]|0;Sa=~ha;Pa=~ga;Va=Ra&qa&Sa;Ua=Qa&ua&Pa;if(!((Va|0)==0&(Ua|0)==0)?(_=Va&(P|q|W|na),$=Ua&(Q|u|X|oa),!((_|0)==0&($|0)==0)):0){ob=_-(_>>>1&1431655765)|0;pb=Kt(_|0,$|0,33)|0;pb=$-(pb&1431655765)|0;Ta=(((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)*24|0)+Ta|0}$=113696+(fa<<3)|0;_=Ra&na&Sa&c[$>>2];$=Qa&oa&Pa&c[$+4>>2];if(!((_|0)==0&($|0)==0)?(Y=_&(P|q|W|qa),Z=$&(Q|u|X|ua),!((Y|0)==0&(Z|0)==0)):0){ob=Y-(Y>>>1&1431655765)|0;pb=Kt(Y|0,Z|0,33)|0;pb=Z-(pb&1431655765)|0;Ta=((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28<<4)+Ta|0}Z=~(ha|Ca);Y=~(ga|Da);Pa=f+256|0;$=c[Pa>>2]|0;Pa=c[Pa+4>>2]|0;ha=26848+(fa<<3)|0;ga=27360+(fa<<3)|0;ga=(ea(c[ha+4>>2]&Pa,c[ga+4>>2]|0)|0)^(ea(c[ha>>2]&$,c[ga>>2]|0)|0);ga=(c[27872+(fa<<2)>>2]|0)+(ga>>>(c[28128+(fa<<2)>>2]|0)<<3)|0;ha=c[ga>>2]&Z;ga=c[ga+4>>2]&Y;Qa=28384+(fa<<3)|0;_=28896+(fa<<3)|0;_=(ea(c[Qa+4>>2]&Pa,c[_+4>>2]|0)|0)^(ea(c[Qa>>2]&$,c[_>>2]|0)|0);_=(c[29408+(fa<<2)>>2]|0)+(_>>>(c[29664+(fa<<2)>>2]|0)<<3)|0;$=c[_>>2]&Z;_=c[_+4>>2]&Y;Qa=($|ha)&qa;Pa=(_|ga)&ua;if(!((Qa|0)==0&(Pa|0)==0)){ob=Qa-(Qa>>>1&1431655765)|0;pb=Kt(Qa|0,Pa|0,33)|0;pb=Pa-(pb&1431655765)|0;Ta=(((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)*12|0)+Ta|0}ha=ha&na;ga=ga&oa;if(!((ha|0)==0&(ga|0)==0)){ob=ha-(ha>>>1&1431655765)|0;pb=Kt(ha|0,ga|0,33)|0;pb=ga-(pb&1431655765)|0;Ta=Ta+((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28<<3)|0}$=$&W;_=_&X;if(!(($|0)==0&(_|0)==0)){ob=$-($>>>1&1431655765)|0;pb=Kt($|0,_|0,33)|0;pb=_-(pb&1431655765)|0;Ta=Ta+((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28<<1)|0}pb=31776+(fa<<3)|0;Z=P&Z&c[pb>>2];Y=Q&Y&c[pb+4>>2];if(!((Z|0)==0&(Y|0)==0)){ob=Z-(Z>>>1&1431655765)|0;pb=Kt(Z|0,Y|0,33)|0;pb=Y-(pb&1431655765)|0;Ta=(((ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)*3|0)+Ta|0}pb=(Ta|0)>0?Ta:0;da=da-(c[1003440+(((pb|0)<99?pb:99)<<2)>>2]|0)|0}c[1004548>>2]=da;_=G;Y=~z;Z=~y;$=va&Y&c[_>>2];_=xa&Z&c[_+4>>2];if(!(($|0)==0&(_|0)==0)){fa=$&Oa;ga=_&Na;if((fa|0)==0&(ga|0)==0){fa=0}else{fa=c[1003056+((c[f+((bd(fa,ga)|0)<<2)>>2]&7)<<2)>>2]|0}ga=$&(qa|na);ha=_&(ua|oa);if(!((ga|0)==0&(ha|0)==0)){fa=(c[1003088+((c[f+((bd(ga,ha)|0)<<2)>>2]&7)<<2)>>2]|0)+fa|0}$=$&~Ca;_=_&~Da;if(!(($|0)==0&(_|0)==0)){pb=Jt($|0,_|0,-1,-1)|0;ga=c[250786]|0;if(!((pb&$|0)==0&(I&_|0)==0)){ob=$-($>>>1&1431655765)|0;pb=Kt($|0,_|0,33)|0;pb=_-(pb&1431655765)|0;ga=ea(ga,(ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)|0}fa=ga+fa|0}}else{fa=0}c[1004508>>2]=fa;ga=F;$=~q;_=~u;Na=Ca&$&c[ga>>2];ga=Da&_&c[ga+4>>2];if(!((Na|0)==0&(ga|0)==0)){ha=Na&Ma;La=ga&La;if((ha|0)==0&(La|0)==0){ha=0}else{ha=c[1003056+((c[f+((bd(ha,La)|0)<<2)>>2]&7)<<2)>>2]|0}La=Na&(la|ra);Ma=ga&(ma|sa);if(!((La|0)==0&(Ma|0)==0)){ha=(c[1003088+((c[f+((bd(La,Ma)|0)<<2)>>2]&7)<<2)>>2]|0)+ha|0}La=Na&~va;ga=ga&~xa;if(!((La|0)==0&(ga|0)==0)){pb=Jt(La|0,ga|0,-1,-1)|0;Ma=c[250786]|0;if(!((pb&La|0)==0&(I&ga|0)==0)){ob=La-(La>>>1&1431655765)|0;pb=Kt(La|0,ga|0,33)|0;pb=ga-(pb&1431655765)|0;Ma=ea(Ma,(ea((pb&858993459)+(ob&858993459)+(ob>>>2&858993459)+(pb>>>2&858993459)|0,286331153)|0)>>>28)|0}ha=Ma+ha|0}}else{ha=0}c[1004568>>2]=ha;ga=s+16|0;pb=ga;ob=c[pb>>2]|0;pb=c[pb+4>>2]|0;nb=j;c[nb>>2]=ob;c[nb+4>>2]=pb;if((ob|0)==0&(pb|0)==0){Qa=0}else{La=f+340|0;Ma=f+372|0;Oa=f+288|0;Pa=f+296|0;Na=f+256|0;Qa=0;do{Ua=cd(j)|0;Ra=Ua>>3;Ta=Ra+-1|0;Ra=ea(Ta,Ra+-2|0)|0;Va=Ra*17|0;Ta=((Ra+Ta|0)*7|0)+7|0;do{if((Ra|0)!=0){Sa=Ua+8|0;Wa=c[O>>2]|0;Ta=(ea(((c[115744+(c[N>>2]<<8)+(Sa<<2)>>2]|0)*5|0)-(c[115744+(Wa<<8)+(Sa<<2)>>2]<<1)|0,Ra)|0)+Ta|0;if((Sa&-8|0)!=56){Ta=Ta-(ea(c[115744+(Wa<<8)+(Ua+16<<2)>>2]|0,Ra)|0)|0}if((c[f+(Sa<<2)>>2]|0)!=0){break}Wa=108576+(Ua<<3)|0;Va=c[Wa>>2]|0;Wa=c[Wa+4>>2]|0;Ya=109088+(Ua<<3)|0;$a=c[Ya>>2]|0;Ya=c[Ya+4>>2]|0;_a=G;cb=c[_a>>2]|0;_a=c[_a+4>>2]|0;Xa=Oa;bb=Pa;ab=c[bb>>2]|c[Xa>>2];Xa=c[bb+4>>2]|c[Xa+4>>2];bb=cb&$a&ab;Za=_a&Ya&Xa;if(!((bb|0)==0&(Za|0)==0)?(ob=Na,nb=26848+(Ua<<3)|0,pb=27360+(Ua<<3)|0,pb=(ea(c[nb+4>>2]&c[ob+4>>2],c[pb+4>>2]|0)|0)^(ea(c[nb>>2]&c[ob>>2],c[pb>>2]|0)|0),pb=(c[27872+(Ua<<2)>>2]|0)+(pb>>>(c[28128+(Ua<<2)>>2]|0)<<3)|0,!((c[pb>>2]&bb|0)==0?(c[pb+4>>2]&Za|0)==0:0)):0){Za=Va;_a=Wa}else{Za=(cb|Ca)&Va;_a=(_a|Da)&Wa}pb=F;$a=ab&$a&c[pb>>2];Xa=Xa&Ya&c[pb+4>>2];if(!(($a|0)==0&(Xa|0)==0)?(ob=Na,nb=26848+(Ua<<3)|0,pb=27360+(Ua<<3)|0,pb=(ea(c[nb+4>>2]&c[ob+4>>2],c[pb+4>>2]|0)|0)^(ea(c[nb>>2]&c[ob>>2],c[pb>>2]|0)|0),pb=(c[27872+(Ua<<2)>>2]|0)+(pb>>>(c[28128+(Ua<<2)>>2]|0)<<3)|0,!((c[pb>>2]&$a|0)==0?(c[pb+4>>2]&Xa|0)==0:0)):0){Xa=Va;Ua=Wa}else{Xa=Va&va;Ua=Wa&xa}if((Za|0)==0&(_a|0)==0){Ya=15}else{Ya=29920+(Sa<<3)|0;Ya=((c[Ya>>2]&Za|0)==0?(c[Ya+4>>2]&_a|0)==0:0)?9:0}if((Xa|0)==(Va|0)&(Ua|0)==(Wa|0)){Sa=Ya+6|0}else{Sa=29920+(Sa<<3)|0;Sa=((c[Sa>>2]&Xa|0)==0?(c[Sa+4>>2]&Ua|0)==0:0)?Ya:Ya+4|0}Ta=(ea(Sa,Ra)|0)+Ta|0;
+Va=ea(Sa+17|0,Ra)|0}}while(0);if((c[La>>2]|0)<(c[Ma>>2]|0)){Ta=((Ta|0)/4|0)+Ta|0}Qa=(Va<<16)+Qa+Ta|0;pb=j}while(!((c[pb>>2]|0)==0&(c[pb+4>>2]|0)==0))}Oa=c[1003232>>2]|0;Na=c[1003236>>2]|0;Ma=(((ea((Qa+32768&-65536|0)/65536|0,Oa)|0)/256|0)<<16)+((ea(Na,(Qa&32767)-(Qa&32768)|0)|0)/256|0)|0;c[1004512>>2]=Ma;La=s+24|0;pb=La;ob=c[pb>>2]|0;pb=c[pb+4>>2]|0;nb=j;c[nb>>2]=ob;c[nb+4>>2]=pb;if((ob|0)==0&(pb|0)==0){N=Na;Na=0}else{Qa=f+372|0;Pa=f+340|0;Ra=f+288|0;Oa=f+296|0;Sa=f+256|0;Na=0;do{Wa=cd(j)|0;Ta=Wa>>3^7;Va=Ta+-1|0;Ta=ea(Va,Ta+-2|0)|0;Xa=Ta*17|0;Va=((Ta+Va|0)*7|0)+7|0;do{if((Ta|0)!=0){Ua=Wa+-8|0;Ya=c[N>>2]|0;Va=(ea(((c[115744+(c[O>>2]<<8)+(Ua<<2)>>2]|0)*5|0)-(c[115744+(Ya<<8)+(Ua<<2)>>2]<<1)|0,Ta)|0)+Va|0;if(!(Ua>>>0<8)){Va=Va-(ea(c[115744+(Ya<<8)+(Wa+-16<<2)>>2]|0,Ta)|0)|0}if((c[f+(Ua<<2)>>2]|0)!=0){break}Ya=109088+(Wa<<3)|0;Xa=c[Ya>>2]|0;Ya=c[Ya+4>>2]|0;Za=108576+(Wa<<3)|0;bb=c[Za>>2]|0;Za=c[Za+4>>2]|0;ab=F;$a=c[ab>>2]|0;ab=c[ab+4>>2]|0;_a=Ra;db=Oa;cb=c[db>>2]|c[_a>>2];_a=c[db+4>>2]|c[_a+4>>2];db=$a&bb&cb;eb=ab&Za&_a;if(!((db|0)==0&(eb|0)==0)?(ob=Sa,nb=26848+(Wa<<3)|0,pb=27360+(Wa<<3)|0,pb=(ea(c[nb+4>>2]&c[ob+4>>2],c[pb+4>>2]|0)|0)^(ea(c[nb>>2]&c[ob>>2],c[pb>>2]|0)|0),pb=(c[27872+(Wa<<2)>>2]|0)+(pb>>>(c[28128+(Wa<<2)>>2]|0)<<3)|0,!((c[pb>>2]&db|0)==0?(c[pb+4>>2]&eb|0)==0:0)):0){$a=Xa;ab=Ya}else{$a=($a|va)&Xa;ab=(ab|xa)&Ya}pb=G;bb=cb&bb&c[pb>>2];Za=_a&Za&c[pb+4>>2];if(!((bb|0)==0&(Za|0)==0)?(ob=Sa,nb=26848+(Wa<<3)|0,pb=27360+(Wa<<3)|0,pb=(ea(c[nb+4>>2]&c[ob+4>>2],c[pb+4>>2]|0)|0)^(ea(c[nb>>2]&c[ob>>2],c[pb>>2]|0)|0),pb=(c[27872+(Wa<<2)>>2]|0)+(pb>>>(c[28128+(Wa<<2)>>2]|0)<<3)|0,!((c[pb>>2]&bb|0)==0?(c[pb+4>>2]&Za|0)==0:0)):0){Wa=Xa;Za=Ya}else{Wa=Xa&Ca;Za=Ya&Da}if(($a|0)==0&(ab|0)==0){_a=15}else{_a=29920+(Ua<<3)|0;_a=((c[_a>>2]&$a|0)==0?(c[_a+4>>2]&ab|0)==0:0)?9:0}if((Wa|0)==(Xa|0)&(Za|0)==(Ya|0)){Ua=_a+6|0}else{Ua=29920+(Ua<<3)|0;Ua=((c[Ua>>2]&Wa|0)==0?(c[Ua+4>>2]&Za|0)==0:0)?_a:_a+4|0}Va=(ea(Ua,Ta)|0)+Va|0;Xa=ea(Ua+17|0,Ta)|0}}while(0);if((c[Qa>>2]|0)<(c[Pa>>2]|0)){Va=((Va|0)/4|0)+Va|0}Na=(Xa<<16)+Na+Va|0;pb=j}while(!((c[pb>>2]|0)==0&(c[pb+4>>2]|0)==0));Oa=c[1003232>>2]|0;N=c[1003236>>2]|0}pb=(((ea((Na+32768&-65536|0)/65536|0,Oa)|0)/256|0)<<16)+((ea((Na&32767)-(Na&32768)|0,N)|0)/256|0)|0;c[1004572>>2]=pb;K=K+J+L+R-V+ba-ka+pa-ta+Ba-Ia+Ja+(Ka+M<<16)+ca-da+fa-ha+Ma-pb|0;J=c[l>>2]|0;do{if((c[J+16>>2]|0)==0){if((c[J+20>>2]|0)!=0){break}L=ga;pb=s+32|0;J=c[pb>>2]|c[L>>2];L=c[pb+4>>2]|c[L+4>>2];if((J|0)==0&(L|0)==0){J=0}else{pb=c[250800]|0;J=ea((dd(J,L)|0)>>3,pb)|0}L=La;pb=s+40|0;M=c[pb>>2]|c[L>>2];L=c[pb+4>>2]|c[L+4>>2];if((M|0)==0&(L|0)==0){L=0}else{pb=c[250800]|0;L=ea((bd(M,L)|0)>>3^7,pb)|0}K=J+K-L|0}}while(0);J=m+24|0;L=c[J>>2]|0;if((L|0)!=0){mb=E;ob=c[mb>>2]|0;mb=c[mb+4>>2]|0;kb=F;nb=c[kb>>2]&ob;kb=c[kb+4>>2]&mb;(Da|xa)&Z;lb=(Ca^1010580480|va)&Y&(nb&1010580480^1010580480);pb=Kt(nb|0,kb|0,8)|0;nb=pb|nb;kb=I|kb;pb=Kt(nb|0,kb|0,16)|0;I|kb;nb=(pb|nb)&lb;nb=nb-(nb>>>1&1431655765)|0;pb=Kt(lb|0,0,1)|0;pb=lb-(pb&336860160)|0;nb=(nb>>>2&858993459)+(nb&858993459)|0;pb=(pb>>>2&858993459)+(pb&858992640)|0;nb=(ea((pb>>>4)+pb+nb+(nb>>>4)&252645135,16843009)|0)>>>24;pb=G;ob=c[pb>>2]&ob;mb=c[pb+4>>2]&mb;(Ca|va)&$;pb=(Da|xa^3947580)&_&(mb&3947580^3947580);lb=Mt(ob|0,mb|0,8)|0;ob=lb|ob;mb=I|mb;lb=Mt(ob|0,mb|0,16)|0;lb|ob;mb=(I|mb)&pb;ob=Kt(0,pb|0,33)|0;ob=pb-(ob&1315860)|0;pb=Kt(0,mb|0,33)|0;pb=mb-(pb&1431655765)|0;ob=(ob>>>2&858993459)+(ob&858993459)|0;pb=(pb>>>2&858993459)+(pb&858993459)|0;pb=ea(nb-((ea((ob>>>4)+ob+pb+(pb>>>4)&252645135,16843009)|0)>>>24)|0,L)|0;K=((ea((pb&32767)-(pb&32768)|0,c[1003244>>2]|0)|0)/256|0)+K+(((ea((pb+32768&-65536|0)/65536|0,c[1003240>>2]|0)|0)/256|0)<<16)|0}L=(K&32767)-(K&32768)|0;c:do{if((L|0)>0){N=m+16|0;M=c[N>>2]|0;do{if((M|0)!=0){if((pc[c[(c[M>>2]|0)+12>>2]&63](M,f)|0)==255){break}N=c[N>>2]|0;N=pc[c[(c[N>>2]|0)+12>>2]&63](N,f)|0;break c}}while(0);N=d[m+10>>0]|0}else{M=m+20|0;N=c[M>>2]|0;do{if((N|0)!=0){if((pc[c[(c[N>>2]|0)+12>>2]&63](N,f)|0)==255){break}N=c[M>>2]|0;N=pc[c[(c[N>>2]|0)+12>>2]&63](N,f)|0;break c}}while(0);N=d[m+11>>0]|0}}while(0);M=c[m+28>>2]|0;d:do{if((M|0)<128){if((c[f+348>>2]|0)!=1){break}if((c[f+380>>2]|0)!=1){break}pb=c[aa>>2]^c[U>>2];if(((pb>>>3^pb)&1|0)==0){break}if(!((N|0)==48|(N|0)==64)){break}O=c[l>>2]|0;do{if((c[O+16>>2]|0)==836){if((c[O+20>>2]|0)!=836){break}N=((c[f+372>>2]|0)+(c[f+340>>2]|0)|0)==1?8:32;break d}}while(0);N=(N*50|0)/64|0}}while(0);pb=(((ea(ea(128-M|0,L)|0,N)|0)/64|0)+(ea((K+32768&-65536|0)/65536|0,M)|0)|0)/128|0;c[1004496>>2]=c[(c[l>>2]|0)+36>>2];c[1004556>>2]=0;c[1004500>>2]=(b[k>>1]|0)*65537;c[1004560>>2]=0;c[1004468>>2]=c[r>>2];c[1004528>>2]=0;ob=c[250804]|0;lb=c[1003220>>2]|0;k=(((ea((Ea+32768&-65536|0)/65536|0,ob)|0)/256|0)<<16)+((ea(lb,(Ea&32767)-(Ea&32768)|0)|0)/256|0)|0;c[1004504>>2]=(((ea((wa+32768&-65536|0)/65536|0,ob)|0)/256|0)<<16)+((ea(lb,(wa&32767)-(wa&32768)|0)|0)/256|0);c[1004564>>2]=k;k=c[J>>2]|0;lb=E;ob=c[lb>>2]|0;lb=c[lb+4>>2]|0;jb=F;nb=c[jb>>2]&ob;jb=c[jb+4>>2]&lb;(Da|xa)&Z;kb=(Ca^1010580480|va)&Y&(nb&1010580480^1010580480);mb=Kt(nb|0,jb|0,8)|0;nb=mb|nb;jb=I|jb;mb=Kt(nb|0,jb|0,16)|0;I|jb;nb=(mb|nb)&kb;nb=nb-(nb>>>1&1431655765)|0;mb=Kt(kb|0,0,1)|0;mb=kb-(mb&336860160)|0;nb=(nb>>>2&858993459)+(nb&858993459)|0;mb=(mb>>>2&858993459)+(mb&858992640)|0;nb=ea((ea((mb>>>4)+mb+nb+(nb>>>4)&252645135,16843009)|0)>>>24,k)|0;mb=G;ob=c[mb>>2]&ob;lb=c[mb+4>>2]&lb;(Ca|va)&$;mb=(Da|xa^3947580)&_&(lb&3947580^3947580);kb=Mt(ob|0,lb|0,8)|0;ob=kb|ob;lb=I|lb;kb=Mt(ob|0,lb|0,16)|0;kb|ob;lb=(I|lb)&mb;ob=Kt(0,mb|0,33)|0;ob=mb-(ob&1315860)|0;mb=Kt(0,lb|0,33)|0;mb=lb-(mb&1431655765)|0;ob=(ob>>>2&858993459)+(ob&858993459)|0;mb=(mb>>>2&858993459)+(mb&858993459)|0;k=ea((ea((ob>>>4)+ob+mb+(mb>>>4)&252645135,16843009)|0)>>>24,k)|0;mb=c[1003240>>2]|0;ob=c[1003244>>2]|0;k=(((ea((k+32768&-65536|0)/65536|0,mb)|0)/256|0)<<16)+((ea((k&32767)-(k&32768)|0,ob)|0)/256|0)|0;c[1004516>>2]=(((ea((nb+32768&-65536|0)/65536|0,mb)|0)/256|0)<<16)+((ea((nb&32767)-(nb&32768)|0,ob)|0)/256|0);c[1004576>>2]=k;c[1004520>>2]=K;c[1004580>>2]=0;c[251294]=m;c[1005180>>2]=s;k=1005184|0;c[k>>2]=va;c[k+4>>2]=xa;k=1005192|0;c[k>>2]=q;c[k+4>>2]=u;k=1005200|0;c[k>>2]=P;c[k+4>>2]=Q;k=1005208|0;c[k>>2]=W;c[k+4>>2]=X;k=1005216|0;c[k>>2]=na;c[k+4>>2]=oa;k=1005224|0;c[k>>2]=qa;c[k+4>>2]=ua;k=1005232|0;c[k>>2]=A;c[k+4>>2]=B;k=1005240|0;c[k>>2]=0;c[k+4>>2]=0;k=1005248|0;c[k>>2]=Ca;c[k+4>>2]=Da;k=1005256|0;c[k>>2]=z;c[k+4>>2]=y;k=1005264|0;c[k>>2]=S;c[k+4>>2]=T;k=1005272|0;c[k>>2]=ia;c[k+4>>2]=ja;k=1005280|0;c[k>>2]=ra;c[k+4>>2]=sa;k=1005288|0;c[k>>2]=la;c[k+4>>2]=ma;k=1005296|0;c[k>>2]=p;c[k+4>>2]=o;k=1005304|0;c[k>>2]=0;c[k+4>>2]=0;k=1005312|0;c[k>>2]=D;c[k+4>>2]=H;k=1005320|0;c[k>>2]=v;c[k+4>>2]=C;c[1005328>>2]=ya;c[1005332>>2]=Fa;c[1005336>>2]=Aa;c[1005340>>2]=Ha;c[1005344>>2]=za;c[1005348>>2]=Ga;k=1005352|0;c[k>>2]=n;c[k+4>>2]=t;k=1005360|0;c[k>>2]=x;c[k+4>>2]=w;f=c[f+2212>>2]|0;k=f;f=(f|0)==0?pb:0-pb|0}else{pb=pc[c[(c[o>>2]|0)+12>>2]&63](o,f)|0;k=c[f+2212>>2]|0;f=pb}o=(k|0)==0?f:0-f|0;p=g+64|0;m=g+8|0;c[m>>2]=1004984;n=g+12|0;c[g>>2]=1005028;c[p>>2]=1005048;c[g+4>>2]=0;k=g+64|0;Ck(k,n);c[g+136>>2]=0;c[g+140>>2]=-1;c[g>>2]=1004964;c[p>>2]=1005004;c[m>>2]=1004984;c[n>>2]=1080120;f=g+16|0;Op(f);l=g+20|0;c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[l+20>>2]=0;c[n>>2]=1005064;l=g+44|0;pb=g+60|0;c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[pb>>2]=24;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;ef(n,j);if(!((a[j>>0]&1)==0)){Ys(c[j+8>>2]|0)}pb=g+8|0;mb=pb+((c[(c[pb>>2]|0)+-12>>2]|0)+4)|0;c[mb>>2]=c[mb>>2]|1024;mb=pb+((c[(c[pb>>2]|0)+-12>>2]|0)+4)|0;c[mb>>2]=c[mb>>2]&-2049;mb=pb+((c[(c[pb>>2]|0)+-12>>2]|0)+4)|0;c[mb>>2]=c[mb>>2]&-261|4;c[pb+((c[(c[pb>>2]|0)+-12>>2]|0)+8)>>2]=2;Fc(Fc(Fc(pb,1004584)|0,1004648)|0,1004712)|0;mb=c[1004496>>2]|0;ob=c[1004556>>2]|0;c[pb+((c[(c[pb>>2]|0)+-12>>2]|0)+12)>>2]=15;nb=Fc(Fc(pb,1004776)|0,1005120)|0;c[nb+((c[(c[nb>>2]|0)+-12>>2]|0)+12)>>2]=5;ob=mb-ob|0;nb=Fc(yl(nb,+((ob+32768&-65536|0)/65536|0|0)/258)|0,1005152)|0;c[nb+((c[(c[nb>>2]|0)+-12>>2]|0)+12)>>2]=5;Fc(yl(nb,+((ob&32767)-(ob&32768)|0)/258)|0,1005160)|0;ob=c[1004500>>2]|0;nb=c[1004560>>2]|0;c[pb+((c[(c[pb>>2]|0)+-12>>2]|0)+12)>>2]=15;mb=Fc(Fc(pb,1004792)|0,1005120)|0;c[mb+((c[(c[mb>>2]|0)+-12>>2]|0)+12)>>2]=5;nb=ob-nb|0;mb=Fc(yl(mb,+((nb+32768&-65536|0)/65536|0|0)/258)|0,1005152)|0;c[mb+((c[(c[mb>>2]|0)+-12>>2]|0)+12)>>2]=5;Fc(yl(mb,+((nb&32767)-(nb&32768)|0)/258)|0,1005160)|0;nb=c[1004468>>2]|0;mb=c[1004528>>2]|0;c[pb+((c[(c[pb>>2]|0)+-12>>2]|0)+12)>>2]=15;ob=Fc(Fc(pb,1004808)|0,1005120)|0;c[ob+((c[(c[ob>>2]|0)+-12>>2]|0)+12)>>2]=5;mb=nb-mb|0;ob=Fc(yl(ob,+((mb+32768&-65536|0)/65536|0|0)/258)|0,1005152)|0;c[ob+((c[(c[ob>>2]|0)+-12>>2]|0)+12)>>2]=5;Fc(yl(ob,+((mb&32767)-(mb&32768)|0)/258)|0,1005160)|0;Re(g,1004816,2);Re(g,1004824,3);Re(g,1004832,4);Re(g,1004840,5);Re(g,1004848,10);Re(g,1004864,6);Re(g,1004880,11);Re(g,1004888,12);Re(g,1003416,13);Fc(pb,1004712)|0;mb=c[1004520>>2]|0;ob=c[1004580>>2]|0;c[pb+((c[(c[pb>>2]|0)+-12>>2]|0)+12)>>2]=15;nb=Fc(Fc(pb,1004904)|0,1005120)|0;c[nb+((c[(c[nb>>2]|0)+-12>>2]|0)+12)>>2]=5;ob=mb-ob|0;nb=Fc(yl(nb,+((ob+32768&-65536|0)/65536|0|0)/258)|0,1005152)|0;c[nb+((c[(c[nb>>2]|0)+-12>>2]|0)+12)>>2]=5;Fc(yl(nb,+((ob&32767)-(ob&32768)|0)/258)|0,1005160)|0;Fc(yl(Fc(pb,1004912)|0,+(o|0)/258)|0,1004936)|0;df(e,n);c[g>>2]=1004964;c[p>>2]=1005004;c[m>>2]=1004984;e=g+12|0;c[e>>2]=1005064;if((a[l>>0]&1)==0){c[e>>2]=1080120;Qp(f);yk(k);i=h;return}Ys(c[g+52>>2]|0);c[e>>2]=1080120;Qp(f);yk(k);i=h;return}function Qe(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;b=i;i=i+128|0;r=b+108|0;p=b+96|0;o=b+84|0;n=b+72|0;j=b+60|0;m=b+48|0;k=b+36|0;l=b+24|0;h=b+12|0;g=b;s=Vs(32)|0;q=r+8|0;c[q>>2]=s;c[r>>2]=33;c[r+4>>2]=18;f=s+0|0;e=1003256|0;d=f+18|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));a[s+18>>0]=0;s=Vs(32)|0;t=p+8|0;c[t>>2]=s;c[p>>2]=33;c[p+4>>2]=18;f=s+0|0;e=1003280|0;d=f+18|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));a[s+18>>0]=0;f=c[250566]|0;e=(ea((f+32768&-65536|0)/65536|0,Ii(Cc(1077312,r)|0)|0)|0)/100|0;f=(ea(Ii(Cc(1077312,p)|0)|0,(f&32767)-(f&32768)|0)|0)/100|0;s=1003216;c[s>>2]=e;c[s+4>>2]=f;if(!((a[p>>0]&1)==0)){Ys(c[t>>2]|0)}if(!((a[r>>0]&1)==0)){Ys(c[q>>2]|0)}q=Vs(32)|0;p=o+8|0;c[p>>2]=q;c[o>>2]=33;c[o+4>>2]=24;f=q+0|0;e=1003304|0;d=f+24|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));a[q+24>>0]=0;q=Vs(32)|0;r=n+8|0;c[r>>2]=q;c[n>>2]=33;c[n+4>>2]=24;f=q+0|0;e=1003336|0;d=f+24|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));a[q+24>>0]=0;s=c[1002268>>2]|0;q=(ea((s+32768&-65536|0)/65536|0,Ii(Cc(1077312,o)|0)|0)|0)/100|0;s=(ea(Ii(Cc(1077312,n)|0)|0,(s&32767)-(s&32768)|0)|0)/100|0;t=1003224|0;c[t>>2]=q;c[t+4>>2]=s;if(!((a[n>>0]&1)==0)){Ys(c[r>>2]|0)}if(!((a[o>>0]&1)==0)){Ys(c[p>>2]|0)}o=Vs(32)|0;n=j+8|0;c[n>>2]=o;c[j>>2]=33;c[j+4>>2]=22;f=o+0|0;e=1003368|0;d=f+22|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));a[o+22>>0]=0;p=Vs(32)|0;o=m+8|0;c[o>>2]=p;c[m>>2]=33;c[m+4>>2]=22;f=p+0|0;e=1003392|0;d=f+22|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));a[p+22>>0]=0;s=c[1002272>>2]|0;r=(ea((s+32768&-65536|0)/65536|0,Ii(Cc(1077312,j)|0)|0)|0)/100|0;s=(ea(Ii(Cc(1077312,m)|0)|0,(s&32767)-(s&32768)|0)|0)/100|0;t=1003232|0;c[t>>2]=r;c[t+4>>2]=s;if(!((a[m>>0]&1)==0)){Ys(c[o>>2]|0)}if(!((a[j>>0]&1)==0)){Ys(c[n>>2]|0)}a[k>>0]=10;s=k+1|0;a[s+0>>0]=a[1003416>>0]|0;a[s+1>>0]=a[1003417>>0]|0;a[s+2>>0]=a[1003418>>0]|0;a[s+3>>0]=a[1003419>>0]|0;a[s+4>>0]=a[1003420>>0]|0;a[k+6>>0]=0;a[l>>0]=10;s=l+1|0;a[s+0>>0]=a[1003416>>0]|0;a[s+1>>0]=a[1003417>>0]|0;a[s+2>>0]=a[1003418>>0]|0;a[s+3>>0]=a[1003419>>0]|0;a[s+4>>0]=a[1003420>>0]|0;a[l+6>>0]=0;s=c[1002276>>2]|0;r=(ea((s+32768&-65536|0)/65536|0,Ii(Cc(1077312,k)|0)|0)|0)/100|0;s=(ea(Ii(Cc(1077312,l)|0)|0,(s&32767)-(s&32768)|0)|0)/100|0;t=1003240|0;c[t>>2]=r;c[t+4>>2]=s;if(!((a[l>>0]&1)==0)){Ys(c[l+8>>2]|0)}if(!((a[k>>0]&1)==0)){Ys(c[k+8>>2]|0)}k=Vs(16)|0;j=h+8|0;c[j>>2]=k;c[h>>2]=17;c[h+4>>2]=11;f=k+0|0;e=1003424|0;d=f+11|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));a[k+11>>0]=0;k=Vs(16)|0;l=g+8|0;c[l>>2]=k;c[g>>2]=17;c[g+4>>2]=11;f=k+0|0;e=1003424|0;d=f+11|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));a[k+11>>0]=0;s=c[1002280>>2]|0;r=(ea((s+32768&-65536|0)/65536|0,Ii(Cc(1077312,h)|0)|0)|0)/100|0;s=(ea(Ii(Cc(1077312,g)|0)|0,(s&32767)-(s&32768)|0)|0)/100|0;t=1003248|0;c[t>>2]=r;c[t+4>>2]=s;if(!((a[g>>0]&1)==0)){Ys(c[l>>2]|0)}if(!((a[h>>0]&1)==0)){Ys(c[j>>2]|0)}d=c[1003248>>2]|0;e=1;f=0;do{u=+(e|0);u=u*u*.4;v=+(f|0)+30;u=v<u?v:u;f=u<1280?~~u:1280;c[1003440+(e<<2)>>2]=((ea((f<<16|0)/65536|0,d)|0)/256|0)<<16;e=e+1|0}while((e|0)!=100);i=b;return}function Re(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;g=c[1004464+(d<<2)>>2]|0;f=c[1004524+(d<<2)>>2]|0;if((d|0)==14|(d|0)==1|(d|0)==9|(d|0)==8){d=a+8|0;c[d+((c[(c[d>>2]|0)+-12>>2]|0)+12)>>2]=15;b=Fc(Fc(d,b)|0,1005120)|0;c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=5;d=g-f|0;b=Fc(yl(b,+((d+32768&-65536|0)/65536|0|0)/258)|0,1005152)|0;c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=5;Fc(yl(b,+((d&32767)-(d&32768)|0)/258)|0,1005160)|0;i=e;return}else{d=a+8|0;c[d+((c[(c[d>>2]|0)+-12>>2]|0)+12)>>2]=15;b=Fc(Fc(d,b)|0,1005168)|0;d=b+((c[(c[b>>2]|0)+-12>>2]|0)+4)|0;c[d>>2]=c[d>>2]&-2049;c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=5;b=Fc(yl(b,+((g+32768&-65536|0)/65536|0|0)/258)|0,1005152)|0;c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=5;b=Fc(yl(b,+((g&32767)-(g&32768)|0)/258)|0,1005168)|0;c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=5;b=Fc(yl(b,+((f+32768&-65536|0)/65536|0|0)/258)|0,1005152)|0;c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=5;b=Fc(yl(b,+((f&32767)-(f&32768)|0)/258)|0,1005168)|0;c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=5;d=g-f|0;b=Fc(yl(b,+((d+32768&-65536|0)/65536|0|0)/258)|0,1005152)|0;c[b+((c[(c[b>>2]|0)+-12>>2]|0)+12)>>2]=5;Fc(yl(b,+((d&32767)-(d&32768)|0)/258)|0,1005160)|0;i=e;return}}function Se(b){b=b|0;var d=0,e=0;d=i;c[b>>2]=1004964;c[b+64>>2]=1005004;c[b+8>>2]=1004984;e=b+12|0;c[e>>2]=1005064;if(!((a[b+44>>0]&1)==0)){Ys(c[b+52>>2]|0)}c[e>>2]=1080120;Qp(b+16|0);yk(b+64|0);i=d;return}function Te(b){b=b|0;var d=0,e=0,f=0;d=i;e=b+-8|0;c[e>>2]=1004964;b=e+64|0;c[b>>2]=1005004;c[e+8>>2]=1004984;f=e+12|0;c[f>>2]=1005064;if(!((a[e+44>>0]&1)==0)){Ys(c[e+52>>2]|0)}c[f>>2]=1080120;Qp(e+16|0);yk(b);i=d;return}function Ue(b){b=b|0;var d=0,e=0,f=0,g=0;d=i;f=c[(c[b>>2]|0)+-12>>2]|0;c[b+f>>2]=1004964;e=b+(f+64)|0;c[e>>2]=1005004;c[b+(f+8)>>2]=1004984;g=b+(f+12)|0;c[g>>2]=1005064;if(!((a[b+(f+44)>>0]&1)==0)){Ys(c[b+(f+52)>>2]|0)}c[g>>2]=1080120;Qp(b+(f+16)|0);yk(e);i=d;return}function Ve(b){b=b|0;var d=0,e=0;d=i;c[b>>2]=1004964;c[b+64>>2]=1005004;c[b+8>>2]=1004984;e=b+12|0;c[e>>2]=1005064;if(!((a[b+44>>0]&1)==0)){Ys(c[b+52>>2]|0)}c[e>>2]=1080120;Qp(b+16|0);yk(b+64|0);Ys(b);i=d;return}function We(b){b=b|0;var d=0,e=0,f=0;d=i;b=b+-8|0;c[b>>2]=1004964;e=b+64|0;c[e>>2]=1005004;c[b+8>>2]=1004984;f=b+12|0;c[f>>2]=1005064;if(!((a[b+44>>0]&1)==0)){Ys(c[b+52>>2]|0)}c[f>>2]=1080120;Qp(b+16|0);yk(e);Ys(b);i=d;return}function Xe(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;g=c[(c[b>>2]|0)+-12>>2]|0;e=b+g|0;c[e>>2]=1004964;f=b+(g+64)|0;c[f>>2]=1005004;c[b+(g+8)>>2]=1004984;h=b+(g+12)|0;c[h>>2]=1005064;if(!((a[b+(g+44)>>0]&1)==0)){Ys(c[b+(g+52)>>2]|0)}c[h>>2]=1080120;Qp(b+(g+16)|0);yk(f);Ys(e);i=d;return}function Ye(b){b=b|0;var d=0;d=i;c[b>>2]=1005064;if(!((a[b+32>>0]&1)==0)){Ys(c[b+40>>2]|0)}c[b>>2]=1080120;Qp(b+4|0);i=d;return}function Ze(b){b=b|0;var d=0;d=i;c[b>>2]=1005064;if(!((a[b+32>>0]&1)==0)){Ys(c[b+40>>2]|0)}c[b>>2]=1080120;Qp(b+4|0);Ys(b);i=d;return}function _e(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;l=i;o=d+44|0;m=c[o>>2]|0;k=d+24|0;j=c[k>>2]|0;if(m>>>0<j>>>0){c[o>>2]=j;m=j}o=h&24;do{if((o|0)==0){o=b;c[o>>2]=0;c[o+4>>2]=0;o=b+8|0;c[o>>2]=-1;c[o+4>>2]=-1;i=l;return}else if((o|0)!=24){if((g|0)==0){g=0;o=0;break}else if((g|0)==2){n=11;break}else if((g|0)!=1){n=15;break}if((h&8|0)==0){o=j-(c[d+20>>2]|0)|0;g=o;o=((o|0)<0)<<31>>31;break}else{o=(c[d+12>>2]|0)-(c[d+8>>2]|0)|0;g=o;o=((o|0)<0)<<31>>31;break}}else{if((g|0)==0){g=0;o=0;break}else if((g|0)==2){n=11;break}else if((g|0)!=1){n=15;break}o=b;c[o>>2]=0;c[o+4>>2]=0;o=b+8|0;c[o>>2]=-1;c[o+4>>2]=-1;i=l;return}}while(0);if((n|0)==15){o=b;c[o>>2]=0;c[o+4>>2]=0;o=b+8|0;c[o>>2]=-1;c[o+4>>2]=-1;i=l;return}if((n|0)==11){n=d+32|0;if((a[n>>0]&1)==0){n=n+1|0}else{n=c[d+40>>2]|0}o=m-n|0;g=o;o=((o|0)<0)<<31>>31}f=Jt(g|0,o|0,e|0,f|0)|0;e=I;if((e|0)>=0){n=d+32|0;if((a[n>>0]&1)==0){n=n+1|0}else{n=c[d+40>>2]|0}o=m-n|0;g=((o|0)<0)<<31>>31;if(!((g|0)<(e|0)|(g|0)==(e|0)&o>>>0<f>>>0)){n=h&8;if(!((f|0)==0&(e|0)==0)){if((n|0)!=0?(c[d+12>>2]|0)==0:0){o=b;c[o>>2]=0;c[o+4>>2]=0;o=b+8|0;c[o>>2]=-1;c[o+4>>2]=-1;i=l;return}if((h&16|0)!=0&(j|0)==0){o=b;c[o>>2]=0;c[o+4>>2]=0;o=b+8|0;c[o>>2]=-1;c[o+4>>2]=-1;i=l;return}}if((n|0)!=0){c[d+12>>2]=(c[d+8>>2]|0)+f;c[d+16>>2]=m}if((h&16|0)!=0){c[k>>2]=(c[d+20>>2]|0)+f}o=b;c[o>>2]=0;c[o+4>>2]=0;o=b+8|0;c[o>>2]=f;c[o+4>>2]=e;i=l;return}}o=b;c[o>>2]=0;c[o+4>>2]=0;o=b+8|0;c[o>>2]=-1;c[o+4>>2]=-1;i=l;return}function $e(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;d=d+8|0;oc[c[(c[b>>2]|0)+16>>2]&31](a,b,c[d>>2]|0,c[d+4>>2]|0,0,e);i=f;return}function af(a){a=a|0;var b=0,e=0,f=0,g=0;b=i;f=a+44|0;g=c[f>>2]|0;e=c[a+24>>2]|0;if(g>>>0<e>>>0){c[f>>2]=e}else{e=g}if((c[a+48>>2]&8|0)==0){g=-1;i=b;return g|0}f=a+16|0;g=c[f>>2]|0;a=c[a+12>>2]|0;if(g>>>0<e>>>0){c[f>>2]=e}else{e=g}if(!(a>>>0<e>>>0)){g=-1;i=b;return g|0}g=d[a>>0]|0;i=b;return g|0}function bf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;g=b+44|0;f=c[g>>2]|0;j=c[b+24>>2]|0;if(f>>>0<j>>>0){c[g>>2]=j}else{j=f}f=b+8|0;g=c[f>>2]|0;h=b+12|0;l=c[h>>2]|0;if(!(g>>>0<l>>>0)){l=-1;i=e;return l|0}if((d|0)==-1){c[f>>2]=g;c[h>>2]=l+-1;c[b+16>>2]=j;l=0;i=e;return l|0}if((c[b+48>>2]&16|0)==0){k=d&255;l=l+-1|0;if(!(k<<24>>24==(a[l>>0]|0))){l=-1;i=e;return l|0}}else{k=d&255;l=l+-1|0}c[f>>2]=g;c[h>>2]=l;c[b+16>>2]=j;a[l>>0]=k;l=d;i=e;return l|0}function cf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;if((d|0)==-1){t=0;i=j;return t|0}f=b+12|0;h=b+8|0;e=(c[f>>2]|0)-(c[h>>2]|0)|0;g=b+24|0;o=c[g>>2]|0;k=b+28|0;n=c[k>>2]|0;if((o|0)==(n|0)){m=b+48|0;if((c[m>>2]&16|0)==0){t=-1;i=j;return t|0}l=b+20|0;p=c[l>>2]|0;o=o-p|0;n=b+44|0;p=(c[n>>2]|0)-p|0;q=b+32|0;ik(q,0);t=a[q>>0]|0;if((t&1)==0){s=10}else{s=c[q>>2]|0;t=s&255;s=(s&-2)+-1|0}r=(t&1)==0;if(r){t=(t&255)>>>1}else{t=c[b+36>>2]|0}do{if(!(t>>>0<s>>>0)){if(r){a[q+s+1>>0]=0;a[q>>0]=s<<1;break}else{a[(c[b+40>>2]|0)+s>>0]=0;c[b+36>>2]=s;break}}else{gk(q,s-t|0,0)|0}}while(0);r=a[q>>0]|0;if((r&1)==0){q=q+1|0;r=(r&255)>>>1}else{q=c[b+40>>2]|0;r=c[b+36>>2]|0}t=q+r|0;c[l>>2]=q;c[k>>2]=t;k=q+o|0;c[g>>2]=k;o=q+p|0;c[n>>2]=o;n=t}else{m=b+48|0;k=o;o=c[b+44>>2]|0}l=k+1|0;o=l>>>0<o>>>0?o:l;c[b+44>>2]=o;if((c[m>>2]&8|0)!=0){m=b+32|0;if((a[m>>0]&1)==0){m=m+1|0}else{m=c[b+40>>2]|0}c[h>>2]=m;c[f>>2]=m+e;c[b+16>>2]=o}if((k|0)==(n|0)){t=pc[c[(c[b>>2]|0)+52>>2]&63](b,d&255)|0;i=j;return t|0}else{c[g>>2]=l;a[k>>0]=d;t=d&255;i=j;return t|0}return 0}function df(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;f=c[d+48>>2]|0;if((f&16|0)!=0){h=d+44|0;g=c[h>>2]|0;f=c[d+24>>2]|0;if(g>>>0<f>>>0){c[h>>2]=f}else{f=g}g=c[d+20>>2]|0;d=g;h=f-d|0;if(h>>>0<11){a[b>>0]=h<<1;b=b+1|0}else{k=h+16&-16;j=Vs(k)|0;c[b+8>>2]=j;c[b>>2]=k|1;c[b+4>>2]=h;b=j}if((g|0)!=(f|0)){h=b;while(1){a[h>>0]=a[g>>0]|0;g=g+1|0;if((g|0)==(f|0)){break}else{h=h+1|0}}b=b+(f+(0-d))|0}a[b>>0]=0;i=e;return}if((f&8|0)==0){c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;i=e;return}g=c[d+8>>2]|0;d=c[d+16>>2]|0;f=g;h=d-f|0;if(h>>>0<11){a[b>>0]=h<<1;b=b+1|0}else{j=h+16&-16;k=Vs(j)|0;c[b+8>>2]=k;c[b>>2]=j|1;c[b+4>>2]=h;b=k}if((g|0)!=(d|0)){h=b;while(1){a[h>>0]=a[g>>0]|0;g=g+1|0;if((g|0)==(d|0)){break}else{h=h+1|0}}b=b+(d+(0-f))|0}a[b>>0]=0;i=e;return}function ef(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;f=b+32|0;if((f|0)!=(d|0)){h=a[d>>0]|0;if((h&1)==0){g=d+1|0;h=(h&255)>>>1}else{g=c[d+8>>2]|0;h=c[d+4>>2]|0}ek(f,g,h)|0}h=b+44|0;c[h>>2]=0;g=b+48|0;d=c[g>>2]|0;if((d&8|0)!=0){j=a[f>>0]|0;if((j&1)==0){j=f+((j&255)>>>1)+1|0;c[h>>2]=j;l=f+1|0;k=f+1|0}else{j=(c[b+40>>2]|0)+(c[b+36>>2]|0)|0;c[h>>2]=j;k=c[b+40>>2]|0;l=k}c[b+8>>2]=l;c[b+12>>2]=k;c[b+16>>2]=j}if((d&16|0)==0){i=e;return}k=a[f>>0]|0;if((k&1)==0){l=(k&255)>>>1;c[h>>2]=f+l+1;j=10;h=l}else{l=c[b+36>>2]|0;c[h>>2]=(c[b+40>>2]|0)+l;j=c[f>>2]|0;k=j&255;j=(j&-2)+-1|0;h=l}d=(k&1)==0;if(d){k=(k&255)>>>1}else{k=c[b+36>>2]|0}do{if(!(k>>>0<j>>>0)){if(d){a[f+j+1>>0]=0;a[f>>0]=j<<1;break}else{a[(c[b+40>>2]|0)+j>>0]=0;c[b+36>>2]=j;break}}else{gk(f,j-k|0,0)|0}}while(0);j=a[f>>0]|0;if((j&1)==0){d=f+1|0;j=(j&255)>>>1;k=f+1|0}else{k=c[b+40>>2]|0;d=k;j=c[b+36>>2]|0}f=b+24|0;c[f>>2]=k;c[b+20>>2]=k;c[b+28>>2]=d+j;if((c[g>>2]&3|0)==0){i=e;return}c[f>>2]=k+h;i=e;return}function ff(){var a=0,b=0,d=0;b=i;c[250566]=18940248;c[1002268>>2]=15270089;c[1002272>>2]=14483729;c[1002276>>2]=3014656;c[1002280>>2]=20840448;Lt(1002288,0,256)|0;c[1002544>>2]=-4259890;c[1002548>>2]=-2752542;c[1002552>>2]=-589834;c[1002556>>2]=196608;c[1002560>>2]=983050;c[1002564>>2]=1769492;c[1002568>>2]=2424860;c[1002572>>2]=2752543;c[1002576>>2]=2883617;d=1002580|0;a=d+92|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));c[1002672>>2]=-3407919;c[1002676>>2]=-1835031;c[1002680>>2]=393217;c[1002684>>2]=1310735;c[1002688>>2]=2228253;c[1002692>>2]=3145771;c[1002696>>2]=3932215;c[1002700>>2]=4456511;c[1002704>>2]=4849732;c[1002708>>2]=5046344;c[1002712>>2]=5242955;c[1002716>>2]=5374029;c[1002720>>2]=5505103;c[1002724>>2]=5636177;d=1002728|0;a=d+72|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));c[1002800>>2]=-3080245;c[1002804>>2]=-2031642;c[1002808>>2]=-327680;c[1002812>>2]=65552;c[1002816>>2]=458784;c[1002820>>2]=852016;c[1002824>>2]=1179712;c[1002828>>2]=1441872;c[1002832>>2]=1704032;c[1002836>>2]=1900653;c[1002840>>2]=2031731;c[1002844>>2]=2162807;c[1002848>>2]=2293882;c[1002852>>2]=2359419;c[1002856>>2]=2424956;d=1002860|0;a=d+68|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));c[1002928>>2]=-2752552;c[1002932>>2]=-1835031;c[1002936>>2]=-327687;c[1002940>>2]=0;c[1002944>>2]=393226;c[1002948>>2]=720915;c[1002952>>2]=851997;c[1002956>>2]=1179686;c[1002960>>2]=1310760;c[1002964>>2]=1376297;c[1002968>>2]=1441833;c[1002972>>2]=1441833;c[1002976>>2]=1441833;c[1002980>>2]=1507369;c[1002984>>2]=1572905;c[1002988>>2]=1638441;c[1002992>>2]=1638441;c[1002996>>2]=1638441;c[1003e3>>2]=1638441;c[1003004>>2]=1638441;c[1003008>>2]=1638441;c[1003012>>2]=1638441;c[1003016>>2]=1638441;c[1003020>>2]=1638441;c[1003024>>2]=1638441;c[1003028>>2]=1638441;c[1003032>>2]=1638441;c[1003036>>2]=1638441;c[1003040>>2]=0;c[1003044>>2]=0;c[1003048>>2]=0;c[1003052>>2]=0;c[250764]=0;c[1003060>>2]=458791;c[1003064>>2]=1572913;c[1003068>>2]=1572913;c[1003072>>2]=2687076;c[1003076>>2]=2687076;c[1003080>>2]=0;c[1003084>>2]=0;c[1003088>>2]=0;c[1003092>>2]=983079;c[1003096>>2]=983085;c[1003100>>2]=983085;c[1003104>>2]=983085;c[1003108>>2]=1572913;d=1003112|0;c[d>>2]=0;c[d+4>>2]=0;c[250780]=0;c[1003124>>2]=0;c[1003128>>2]=5242999;c[1003132>>2]=5242999;c[1003136>>2]=7667911;c[1003140>>2]=8323290;c[250786]=1507348;c[250788]=655388;c[250790]=2818069;c[250792]=1245194;c[250794]=524300;c[250796]=1048576;c[250798]=5898240;c[250800]=20;c[250802]=3276850;i=b;return}function gf(){var b=0,d=0,e=0,f=0,g=0,h=0;b=i;i=i+32|0;h=b+24|0;e=b+12|0;d=b;Gf(e,0);f=Ec(1078120,e)|0;Bk(h,f+(c[(c[f>>2]|0)+-12>>2]|0)|0);g=Sp(h,1082848)|0;g=pc[c[(c[g>>2]|0)+28>>2]&63](g,10)|0;Qp(h);zl(f,g)|0;il(f)|0;if(!((a[e>>0]&1)==0)){Ys(c[e+8>>2]|0)}Oi(1077312);ed();Dg();ad();lh();zg();Qe();ki(1074192);a[d>>0]=8;h=d+1|0;a[h>>0]=1752392008;a[h+1>>0]=6845281;a[h+2>>0]=26739;a[h+3>>0]=104;a[d+5>>0]=0;h=Ii(Cc(1077312,d)|0)|0;xi(1074424,h,((h|0)<0)<<31>>31);if((a[d>>0]&1)==0){Ci();i=b;return}Ys(c[d+8>>2]|0);Ci();i=b;return}function hf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d;f=It(b|0)|0;if(f>>>0<11){a[e>>0]=f<<1;g=e;h=e+1|0}else{g=f+16&-16;h=Vs(g)|0;c[e+8>>2]=h;c[e>>2]=g|1;c[e+4>>2]=f;g=e}Nt(h|0,b|0,f|0)|0;a[h+f>>0]=0;Di(e);if((a[g>>0]&1)==0){i=d;return}Ys(c[e+8>>2]|0);i=d;return}function jf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f;md(b,d);b=Vs(48)|0;g=e+8|0;c[g>>2]=b;c[e>>2]=49;c[e+4>>2]=33;j=b+0|0;h=1005368|0;d=j+33|0;do{a[j>>0]=a[h>>0]|0;j=j+1|0;h=h+1|0}while((j|0)<(d|0));a[b+33>>0]=0;Di(e);if((a[e>>0]&1)==0){i=f;return}Ys(c[g>>2]|0);i=f;return}function kf(a){a=a|0;return}function lf(a){a=a|0;return}function mf(a){a=a|0;return}function nf(a){a=a|0;return}function of(a){a=a|0;return}function pf(a){a=a|0;return}function qf(a){a=a|0;return}function rf(a){a=a|0;return}function sf(a){a=a|0;return}function tf(a){a=a|0;return}function uf(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;j=i;i=i+80|0;s=j;h=j+8|0;o=d+2220|0;r=(c[o>>2]|0)+8|0;q=c[r>>2]|0;r=c[r+4>>2]|0;g=q&8191;k=c[e>>2]|0;e=k+(g<<5)|0;w=e;if((c[w>>2]|0)==(q|0)?(c[w+4>>2]|0)==(r|0):0){i=j;return e|0}c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;m=e;c[m>>2]=q;c[m+4>>2]=r;m=k+(g<<5)+11|0;a[m>>0]=64;l=k+(g<<5)+10|0;a[l>>0]=64;t=c[o>>2]|0;t=(c[t+20>>2]|0)+(c[t+16>>2]|0)|0;if((t|0)<=15580){if((t|0)<3999){t=0}else{t=((t<<7)+-511744|0)/11583|0}}else{t=128}c[k+(g<<5)+28>>2]=t;t=k+(g<<5)+12|0;u=s;c[u>>2]=q;c[u+4>>2]=r;u=c[f+4>>2]|0;a:do{if((u|0)!=0){while(1){w=u+16|0;v=c[w>>2]|0;w=c[w+4>>2]|0;if(!(w>>>0>r>>>0|(w|0)==(r|0)&v>>>0>q>>>0)){if(!(w>>>0<r>>>0|(w|0)==(r|0)&v>>>0<q>>>0)){break}u=u+4|0}u=c[u>>2]|0;if((u|0)==0){n=11;break a}}w=c[(me(f,s)|0)>>2]|0;c[t>>2]=w;if((w|0)!=0){i=j;return e|0}}else{n=11}}while(0);if((n|0)==11){c[t>>2]=0}w=d+328|0;v=c[w>>2]|0;w=c[w+4>>2]|0;u=Jt(v|0,w|0,-1,-1)|0;if((u&v|0)==0&(I&w|0)==0?(c[(c[o>>2]|0)+16>>2]|0)>1269:0){c[t>>2]=1005408;i=j;return e|0}w=d+320|0;v=c[w>>2]|0;w=c[w+4>>2]|0;u=Jt(v|0,w|0,-1,-1)|0;if((u&v|0)==0&(I&w|0)==0?(c[(c[o>>2]|0)+20>>2]|0)>1269:0){c[t>>2]=1005420;i=j;return e|0}t=s;c[t>>2]=q;c[t+4>>2]=r;t=f+12|0;f=c[f+16>>2]|0;b:do{if((f|0)!=0){while(1){v=f+16|0;u=c[v>>2]|0;v=c[v+4>>2]|0;if(!(v>>>0>r>>>0|(v|0)==(r|0)&u>>>0>q>>>0)){if(!(v>>>0<r>>>0|(v|0)==(r|0)&u>>>0<q>>>0)){break}f=f+4|0}f=c[f>>2]|0;if((f|0)==0){break b}}q=c[(Od(t,s)|0)>>2]|0;if((q|0)!=0){c[k+(g<<5)+((gc[c[(c[q>>2]|0)+8>>2]&127](q)|0)<<2)+16>>2]=q;i=j;return e|0}}}while(0);q=c[o>>2]|0;if(((c[q+16>>2]|0)==836?(c[d+348>>2]|0)==1:0)?(c[d+340>>2]|0)>0:0){c[k+(g<<5)+16>>2]=1005432;q=c[o>>2]|0}if(((c[q+20>>2]|0)==836?(c[d+380>>2]|0)==1:0)?(c[d+372>>2]|0)>0:0){c[k+(g<<5)+20>>2]=1005444}q=d+340|0;f=c[q>>2]|0;if(((((f|0)==0?(c[(c[o>>2]|0)+16>>2]|0)==2521:0)?(c[d+356>>2]|0)==1:0)?(c[d+384>>2]|0)==1:0)?(p=c[d+372>>2]|0,(p|0)>0):0){c[k+(g<<5)+16>>2]=1005456;f=0}else{p=c[d+372>>2]|0;if((p|0)==0){if(((c[(c[o>>2]|0)+20>>2]|0)==2521?(c[d+388>>2]|0)==1:0)?(f|0)>0?(c[d+352>>2]|0)==1:0:0){c[k+(g<<5)+20>>2]=1005468;p=0}else{p=0}}}r=c[o>>2]|0;s=c[r+16>>2]|0;r=c[r+20>>2]|0;o=r+s|0;do{if((o|0)==0?(w=d+264|0,!((c[w>>2]|0)==0&(c[w+4>>2]|0)==0)):0){if((p|0)==0){c[k+(g<<5)+16>>2]=1005480;n=54;break}if((f|0)==0){c[k+(g<<5)+20>>2]=1005492;n=55;break}else if((f|0)!=1){n=59;break}if((p|0)==1){c[k+(g<<5)+16>>2]=1005504;c[k+(g<<5)+20>>2]=1005516;p=d+372|0}else{n=59}}else{n=54}}while(0);if((n|0)==54){if((f|0)==0){n=55}else{n=59}}if((n|0)==55){if((s-r|0)<837){if((s|0)<1270){n=0}else{n=(r|0)<837?4:12}a[l>>0]=n;p=c[d+372>>2]|0;n=59}else{n=59}}if((n|0)==59){n=d+372|0;if((p|0)==0?(r-s|0)<837:0){if((r|0)<1270){p=0}else{p=(s|0)<837?4:12}a[m>>0]=p;p=n}else{p=n}}if((c[q>>2]|0)==1?(s-r|0)<837:0){a[l>>0]=48}if((c[p>>2]|0)==1?(r-s|0)<837:0){a[m>>0]=48}if((o|0)<11756){m=c[d+348>>2]|0;n=c[d+344>>2]|0;o=c[d+380>>2]|0;l=c[d+376>>2]|0}else{n=c[d+344>>2]|0;m=c[d+348>>2]|0;l=c[d+376>>2]|0;o=c[d+380>>2]|0;w=m+n+l+o|0;c[k+(g<<5)+24>>2]=ea(w<<16,w)|0}w=(m|0)>1&1;c[h>>2]=w;c[h+4>>2]=c[q>>2];c[h+8>>2]=n;c[h+12>>2]=m;c[h+16>>2]=c[d+352>>2];c[h+20>>2]=c[d+356>>2];m=h+24|0;c[m>>2]=0;c[m+4>>2]=0;c[h+32>>2]=(o|0)>1&1;c[h+36>>2]=c[p>>2];c[h+40>>2]=l;c[h+44>>2]=o;c[h+48>>2]=c[d+384>>2];c[h+52>>2]=c[d+388>>2];m=h+56|0;c[m>>2]=0;c[m+4>>2]=0;m=w;l=1;n=0;d=0;while(1){if((m|0)!=0){p=0;o=c[1005528+(n<<2)>>2]|0;do{w=ea(c[h+(p<<2)>>2]|0,c[1005552+(n<<5)+(p<<2)>>2]|0)|0;o=w+o+(ea(c[h+(p<<2)+32>>2]|0,c[1005744+(n<<5)+(p<<2)>>2]|0)|0)|0;p=p+1|0}while((p|0)!=(l|0));d=(ea(o,m)|0)+d|0}n=n+1|0;if((n|0)==6){l=1;m=0;o=0;break}m=c[h+(n<<2)>>2]|0;l=l+1|0}while(1){q=c[h+(m<<2)+32>>2]|0;if((q|0)!=0){p=0;n=c[1005528+(m<<2)>>2]|0;do{w=ea(c[h+(p<<2)+32>>2]|0,c[1005552+(m<<5)+(p<<2)>>2]|0)|0;n=w+n+(ea(c[h+(p<<2)>>2]|0,c[1005744+(m<<5)+(p<<2)>>2]|0)|0)|0;p=p+1|0}while((p|0)!=(l|0));o=(ea(n,q)|0)+o|0}m=m+1|0;if((m|0)==6){break}l=l+1|0}b[k+(g<<5)+8>>1]=(d-o|0)/16|0;i=j;return e|0}function vf(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function wf(a){a=a|0;return c[a+4>>2]|0}function xf(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function yf(a){a=a|0;return c[a+4>>2]|0}function zf(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Af(a){a=a|0;return c[a+4>>2]|0}function Bf(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Cf(a){a=a|0;return c[a+4>>2]|0}function Df(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Ef(a){a=a|0;return c[a+4>>2]|0}function Ff(){var a=0;a=i;c[251352]=1006040;c[1005412>>2]=0;c[1005416>>2]=1;c[1005420>>2]=1006040;c[1005424>>2]=1;c[1005428>>2]=0;Sa(199,0,p|0)|0;c[251358]=1006016;c[1005436>>2]=0;c[1005440>>2]=1;c[1005444>>2]=1006016;c[1005448>>2]=1;c[1005452>>2]=0;Sa(200,0,p|0)|0;c[251364]=1005992;c[1005460>>2]=0;c[1005464>>2]=1;c[1005468>>2]=1005992;c[1005472>>2]=1;c[1005476>>2]=0;Sa(201,0,p|0)|0;c[251370]=1005968;c[1005484>>2]=0;c[1005488>>2]=1;c[1005492>>2]=1005968;c[1005496>>2]=1;c[1005500>>2]=0;Sa(202,0,p|0)|0;c[251376]=1005944;c[1005508>>2]=0;c[1005512>>2]=1;c[1005516>>2]=1005944;c[1005520>>2]=1;c[1005524>>2]=0;Sa(203,0,p|0)|0;i=a;return}function Gf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;j=i;i=i+368|0;n=j+216|0;e=j+204|0;l=j+192|0;k=j+180|0;g=j+168|0;h=j+24|0;z=j+12|0;q=j;m=Vs(48)|0;f=e+8|0;c[f>>2]=m;c[e>>2]=49;D=e+4|0;c[D>>2]=47;u=m+0|0;w=1006072|0;v=u+47|0;do{a[u>>0]=a[w>>0]|0;u=u+1|0;w=w+1|0}while((u|0)<(v|0));a[m+47>>0]=0;c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[k+0>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;s=h+64|0;r=h+8|0;c[r>>2]=1004984;t=h+12|0;c[h>>2]=1005028;c[s>>2]=1005048;c[h+4>>2]=0;m=h+64|0;Ck(m,t);c[h+136>>2]=0;c[h+140>>2]=-1;c[h>>2]=1004964;c[s>>2]=1005004;c[r>>2]=1004984;c[t>>2]=1080120;o=h+16|0;Op(o);p=h+20|0;c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[p+20>>2]=0;c[t>>2]=1005064;p=h+44|0;J=h+60|0;c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[J>>2]=24;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;ef(t,n);if(!((a[n>>0]&1)==0)){Ys(c[n+8>>2]|0)}x=Vs(16)|0;B=z+8|0;c[B>>2]=x;c[z>>2]=17;c[z+4>>2]=11;u=x+0|0;w=1006120|0;v=u+11|0;do{a[u>>0]=a[w>>0]|0;u=u+1|0;w=w+1|0}while((u|0)<(v|0));a[x+11>>0]=0;x=n+64|0;y=n+8|0;c[y>>2]=1004984;J=n+12|0;c[n>>2]=1005028;c[x>>2]=1005048;c[n+4>>2]=0;v=n+64|0;Ck(v,J);c[n+136>>2]=0;c[n+140>>2]=-1;c[n>>2]=1004964;c[x>>2]=1005004;c[y>>2]=1004984;c[J>>2]=1080120;u=n+16|0;Op(u);w=n+20|0;c[w+0>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[J>>2]=1005064;w=n+44|0;I=n+60|0;c[w+0>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;c[I>>2]=24;ef(J,z);if(!((a[z>>0]&1)==0)){Ys(c[B>>2]|0)}z=h+8|0;B=Ec(Fc(z,1006136)|0,1006056)|0;c[B+((c[(c[B>>2]|0)+-12>>2]|0)+76)>>2]=48;B=a[1006056]|0;if((B&1)==0){B=(B&255)>>>1}else{B=c[1006060>>2]|0}if((B|0)==0){Bc(Bc(Bc(n,l)|0,k)|0,g)|0;c[z+((c[(c[z>>2]|0)+-12>>2]|0)+12)>>2]=2;B=Ec(z,k)|0;c[B+((c[(c[B>>2]|0)+-12>>2]|0)+12)>>2]=2;C=a[l>>0]|0;if((C&1)==0){G=(C&255)>>>1;C=l+1|0}else{G=c[l+4>>2]|0;C=c[l+8>>2]|0}F=a[e>>0]|0;E=(F&1)==0;if(E){H=(F&255)>>>1}else{H=c[D>>2]|0}a:do{if(!(H>>>0<G>>>0)){if((G|0)!=0){if(E){I=e+1|0}else{I=c[f>>2]|0}F=I+H|0;E=C+G|0;D=I;if((H|0)>=(G|0)?(J=H+(1-G)|0,A=I+J|0,(J|0)!=0):0){G=a[C>>0]|0;b:while(1){if((a[I>>0]|0)==G<<24>>24){J=I;H=C;do{H=H+1|0;if((H|0)==(E|0)){break b}J=J+1|0}while((a[J>>0]|0)==(a[H>>0]|0))}I=I+1|0;if((I|0)==(A|0)){A=1073741824;break a}}if((I|0)!=(F|0)){A=((I-D|0)>>>2)+1|0}else{A=1073741824}}else{A=1073741824}}else{A=1}}else{A=1073741824}}while(0);A=vl(B,A)|0;C=a[g>>0]|0;if((C&1)==0){B=g+1|0;D=(C&255)>>>1}else{B=c[g+8>>2]|0;
+D=c[g+4>>2]|0}C=D+-2|0;if(C>>>0<11){a[q>>0]=C<<1;D=q;E=q+1|0}else{D=D+14&-16;E=Vs(D)|0;c[q+8>>2]=E;c[q>>2]=D|1;c[q+4>>2]=C;D=q}Nt(E|0,B+2|0,C|0)|0;a[E+C>>0]=0;Ec(A,q)|0;if(!((a[D>>0]&1)==0)){Ys(c[q+8>>2]|0)}}q=Fc(Fc(z,1006152)|0,1006152)|0;Fc(Fc(q,d?1006160:1006176)|0,1006184)|0;df(b,t);c[n>>2]=1004964;c[x>>2]=1005004;c[y>>2]=1004984;q=n+12|0;c[q>>2]=1005064;if(!((a[w>>0]&1)==0)){Ys(c[n+52>>2]|0)}c[q>>2]=1080120;Qp(u);yk(v);c[h>>2]=1004964;c[s>>2]=1005004;c[r>>2]=1004984;n=h+12|0;c[n>>2]=1005064;if(!((a[p>>0]&1)==0)){Ys(c[h+52>>2]|0)}c[n>>2]=1080120;Qp(o);yk(m);if(!((a[g>>0]&1)==0)){Ys(c[g+8>>2]|0)}if(!((a[k>>0]&1)==0)){Ys(c[k+8>>2]|0)}if(!((a[l>>0]&1)==0)){Ys(c[l+8>>2]|0)}if((a[e>>0]&1)==0){i=j;return}Ys(c[f>>2]|0);i=j;return}function Hf(){var a=0,b=0,d=0,e=0,f=0;a=i;i=i+16|0;b=a;d=1006248;if(!((c[d>>2]|0)==0&(c[d+4>>2]|0)==0)){e=Fc(1078208,1006280)|0;f=1006248;f=Fc(wl(e,c[f>>2]|0,c[f+4>>2]|0)|0,1006288)|0;e=1006256;e=Fc(wl(f,c[e>>2]|0,c[e+4>>2]|0)|0,1006296)|0;f=1006256;f=Vt(c[f>>2]|0,c[f+4>>2]|0,100,0)|0;d=1006248;d=Tt(f|0,I|0,c[d>>2]|0,c[d+4>>2]|0)|0;d=wl(e,d,I)|0;Bk(b,d+(c[(c[d>>2]|0)+-12>>2]|0)|0);e=Sp(b,1082848)|0;e=pc[c[(c[e>>2]|0)+28>>2]&63](e,10)|0;Qp(b);zl(d,e)|0;il(d)|0}f=1006264;if((c[f>>2]|0)==0&(c[f+4>>2]|0)==0){i=a;return}e=Fc(1078208,1006280)|0;d=1006264;d=Fc(wl(e,c[d>>2]|0,c[d+4>>2]|0)|0,1006312)|0;e=1006272;f=1006264;f=yl(d,(+((c[e>>2]|0)>>>0)+4294967296*+(c[e+4>>2]|0))/(+((c[f>>2]|0)>>>0)+4294967296*+(c[f+4>>2]|0)))|0;Bk(b,f+(c[(c[f>>2]|0)+-12>>2]|0)|0);e=Sp(b,1082848)|0;e=pc[c[(c[e>>2]|0)+28>>2]&63](e,10)|0;Qp(b);zl(f,e)|0;il(f)|0;i=a;return}function If(b,d){b=b|0;d=d|0;d=i;if((a[1006328]|0)==0?(Ma(1006328)|0)!=0:0){c[251580]=0;Xa(1006328)}i=d;return b|0}function Jf(a){a=a|0;var b=0;b=i;Kf(a);i=b;return}function Kf(b){b=b|0;var d=0,e=0,f=0;e=i;if((a[1006600]|0)==0?(Ma(1006600)|0)!=0:0){c[251584]=1006684;c[1006440>>2]=1006704;Ck(1006440|0,1006340|0);c[1006512>>2]=0;c[1006516>>2]=-1;c[251584]=1006644;c[1006440>>2]=1006664;Yc(1006340|0);f=c[(c[(c[269508]|0)+-12>>2]|0)+1078056>>2]|0;c[1006520>>2]=1080120;Op(1006524|0);c[1006528>>2]=0;c[1006532>>2]=0;c[1006536>>2]=0;c[1006540>>2]=0;c[1006544>>2]=0;c[1006548>>2]=0;c[1006520>>2]=1006720;c[1006552>>2]=f;c[1006556>>2]=1006336;f=c[(c[(c[269530]|0)+-12>>2]|0)+1078144>>2]|0;c[1006560>>2]=1080120;Op(1006564|0);c[1006568>>2]=0;c[1006572>>2]=0;c[1006576>>2]=0;c[1006580>>2]=0;c[1006584>>2]=0;c[1006588>>2]=0;c[1006560>>2]=1006720;c[1006592>>2]=f;c[1006596>>2]=1006336;Sa(204,1006336,p|0)|0;Xa(1006600)}f=(c[1006404>>2]|0)!=0;if(b){if(f){i=e;return}f=Wb(1006608,1006624)|0;c[1006404>>2]=f;if((f|0)==0){f=c[(c[251584]|0)+-12>>2]|0;xk(1006336+f|0,c[f+1006352>>2]|4)}else{c[1006428>>2]=17;xk(1006336+(c[(c[251584]|0)+-12>>2]|0)|0,0)}f=c[(c[269508]|0)+-12>>2]|0;c[f+1078056>>2]=1006520;xk(1078032+f|0,0);f=c[(c[269530]|0)+-12>>2]|0;c[f+1078144>>2]=1006560;xk(1078120+f|0,0);i=e;return}if(!f){i=e;return}b=c[(c[269530]|0)+-12>>2]|0;c[b+1078144>>2]=c[1006592>>2];xk(1078120+b|0,0);b=c[(c[269508]|0)+-12>>2]|0;c[b+1078056>>2]=c[1006552>>2];xk(1078032+b|0,0);b=c[1006404>>2]|0;if(((b|0)!=0?(d=gc[c[(c[1006340>>2]|0)+24>>2]&127](1006340|0)|0,(yb(b|0)|0)==0):0)?(c[1006404>>2]=0,(d|0)==0):0){i=e;return}f=c[(c[251584]|0)+-12>>2]|0;xk(1006336+f|0,c[f+1006352>>2]|4);i=e;return}function Lf(a,b,c){a=a|0;b=b|0;c=c|0;c=i;i=i+16|0;Yb(c|0,0)|0;i=c;return}function Mf(a){a=a|0;return}function Nf(a){a=a|0;var b=0;b=i;Kf(0);c[a+224>>2]=1080120;Qp(a+228|0);c[a+184>>2]=1080120;Qp(a+188|0);c[a>>2]=1006644;c[a+104>>2]=1006664;Oc(a+4|0);yk(a+104|0);i=b;return}function Of(a){a=a|0;var b=0;b=i;c[a>>2]=1080120;Qp(a+4|0);i=b;return}function Pf(a){a=a|0;var b=0;b=i;c[a>>2]=1006644;c[a+104>>2]=1006664;Oc(a+4|0);yk(a+104|0);i=b;return}function Qf(a){a=a|0;var b=0,d=0,e=0;b=i;e=c[(c[a>>2]|0)+-12>>2]|0;c[a+e>>2]=1006644;d=a+(e+104)|0;c[d>>2]=1006664;Oc(a+(e+4)|0);yk(d);i=b;return}function Rf(a){a=a|0;var b=0;b=i;c[a>>2]=1006644;c[a+104>>2]=1006664;Oc(a+4|0);yk(a+104|0);Ys(a);i=b;return}function Sf(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;f=c[(c[a>>2]|0)+-12>>2]|0;d=a+f|0;c[d>>2]=1006644;e=a+(f+104)|0;c[e>>2]=1006664;Oc(a+(f+4)|0);yk(e);Ys(d);i=b;return}function Tf(a){a=a|0;var b=0;b=i;c[a>>2]=1080120;Qp(a+4|0);Ys(a);i=b;return}function Uf(a){a=a|0;var b=0,d=0;b=i;d=(c[a+36>>2]|0)+4|0;gc[c[(c[d>>2]|0)+24>>2]&127](d)|0;a=c[a+32>>2]|0;a=gc[c[(c[a>>2]|0)+24>>2]&127](a)|0;i=b;return a|0}function Vf(a){a=a|0;var b=0,e=0;b=i;a=c[a+32>>2]|0;e=c[a+12>>2]|0;if((e|0)==(c[a+16>>2]|0)){e=gc[c[(c[a>>2]|0)+36>>2]&127](a)|0;i=b;return e|0}else{e=d[e>>0]|0;i=b;return e|0}return 0}function Wf(b){b=b|0;var e=0,f=0,g=0,h=0,j=0;e=i;f=c[b+32>>2]|0;h=f+12|0;g=c[h>>2]|0;if((g|0)==(c[f+16>>2]|0)){f=gc[c[(c[f>>2]|0)+40>>2]&127](f)|0}else{c[h>>2]=g+1;f=d[g>>0]|0}b=b+36|0;if((c[251696]|0)==10){h=(c[b>>2]|0)+4|0;ac[c[(c[h>>2]|0)+48>>2]&31](h,1006792,3)|0}j=c[b>>2]|0;b=j+4|0;h=j+28|0;g=c[h>>2]|0;if((g|0)==(c[j+32>>2]|0)){j=pc[c[(c[b>>2]|0)+52>>2]&63](b,f&255)|0;c[251696]=j;i=e;return j|0}else{c[h>>2]=g+1;a[g>>0]=f;j=f&255;c[251696]=j;i=e;return j|0}return 0}function Xf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;h=c[b+32>>2]|0;g=h+24|0;f=c[g>>2]|0;if((f|0)==(c[h+28>>2]|0)){f=pc[c[(c[h>>2]|0)+52>>2]&63](h,d&255)|0}else{c[g>>2]=f+1;a[f>>0]=d;f=d&255}b=b+36|0;if((c[251696]|0)==10){h=(c[b>>2]|0)+4|0;ac[c[(c[h>>2]|0)+48>>2]&31](h,1006776,3)|0}h=c[b>>2]|0;b=h+4|0;d=h+28|0;g=c[d>>2]|0;if((g|0)==(c[h+32>>2]|0)){h=pc[c[(c[b>>2]|0)+52>>2]&63](b,f&255)|0;c[251696]=h;i=e;return h|0}else{c[d>>2]=g+1;a[g>>0]=f;h=f&255;c[251696]=h;i=e;return h|0}return 0}function Yf(){var b=0;b=i;a[1006056]=2;a[1006057>>0]=53;a[1006058>>0]=0;Sa(205,1006056,p|0)|0;i=b;return}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=i;i=i+48|0;g=d+40|0;m=d+32|0;l=d+24|0;k=d+16|0;j=d+8|0;h=d;s=c[a+2212>>2]|0;f=a+((s^1)<<3)+320|0;e=c[f>>2]|0;f=c[f+4>>2]|0;if((s|0)==0){o=a+320|0;q=a+264|0;h=c[q>>2]&c[o>>2];o=c[q+4>>2]&c[o+4>>2];q=o&16711680;n=o&-16711681;if(!(0==0&(q|0)==0)){r=a+256|0;p=~c[r>>2];r=~c[r+4>>2];t=Mt(0,q|0,9)|0;t=t&e;s=I&f;u=g;c[u>>2]=t;c[u+4>>2]=s;if(!((t|0)==0&(s|0)==0)){s=b;while(1){u=cd(g)|0;b=s+8|0;c[s>>2]=u|(u<<6)+-576|28672;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){break}else{s=b}}}Mt(0,q|0,7)|0;u=f&2130706432&I;t=g;c[t>>2]=0;c[t+4>>2]=u;if(!(0==0&(u|0)==0)){while(1){u=cd(g)|0;s=b+8|0;c[b>>2]=u|(u<<6)+-448|28672;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=s;break}else{b=s}}}t=Mt(0,q|0,8)|0;t=t&p;u=I&r;s=m;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){while(1){u=cd(m)|0;p=b+8|0;c[b>>2]=u|(u<<6)+-512|28672;u=m;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=p;break}else{b=p}}}}t=Mt(h|0,o|0,9)|0;t=e&-16843264&t;u=f&16711422&I;m=l;c[m>>2]=t;c[m+4>>2]=u;o=Mt(h|0,o|0,7)|0;o=e&2139062016&o;m=f&8355711&I;s=k;c[s>>2]=o;c[s+4>>2]=m;if(!((t|0)==0&(u|0)==0)){do{t=cd(l)|0;u=b;b=b+8|0;c[u>>2]=(t<<6)+-576|t;u=l}while(!((c[u>>2]|0)==0&(c[u+4>>2]|0)==0));m=k;o=c[m>>2]|0;m=c[m+4>>2]|0}if(!((o|0)==0&(m|0)==0)){m=b;while(1){u=cd(k)|0;b=m+8|0;c[m>>2]=(u<<6)+-448|u;u=k;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){break}else{m=b}}}k=a+2220|0;m=c[(c[k>>2]|0)+40>>2]|0;if((m|0)!=64?(u=35360+(m<<3)|0,t=h&c[u>>2],u=n&c[u+4>>2],s=l,c[s>>2]=t,c[s+4>>2]=u,!((t|0)==0&(u|0)==0)):0){while(1){u=cd(l)|0;h=b+8|0;c[b>>2]=u<<6|c[(c[k>>2]|0)+40>>2]|32768;u=l;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=h;break}else{b=h}}}h=a+528|0;k=c[h>>2]|0;if((k|0)!=64){do{u=31776+(k<<3)|0;t=c[u>>2]&e;u=c[u+4>>2]&f;s=g;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){k=k<<6;while(1){l=b+8|0;c[b>>2]=cd(g)|0|k;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=l;break}else{b=l}}}h=h+4|0;k=c[h>>2]|0}while((k|0)!=64)}k=a+592|0;l=c[k>>2]|0;if((l|0)!=64){h=a+256|0;do{t=h;s=28384+(l<<3)|0;u=28896+(l<<3)|0;u=(ea(c[s+4>>2]&c[t+4>>2],c[u+4>>2]|0)|0)^(ea(c[s>>2]&c[t>>2],c[u>>2]|0)|0);u=(c[29408+(l<<2)>>2]|0)+(u>>>(c[29664+(l<<2)>>2]|0)<<3)|0;t=c[u>>2]&e;u=c[u+4>>2]&f;s=g;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){l=l<<6;while(1){m=b+8|0;c[b>>2]=cd(g)|0|l;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=m;break}else{b=m}}}k=k+4|0;l=c[k>>2]|0}while((l|0)!=64)}k=a+656|0;l=c[k>>2]|0;if((l|0)!=64){h=a+256|0;do{t=h;s=26848+(l<<3)|0;u=27360+(l<<3)|0;u=(ea(c[s+4>>2]&c[t+4>>2],c[u+4>>2]|0)|0)^(ea(c[s>>2]&c[t>>2],c[u>>2]|0)|0);u=(c[27872+(l<<2)>>2]|0)+(u>>>(c[28128+(l<<2)>>2]|0)<<3)|0;t=c[u>>2]&e;u=c[u+4>>2]&f;s=g;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){l=l<<6;while(1){m=b+8|0;c[b>>2]=cd(g)|0|l;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=m;break}else{b=m}}}k=k+4|0;l=c[k>>2]|0}while((l|0)!=64)}k=a+720|0;l=c[k>>2]|0;if((l|0)!=64){h=a+256|0;do{q=h;t=c[q>>2]|0;q=c[q+4>>2]|0;r=26848+(l<<3)|0;u=27360+(l<<3)|0;u=(ea(c[r+4>>2]&q,c[u+4>>2]|0)|0)^(ea(c[r>>2]&t,c[u>>2]|0)|0);u=(c[27872+(l<<2)>>2]|0)+(u>>>(c[28128+(l<<2)>>2]|0)<<3)|0;r=28384+(l<<3)|0;s=28896+(l<<3)|0;s=(ea(c[r+4>>2]&q,c[s+4>>2]|0)|0)^(ea(c[r>>2]&t,c[s>>2]|0)|0);s=(c[29408+(l<<2)>>2]|0)+(s>>>(c[29664+(l<<2)>>2]|0)<<3)|0;t=(c[s>>2]|c[u>>2])&e;u=(c[s+4>>2]|c[u+4>>2])&f;s=g;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){l=l<<6;while(1){m=b+8|0;c[b>>2]=cd(g)|0|l;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=m;break}else{b=m}}}k=k+4|0;l=c[k>>2]|0}while((l|0)!=64)}a=c[a+784>>2]|0;u=33824+(a<<3)|0;t=c[u>>2]&e;u=c[u+4>>2]&f;s=j;c[s>>2]=t;c[s+4>>2]=u;if((t|0)==0&(u|0)==0){u=b;i=d;return u|0}e=a<<6;while(1){f=b+8|0;c[b>>2]=cd(j)|0|e;u=j;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){break}else{b=f}}i=d;return f|0}else{n=a+328|0;p=a+264|0;o=c[p>>2]&c[n>>2];n=c[p+4>>2]&c[n+4>>2];p=o&65280;j=o&-65281;if(!((p|0)==0&0==0)){r=a+256|0;q=~c[r>>2];r=~c[r+4>>2];t=Kt(p|0,0,9)|0;t=t&e;u=I&f;s=g;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){s=b;while(1){u=cd(g)|0;b=s+8|0;c[s>>2]=u|(u<<6)+576|28672;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){break}else{s=b}}}u=Kt(p|0,0,7)|0;u=e&254&u;t=g;c[t>>2]=u;c[t+4>>2]=0;if(!((u|0)==0&0==0)){while(1){u=cd(g)|0;s=b+8|0;c[b>>2]=u|(u<<6)+448|28672;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=s;break}else{b=s}}}t=Kt(p|0,0,8)|0;t=t&q;u=I&r;s=l;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){while(1){u=cd(l)|0;p=b+8|0;c[b>>2]=u|(u<<6)+512|28672;u=l;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=p;break}else{b=p}}}}t=Kt(o|0,n|0,9)|0;t=e&2139062016&t;u=f&8355711&I;l=m;c[l>>2]=t;c[l+4>>2]=u;o=Kt(o|0,n|0,7)|0;o=e&-16843264&o;l=f&16711422&I;s=k;c[s>>2]=o;c[s+4>>2]=l;if(!((t|0)==0&(u|0)==0)){do{t=cd(m)|0;u=b;b=b+8|0;c[u>>2]=(t<<6)+576|t;u=m}while(!((c[u>>2]|0)==0&(c[u+4>>2]|0)==0));l=k;o=c[l>>2]|0;l=c[l+4>>2]|0}if(!((o|0)==0&(l|0)==0)){l=b;while(1){u=cd(k)|0;b=l+8|0;c[l>>2]=(u<<6)+448|u;u=k;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){break}else{l=b}}}k=a+2220|0;l=c[(c[k>>2]|0)+40>>2]|0;if((l|0)!=64?(u=31264+(l<<3)|0,t=j&c[u>>2],u=n&c[u+4>>2],s=m,c[s>>2]=t,c[s+4>>2]=u,!((t|0)==0&(u|0)==0)):0){while(1){u=cd(m)|0;j=b+8|0;c[b>>2]=u<<6|c[(c[k>>2]|0)+40>>2]|32768;u=m;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=j;break}else{b=j}}}j=a+1040|0;k=c[j>>2]|0;if((k|0)!=64){do{u=31776+(k<<3)|0;t=c[u>>2]&e;u=c[u+4>>2]&f;s=g;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){k=k<<6;while(1){l=b+8|0;c[b>>2]=cd(g)|0|k;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=l;break}else{b=l}}}j=j+4|0;k=c[j>>2]|0}while((k|0)!=64)}k=a+1104|0;l=c[k>>2]|0;if((l|0)!=64){j=a+256|0;do{t=j;s=28384+(l<<3)|0;u=28896+(l<<3)|0;u=(ea(c[s+4>>2]&c[t+4>>2],c[u+4>>2]|0)|0)^(ea(c[s>>2]&c[t>>2],c[u>>2]|0)|0);u=(c[29408+(l<<2)>>2]|0)+(u>>>(c[29664+(l<<2)>>2]|0)<<3)|0;t=c[u>>2]&e;u=c[u+4>>2]&f;s=g;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){l=l<<6;while(1){m=b+8|0;c[b>>2]=cd(g)|0|l;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=m;break}else{b=m}}}k=k+4|0;l=c[k>>2]|0}while((l|0)!=64)}k=a+1168|0;l=c[k>>2]|0;if((l|0)!=64){j=a+256|0;do{t=j;s=26848+(l<<3)|0;u=27360+(l<<3)|0;u=(ea(c[s+4>>2]&c[t+4>>2],c[u+4>>2]|0)|0)^(ea(c[s>>2]&c[t>>2],c[u>>2]|0)|0);u=(c[27872+(l<<2)>>2]|0)+(u>>>(c[28128+(l<<2)>>2]|0)<<3)|0;t=c[u>>2]&e;u=c[u+4>>2]&f;s=g;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){l=l<<6;while(1){m=b+8|0;c[b>>2]=cd(g)|0|l;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=m;break}else{b=m}}}k=k+4|0;l=c[k>>2]|0}while((l|0)!=64)}k=a+1232|0;l=c[k>>2]|0;if((l|0)!=64){j=a+256|0;do{q=j;t=c[q>>2]|0;q=c[q+4>>2]|0;r=26848+(l<<3)|0;u=27360+(l<<3)|0;u=(ea(c[r+4>>2]&q,c[u+4>>2]|0)|0)^(ea(c[r>>2]&t,c[u>>2]|0)|0);u=(c[27872+(l<<2)>>2]|0)+(u>>>(c[28128+(l<<2)>>2]|0)<<3)|0;r=28384+(l<<3)|0;s=28896+(l<<3)|0;s=(ea(c[r+4>>2]&q,c[s+4>>2]|0)|0)^(ea(c[r>>2]&t,c[s>>2]|0)|0);s=(c[29408+(l<<2)>>2]|0)+(s>>>(c[29664+(l<<2)>>2]|0)<<3)|0;t=(c[s>>2]|c[u>>2])&e;u=(c[s+4>>2]|c[u+4>>2])&f;s=g;c[s>>2]=t;c[s+4>>2]=u;if(!((t|0)==0&(u|0)==0)){l=l<<6;while(1){m=b+8|0;c[b>>2]=cd(g)|0|l;u=g;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){b=m;break}else{b=m}}}k=k+4|0;l=c[k>>2]|0}while((l|0)!=64)}a=c[a+1296>>2]|0;u=33824+(a<<3)|0;t=c[u>>2]&e;u=c[u+4>>2]&f;s=h;c[s>>2]=t;c[s+4>>2]=u;if((t|0)==0&(u|0)==0){u=b;i=d;return u|0}e=a<<6;while(1){f=b+8|0;c[b>>2]=cd(h)|0|e;u=h;if((c[u>>2]|0)==0&(c[u+4>>2]|0)==0){break}else{b=f}}i=d;return f|0}return 0}function _f(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+48|0;j=e+40|0;o=e+32|0;n=e+24|0;p=e+16|0;l=e+8|0;m=e;f=b+256|0;h=f;g=~c[h>>2];h=~c[h+4>>2];if((c[b+2212>>2]|0)==0){t=b+264|0;s=b+320|0;k=b+328|0;q=k;r=c[q>>2]|0;q=c[q+4>>2]|0;u=c[s+4>>2]&c[t+4>>2];m=u&16711680;u=Mt(c[s>>2]&c[t>>2]|0,u|0,8)|0;u=g&-256&u;t=h&16777215&I;s=n;c[s>>2]=u;c[s+4>>2]=t;s=Mt(u|0,t|0,8)|0;s=g&-16777216&s;v=p;c[v>>2]=s;c[v+4>>2]=0;if((u|0)==0&(t|0)==0){n=0}else{do{u=cd(n)|0;v=d;d=d+8|0;c[v>>2]=(u<<6)+-512|u;v=n}while(!((c[v>>2]|0)==0&(c[v+4>>2]|0)==0));n=p;s=c[n>>2]|0;n=c[n+4>>2]|0}if(!((s|0)==0&(n|0)==0)){n=d;while(1){v=cd(p)|0;d=n+8|0;c[n>>2]=(v<<6)+-1024|v;v=p;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){break}else{n=d}}}if(!(0==0&(m|0)==0)){u=Mt(0,m|0,9)|0;u=u&r;v=I&q;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){n=d;while(1){v=cd(j)|0;v=(v<<6)+-576|v;c[n>>2]=v|24576;c[n+8>>2]=v|20480;d=n+24|0;c[n+16>>2]=v|16384;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){break}else{n=d}}}Mt(0,m|0,7)|0;v=q&2130706432&I;u=j;c[u>>2]=0;c[u+4>>2]=v;if(!(0==0&(v|0)==0)){while(1){v=cd(j)|0;v=(v<<6)+-448|v;c[d>>2]=v|24576;c[d+8>>2]=v|20480;n=d+24|0;c[d+16>>2]=v|16384;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){d=n;break}else{d=n}}}u=Mt(0,m|0,8)|0;u=u&g;v=I&h;t=o;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){while(1){v=cd(o)|0;v=(v<<6)+-512|v;c[d>>2]=v|24576;c[d+8>>2]=v|20480;m=d+24|0;c[d+16>>2]=v|16384;v=o;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){d=m;break}else{d=m}}}}m=b+528|0;n=c[m>>2]|0;if((n|0)!=64){do{v=31776+(n<<3)|0;u=c[v>>2]&g;v=c[v+4>>2]&h;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){n=n<<6;while(1){o=d+8|0;c[d>>2]=cd(j)|0|n;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){d=o;break}else{d=o}}}m=m+4|0;n=c[m>>2]|0}while((n|0)!=64)}m=b+592|0;n=c[m>>2]|0;if((n|0)!=64){do{u=f;t=28384+(n<<3)|0;v=28896+(n<<3)|0;v=(ea(c[t+4>>2]&c[u+4>>2],c[v+4>>2]|0)|0)^(ea(c[t>>2]&c[u>>2],c[v>>2]|0)|0);v=(c[29408+(n<<2)>>2]|0)+(v>>>(c[29664+(n<<2)>>2]|0)<<3)|0;u=c[v>>2]&g;v=c[v+4>>2]&h;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){n=n<<6;while(1){o=d+8|0;c[d>>2]=cd(j)|0|n;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){d=o;break}else{d=o}}}m=m+4|0;n=c[m>>2]|0}while((n|0)!=64)}m=b+656|0;n=c[m>>2]|0;if((n|0)!=64){do{u=f;t=26848+(n<<3)|0;v=27360+(n<<3)|0;v=(ea(c[t+4>>2]&c[u+4>>2],c[v+4>>2]|0)|0)^(ea(c[t>>2]&c[u>>2],c[v>>2]|0)|0);v=(c[27872+(n<<2)>>2]|0)+(v>>>(c[28128+(n<<2)>>2]|0)<<3)|0;u=c[v>>2]&g;v=c[v+4>>2]&h;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){n=n<<6;while(1){o=d+8|0;c[d>>2]=cd(j)|0|n;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){d=o;break}else{d=o}}}m=m+4|0;n=c[m>>2]|0}while((n|0)!=64)}m=b+720|0;n=c[m>>2]|0;if((n|0)!=64){do{r=f;u=c[r>>2]|0;r=c[r+4>>2]|0;s=26848+(n<<3)|0;v=27360+(n<<3)|0;v=(ea(c[s+4>>2]&r,c[v+4>>2]|0)|0)^(ea(c[s>>2]&u,c[v>>2]|0)|0);v=(c[27872+(n<<2)>>2]|0)+(v>>>(c[28128+(n<<2)>>2]|0)<<3)|0;s=28384+(n<<3)|0;t=28896+(n<<3)|0;t=(ea(c[s+4>>2]&r,c[t+4>>2]|0)|0)^(ea(c[s>>2]&u,c[t>>2]|0)|0);t=(c[29408+(n<<2)>>2]|0)+(t>>>(c[29664+(n<<2)>>2]|0)<<3)|0;u=(c[t>>2]|c[v>>2])&g;v=(c[t+4>>2]|c[v+4>>2])&h;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){n=n<<6;while(1){o=d+8|0;c[d>>2]=cd(j)|0|n;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){d=o;break}else{d=o}}}m=m+4|0;n=c[m>>2]|0}while((n|0)!=64)}j=b+784|0;m=c[j>>2]|0;v=33824+(m<<3)|0;u=c[v>>2]&g;v=c[v+4>>2]&h;t=l;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){g=m<<6;h=d;while(1){d=h+8|0;c[h>>2]=cd(l)|0|g;v=l;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){break}else{h=d}}}g=b+2220|0;h=c[(c[g>>2]|0)+24>>2]|0;if((h&3|0)==0){v=d;i=e;return v|0}if((a[b+2224>>0]|0)!=0){v=gg(b,fg(b,d)|0)|0;i=e;return v|0}o=f;p=c[o>>2]|0;o=c[o+4>>2]|0;v=b+2008|0;a:do{if(((c[v>>2]&p|0)==0?(c[v+4>>2]&o|0)==0:0)?(h&1|0)!=0:0){m=c[j>>2]|0;n=c[b+1940>>2]|0;h=k;l=c[h>>2]|0;h=c[h+4>>2]|0;b:do{if((m|0)!=6){v=Og(b,6,p,o)|0;if((v&l|0)==0&(I&h|0)==0){o=5}else{break a}while(1){if((o|0)==(m|0)){break b}v=f;v=Og(b,o,c[v>>2]|0,c[v+4>>2]|0)|0;if((v&l|0)==0&(I&h|0)==0){o=o+-1|0}else{break a}}}}while(0);c[d>>2]=n|m<<6|49152;d=d+8|0}}while(0);l=f;h=c[l>>2]|0;l=c[l+4>>2]|0;v=b+2016|0;if(!((c[v>>2]&h|0)==0?(c[v+4>>2]&l|0)==0:0)){v=d;i=e;return v|0}if((c[(c[g>>2]|0)+24>>2]&2|0)==0){v=d;i=e;return v|0}g=c[j>>2]|0;j=c[b+1944>>2]|0;m=k;k=c[m>>2]|0;m=c[m+4>>2]|0;c:do{if((g|0)!=2){v=Og(b,2,h,l)|0;if((v&k|0)==0&(I&m|0)==0){h=3}else{v=d;i=e;return v|0}while(1){if((h|0)==(g|0)){break c}v=f;v=Og(b,h,c[v>>2]|0,c[v+4>>2]|0)|0;if((v&k|0)==0&(I&m|0)==0){h=h+1|0}else{break}}i=e;return d|0}}while(0);c[d>>2]=j|g<<6|49152;v=d+8|0;i=e;return v|0}else{u=b+264|0;k=b+320|0;r=k;q=c[r>>2]|0;r=c[r+4>>2]|0;v=b+328|0;s=c[v>>2]&c[u>>2];l=s&65280;u=Kt(s|0,c[v+4>>2]&c[u+4>>2]|0,8)|0;u=g&-256&u;v=h&16777215&I;s=o;c[s>>2]=u;c[s+4>>2]=v;Kt(u|0,v|0,8)|0;s=h&255&I;t=p;c[t>>2]=0;c[t+4>>2]=s;if((u|0)==0&(v|0)==0){o=0}else{do{u=cd(o)|0;v=d;d=d+8|0;c[v>>2]=(u<<6)+512|u;v=o}while(!((c[v>>2]|0)==0&(c[v+4>>2]|0)==0));s=p;o=c[s>>2]|0;s=c[s+4>>2]|0}if(!((o|0)==0&(s|0)==0)){while(1){v=cd(p)|0;o=d+8|0;c[d>>2]=(v<<6)+1024|v;v=p;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){d=o;break}else{d=o}}}if(!((l|0)==0&0==0)){u=Kt(l|0,0,9)|0;u=u&q;v=I&r;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){o=d;while(1){v=cd(j)|0;v=(v<<6)+576|v;c[o>>2]=v|24576;c[o+8>>2]=v|20480;d=o+24|0;c[o+16>>2]=v|16384;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){break}else{o=d}}}v=Kt(l|0,0,7)|0;v=q&254&v;u=j;c[u>>2]=v;c[u+4>>2]=0;if(!((v|0)==0&0==0)){o=d;while(1){v=cd(j)|0;v=(v<<6)+448|v;c[o>>2]=v|24576;c[o+8>>2]=v|20480;d=o+24|0;c[o+16>>2]=v|16384;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){break}else{o=d}}}u=Kt(l|0,0,8)|0;u=u&g;v=I&h;t=n;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){while(1){v=cd(n)|0;v=(v<<6)+512|v;c[d>>2]=v|24576;c[d+8>>2]=v|20480;l=d+24|0;c[d+16>>2]=v|16384;v=n;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){d=l;break}else{d=l}}}}l=b+1040|0;n=c[l>>2]|0;if((n|0)!=64){do{v=31776+(n<<3)|0;u=c[v>>2]&g;v=c[v+4>>2]&h;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){n=n<<6;o=d;while(1){d=o+8|0;c[o>>2]=cd(j)|0|n;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){break}else{o=d}}}l=l+4|0;n=c[l>>2]|0}while((n|0)!=64)}l=b+1104|0;n=c[l>>2]|0;if((n|0)!=64){do{u=f;t=28384+(n<<3)|0;v=28896+(n<<3)|0;v=(ea(c[t+4>>2]&c[u+4>>2],c[v+4>>2]|0)|0)^(ea(c[t>>2]&c[u>>2],c[v>>2]|0)|0);v=(c[29408+(n<<2)>>2]|0)+(v>>>(c[29664+(n<<2)>>2]|0)<<3)|0;u=c[v>>2]&g;v=c[v+4>>2]&h;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){n=n<<6;o=d;while(1){d=o+8|0;c[o>>2]=cd(j)|0|n;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){break}else{o=d}}}l=l+4|0;n=c[l>>2]|0}while((n|0)!=64)}l=b+1168|0;n=c[l>>2]|0;if((n|0)!=64){do{u=f;t=26848+(n<<3)|0;v=27360+(n<<3)|0;v=(ea(c[t+4>>2]&c[u+4>>2],c[v+4>>2]|0)|0)^(ea(c[t>>2]&c[u>>2],c[v>>2]|0)|0);v=(c[27872+(n<<2)>>2]|0)+(v>>>(c[28128+(n<<2)>>2]|0)<<3)|0;u=c[v>>2]&g;v=c[v+4>>2]&h;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){n=n<<6;o=d;while(1){d=o+8|0;c[o>>2]=cd(j)|0|n;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){break}else{o=d}}}l=l+4|0;n=c[l>>2]|0}while((n|0)!=64)}l=b+1232|0;n=c[l>>2]|0;if((n|0)!=64){do{r=f;u=c[r>>2]|0;r=c[r+4>>2]|0;s=26848+(n<<3)|0;v=27360+(n<<3)|0;v=(ea(c[s+4>>2]&r,c[v+4>>2]|0)|0)^(ea(c[s>>2]&u,c[v>>2]|0)|0);v=(c[27872+(n<<2)>>2]|0)+(v>>>(c[28128+(n<<2)>>2]|0)<<3)|0;s=28384+(n<<3)|0;t=28896+(n<<3)|0;t=(ea(c[s+4>>2]&r,c[t+4>>2]|0)|0)^(ea(c[s>>2]&u,c[t>>2]|0)|0);t=(c[29408+(n<<2)>>2]|0)+(t>>>(c[29664+(n<<2)>>2]|0)<<3)|0;u=(c[t>>2]|c[v>>2])&g;v=(c[t+4>>2]|c[v+4>>2])&h;t=j;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){n=n<<6;o=d;while(1){d=o+8|0;c[o>>2]=cd(j)|0|n;v=j;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){break}else{o=d}}}l=l+4|0;n=c[l>>2]|0}while((n|0)!=64)}j=b+1296|0;l=c[j>>2]|0;v=33824+(l<<3)|0;u=c[v>>2]&g;v=c[v+4>>2]&h;t=m;c[t>>2]=u;c[t+4>>2]=v;if(!((u|0)==0&(v|0)==0)){g=l<<6;while(1){h=d+8|0;c[d>>2]=cd(m)|0|g;v=m;if((c[v>>2]|0)==0&(c[v+4>>2]|0)==0){d=h;break}else{d=h}}}g=b+2220|0;h=c[(c[g>>2]|0)+24>>2]|0;if((h&12|0)==0){v=d;i=e;return v|0}if((a[b+2224>>0]|0)!=0){v=eg(b,dg(b,d)|0)|0;i=e;return v|0}o=f;p=c[o>>2]|0;o=c[o+4>>2]|0;v=b+2032|0;d:do{if(((c[v>>2]&p|0)==0?(c[v+4>>2]&o|0)==0:0)?(h&4|0)!=0:0){m=c[j>>2]|0;n=c[b+1952>>2]|0;h=k;l=c[h>>2]|0;h=c[h+4>>2]|0;e:do{if((m|0)!=62){v=Og(b,62,p,o)|0;if((v&l|0)==0&(I&h|0)==0){o=61}else{break d}while(1){if((o|0)==(m|0)){break e}v=f;v=Og(b,o,c[v>>2]|0,c[v+4>>2]|0)|0;if((v&l|0)==0&(I&h|0)==0){o=o+-1|0}else{break d}}}}while(0);c[d>>2]=n|m<<6|49152;d=d+8|0}}while(0);l=f;h=c[l>>2]|0;l=c[l+4>>2]|0;v=b+2064|0;if(!((c[v>>2]&h|0)==0?(c[v+4>>2]&l|0)==0:0)){v=d;i=e;return v|0}if((c[(c[g>>2]|0)+24>>2]&8|0)==0){v=d;i=e;return v|0}j=c[j>>2]|0;g=c[b+1968>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;f:do{if((j|0)!=58){v=Og(b,58,h,l)|0;if((v&m|0)==0&(I&k|0)==0){h=59}else{v=d;i=e;return v|0}while(1){if((h|0)==(j|0)){break f}v=f;v=Og(b,h,c[v>>2]|0,c[v+4>>2]|0)|0;if((v&m|0)==0&(I&k|0)==0){h=h+1|0}else{break}}i=e;return d|0}}while(0);c[d>>2]=g|j<<6|49152;v=d+8|0;i=e;return v|0}return 0}function $f(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,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=i;i=i+48|0;h=e+40|0;p=e+32|0;o=e+24|0;n=e+16|0;m=e+8|0;l=e;y=c[b+2212>>2]|0;f=b+(y<<3)+320|0;g=~c[f>>2];f=~c[f+4>>2];if((y|0)==0){t=b+320|0;u=b+264|0;q=c[u>>2]&c[t>>2];t=c[u+4>>2]&c[t+4>>2];u=t&16711680;r=t&-16711681;k=b+328|0;l=k;s=c[l>>2]|0;l=c[l+4>>2]|0;j=b+256|0;w=j;v=~c[w>>2];w=~c[w+4>>2];z=Mt(q|0,r|0,8)|0;z=z&v;y=I&w;x=o;c[x>>2]=z;c[x+4>>2]=y;x=Mt(z|0,y|0,8)|0;x=v&-16777216&x;A=n;c[A>>2]=x;c[A+4>>2]=0;if((z|0)==0&(y|0)==0){y=0}else{do{z=cd(o)|0;A=d;d=d+8|0;c[A>>2]=(z<<6)+-512|z;A=o}while(!((c[A>>2]|0)==0&(c[A+4>>2]|0)==0));y=n;x=c[y>>2]|0;y=c[y+4>>2]|0}if(!((x|0)==0&(y|0)==0)){x=d;while(1){A=cd(n)|0;d=x+8|0;c[x>>2]=(A<<6)+-1024|A;A=n;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{x=d}}}if(!(0==0&(u|0)==0)){z=Mt(0,u|0,9)|0;z=z&s;A=I&l;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){x=d;while(1){A=cd(h)|0;A=(A<<6)+-576|A;c[x>>2]=A|28672;c[x+8>>2]=A|24576;c[x+16>>2]=A|20480;d=x+32|0;c[x+24>>2]=A|16384;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{x=d}}}Mt(0,u|0,7)|0;A=l&2130706432&I;z=h;c[z>>2]=0;c[z+4>>2]=A;if(!(0==0&(A|0)==0)){while(1){A=cd(h)|0;A=(A<<6)+-448|A;c[d>>2]=A|28672;c[d+8>>2]=A|24576;c[d+16>>2]=A|20480;x=d+32|0;c[d+24>>2]=A|16384;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=x;break}else{d=x}}}z=Mt(0,u|0,8)|0;z=z&v;A=I&w;y=p;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){while(1){A=cd(p)|0;A=(A<<6)+-512|A;c[d>>2]=A|28672;c[d+8>>2]=A|24576;c[d+16>>2]=A|20480;u=d+32|0;c[d+24>>2]=A|16384;A=p;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=u;break}else{d=u}}}}z=Mt(q|0,t|0,9)|0;z=s&-16843264&z;A=l&16711422&I;p=o;c[p>>2]=z;c[p+4>>2]=A;p=Mt(q|0,t|0,7)|0;p=s&2139062016&p;l=l&8355711&I;y=n;c[y>>2]=p;c[y+4>>2]=l;if(!((z|0)==0&(A|0)==0)){do{z=cd(o)|0;A=d;d=d+8|0;c[A>>2]=(z<<6)+-576|z;A=o}while(!((c[A>>2]|0)==0&(c[A+4>>2]|0)==0));l=n;p=c[l>>2]|0;l=c[l+4>>2]|0}if(!((p|0)==0&(l|0)==0)){l=d;while(1){A=cd(n)|0;d=l+8|0;c[l>>2]=(A<<6)+-448|A;A=n;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{l=d}}}l=b+2220|0;n=c[(c[l>>2]|0)+40>>2]|0;if((n|0)!=64?(A=35360+(n<<3)|0,z=c[A>>2]&q,A=c[A+4>>2]&r,y=o,c[y>>2]=z,c[y+4>>2]=A,!((z|0)==0&(A|0)==0)):0){while(1){A=cd(o)|0;n=d+8|0;c[d>>2]=A<<6|c[(c[l>>2]|0)+40>>2]|32768;A=o;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=n;break}else{d=n}}}n=b+528|0;o=c[n>>2]|0;if((o|0)!=64){do{A=31776+(o<<3)|0;z=c[A>>2]&g;A=c[A+4>>2]&f;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){o=o<<6;while(1){p=d+8|0;c[d>>2]=cd(h)|0|o;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=p;break}else{d=p}}}n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}n=b+592|0;o=c[n>>2]|0;if((o|0)!=64){do{z=j;y=28384+(o<<3)|0;A=28896+(o<<3)|0;A=(ea(c[y+4>>2]&c[z+4>>2],c[A+4>>2]|0)|0)^(ea(c[y>>2]&c[z>>2],c[A>>2]|0)|0);A=(c[29408+(o<<2)>>2]|0)+(A>>>(c[29664+(o<<2)>>2]|0)<<3)|0;z=c[A>>2]&g;A=c[A+4>>2]&f;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){o=o<<6;while(1){p=d+8|0;c[d>>2]=cd(h)|0|o;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=p;break}else{d=p}}}n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}n=b+656|0;o=c[n>>2]|0;if((o|0)!=64){do{z=j;y=26848+(o<<3)|0;A=27360+(o<<3)|0;A=(ea(c[y+4>>2]&c[z+4>>2],c[A+4>>2]|0)|0)^(ea(c[y>>2]&c[z>>2],c[A>>2]|0)|0);A=(c[27872+(o<<2)>>2]|0)+(A>>>(c[28128+(o<<2)>>2]|0)<<3)|0;z=c[A>>2]&g;A=c[A+4>>2]&f;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){o=o<<6;while(1){p=d+8|0;c[d>>2]=cd(h)|0|o;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=p;break}else{d=p}}}n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}n=b+720|0;o=c[n>>2]|0;if((o|0)!=64){do{w=j;z=c[w>>2]|0;w=c[w+4>>2]|0;x=26848+(o<<3)|0;A=27360+(o<<3)|0;A=(ea(c[x+4>>2]&w,c[A+4>>2]|0)|0)^(ea(c[x>>2]&z,c[A>>2]|0)|0);A=(c[27872+(o<<2)>>2]|0)+(A>>>(c[28128+(o<<2)>>2]|0)<<3)|0;x=28384+(o<<3)|0;y=28896+(o<<3)|0;y=(ea(c[x+4>>2]&w,c[y+4>>2]|0)|0)^(ea(c[x>>2]&z,c[y>>2]|0)|0);y=(c[29408+(o<<2)>>2]|0)+(y>>>(c[29664+(o<<2)>>2]|0)<<3)|0;z=(c[y>>2]|c[A>>2])&g;A=(c[y+4>>2]|c[A+4>>2])&f;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){o=o<<6;while(1){p=d+8|0;c[d>>2]=cd(h)|0|o;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=p;break}else{d=p}}}n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}h=b+784|0;n=c[h>>2]|0;A=33824+(n<<3)|0;z=c[A>>2]&g;A=c[A+4>>2]&f;y=m;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){f=n<<6;g=d;while(1){d=g+8|0;c[g>>2]=cd(m)|0|f;A=m;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{g=d}}}m=c[(c[l>>2]|0)+24>>2]|0;if((m&3|0)==0){A=d;i=e;return A|0}if((a[b+2224>>0]|0)!=0){A=gg(b,fg(b,d)|0)|0;i=e;return A|0}g=j;f=c[g>>2]|0;g=c[g+4>>2]|0;A=b+2008|0;a:do{if(((c[A>>2]&f|0)==0?(c[A+4>>2]&g|0)==0:0)?(m&1|0)!=0:0){n=c[h>>2]|0;m=c[b+1940>>2]|0;p=k;o=c[p>>2]|0;p=c[p+4>>2]|0;b:do{if((n|0)!=6){A=Og(b,6,f,g)|0;if((A&o|0)==0&(I&p|0)==0){f=5}else{break a}while(1){if((f|0)==(n|0)){break b}A=j;A=Og(b,f,c[A>>2]|0,c[A+4>>2]|0)|0;if((A&o|0)==0&(I&p|0)==0){f=f+-1|0}else{break a}}}}while(0);c[d>>2]=m|n<<6|49152;d=d+8|0}}while(0);g=j;f=c[g>>2]|0;g=c[g+4>>2]|0;A=b+2016|0;if(!((c[A>>2]&f|0)==0?(c[A+4>>2]&g|0)==0:0)){A=d;i=e;return A|0}if((c[(c[l>>2]|0)+24>>2]&2|0)==0){A=d;i=e;return A|0}l=c[h>>2]|0;h=c[b+1944>>2]|0;m=k;k=c[m>>2]|0;m=c[m+4>>2]|0;c:do{if((l|0)!=2){A=Og(b,2,f,g)|0;if((A&k|0)==0&(I&m|0)==0){f=3}else{A=d;i=e;return A|0}while(1){if((f|0)==(l|0)){break c}A=j;A=Og(b,f,c[A>>2]|0,c[A+4>>2]|0)|0;if((A&k|0)==0&(I&m|0)==0){f=f+1|0}else{break}}i=e;return d|0}}while(0);c[d>>2]=h|l<<6|49152;A=d+8|0;i=e;return A|0}else{q=b+328|0;w=b+264|0;s=c[w>>2]&c[q>>2];q=c[w+4>>2]&c[q+4>>2];w=s&65280;r=s&-65281;k=b+320|0;m=k;t=c[m>>2]|0;m=c[m+4>>2]|0;j=b+256|0;v=j;u=~c[v>>2];v=~c[v+4>>2];z=Kt(r|0,q|0,8)|0;z=z&u;A=I&v;x=p;c[x>>2]=z;c[x+4>>2]=A;Kt(z|0,A|0,8)|0;x=v&255&I;y=n;c[y>>2]=0;c[y+4>>2]=x;if((z|0)==0&(A|0)==0){y=0}else{do{z=cd(p)|0;A=d;d=d+8|0;c[A>>2]=(z<<6)+512|z;A=p}while(!((c[A>>2]|0)==0&(c[A+4>>2]|0)==0));x=n;y=c[x>>2]|0;x=c[x+4>>2]|0}if(!((y|0)==0&(x|0)==0)){while(1){A=cd(n)|0;x=d+8|0;c[d>>2]=(A<<6)+1024|A;A=n;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=x;break}else{d=x}}}if(!((w|0)==0&0==0)){z=Kt(w|0,0,9)|0;z=z&t;A=I&m;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){x=d;while(1){A=cd(h)|0;A=(A<<6)+576|A;c[x>>2]=A|28672;c[x+8>>2]=A|24576;c[x+16>>2]=A|20480;d=x+32|0;c[x+24>>2]=A|16384;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{x=d}}}A=Kt(w|0,0,7)|0;A=t&254&A;z=h;c[z>>2]=A;c[z+4>>2]=0;if(!((A|0)==0&0==0)){x=d;while(1){A=cd(h)|0;A=(A<<6)+448|A;c[x>>2]=A|28672;c[x+8>>2]=A|24576;c[x+16>>2]=A|20480;d=x+32|0;c[x+24>>2]=A|16384;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{x=d}}}z=Kt(w|0,0,8)|0;z=z&u;A=I&v;y=o;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){while(1){A=cd(o)|0;A=(A<<6)+512|A;c[d>>2]=A|28672;c[d+8>>2]=A|24576;c[d+16>>2]=A|20480;u=d+32|0;c[d+24>>2]=A|16384;A=o;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=u;break}else{d=u}}}}z=Kt(s|0,q|0,9)|0;z=t&2139062016&z;A=m&8355711&I;o=p;c[o>>2]=z;c[o+4>>2]=A;o=Kt(s|0,q|0,7)|0;o=t&-16843264&o;m=m&16711422&I;y=n;c[y>>2]=o;c[y+4>>2]=m;if(!((z|0)==0&(A|0)==0)){do{z=cd(p)|0;A=d;d=d+8|0;c[A>>2]=(z<<6)+576|z;A=p}while(!((c[A>>2]|0)==0&(c[A+4>>2]|0)==0));m=n;o=c[m>>2]|0;m=c[m+4>>2]|0}if(!((o|0)==0&(m|0)==0)){while(1){A=cd(n)|0;m=d+8|0;c[d>>2]=(A<<6)+448|A;A=n;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=m;break}else{d=m}}}m=b+2220|0;n=c[(c[m>>2]|0)+40>>2]|0;if((n|0)!=64?(A=31264+(n<<3)|0,z=c[A>>2]&r,A=c[A+4>>2]&q,y=p,c[y>>2]=z,c[y+4>>2]=A,!((z|0)==0&(A|0)==0)):0){while(1){A=cd(p)|0;n=d+8|0;c[d>>2]=A<<6|c[(c[m>>2]|0)+40>>2]|32768;A=p;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=n;break}else{d=n}}}n=b+1040|0;o=c[n>>2]|0;if((o|0)!=64){do{A=31776+(o<<3)|0;z=c[A>>2]&g;A=c[A+4>>2]&f;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){o=o<<6;p=d;while(1){d=p+8|0;c[p>>2]=cd(h)|0|o;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{p=d}}}n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}n=b+1104|0;o=c[n>>2]|0;if((o|0)!=64){do{z=j;y=28384+(o<<3)|0;A=28896+(o<<3)|0;A=(ea(c[y+4>>2]&c[z+4>>2],c[A+4>>2]|0)|0)^(ea(c[y>>2]&c[z>>2],c[A>>2]|0)|0);A=(c[29408+(o<<2)>>2]|0)+(A>>>(c[29664+(o<<2)>>2]|0)<<3)|0;z=c[A>>2]&g;A=c[A+4>>2]&f;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){o=o<<6;p=d;while(1){d=p+8|0;c[p>>2]=cd(h)|0|o;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{p=d}}}n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}n=b+1168|0;o=c[n>>2]|0;if((o|0)!=64){do{z=j;y=26848+(o<<3)|0;A=27360+(o<<3)|0;A=(ea(c[y+4>>2]&c[z+4>>2],c[A+4>>2]|0)|0)^(ea(c[y>>2]&c[z>>2],c[A>>2]|0)|0);A=(c[27872+(o<<2)>>2]|0)+(A>>>(c[28128+(o<<2)>>2]|0)<<3)|0;z=c[A>>2]&g;A=c[A+4>>2]&f;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){o=o<<6;p=d;while(1){d=p+8|0;c[p>>2]=cd(h)|0|o;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{p=d}}}n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}n=b+1232|0;o=c[n>>2]|0;if((o|0)!=64){do{w=j;z=c[w>>2]|0;w=c[w+4>>2]|0;x=26848+(o<<3)|0;A=27360+(o<<3)|0;A=(ea(c[x+4>>2]&w,c[A+4>>2]|0)|0)^(ea(c[x>>2]&z,c[A>>2]|0)|0);A=(c[27872+(o<<2)>>2]|0)+(A>>>(c[28128+(o<<2)>>2]|0)<<3)|0;x=28384+(o<<3)|0;y=28896+(o<<3)|0;y=(ea(c[x+4>>2]&w,c[y+4>>2]|0)|0)^(ea(c[x>>2]&z,c[y>>2]|0)|0);y=(c[29408+(o<<2)>>2]|0)+(y>>>(c[29664+(o<<2)>>2]|0)<<3)|0;z=(c[y>>2]|c[A>>2])&g;A=(c[y+4>>2]|c[A+4>>2])&f;y=h;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){o=o<<6;p=d;while(1){d=p+8|0;c[p>>2]=cd(h)|0|o;A=h;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){break}else{p=d}}}n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}h=b+1296|0;n=c[h>>2]|0;A=33824+(n<<3)|0;z=c[A>>2]&g;A=c[A+4>>2]&f;y=l;c[y>>2]=z;c[y+4>>2]=A;if(!((z|0)==0&(A|0)==0)){f=n<<6;while(1){g=d+8|0;c[d>>2]=cd(l)|0|f;A=l;if((c[A>>2]|0)==0&(c[A+4>>2]|0)==0){d=g;break}else{d=g}}}f=c[(c[m>>2]|0)+24>>2]|0;if((f&12|0)==0){A=d;i=e;return A|0}if((a[b+2224>>0]|0)!=0){A=eg(b,dg(b,d)|0)|0;i=e;return A|0}n=j;o=c[n>>2]|0;n=c[n+4>>2]|0;A=b+2032|0;d:do{if(((c[A>>2]&o|0)==0?(c[A+4>>2]&n|0)==0:0)?(f&4|0)!=0:0){g=c[h>>2]|0;l=c[b+1952>>2]|0;p=k;f=c[p>>2]|0;p=c[p+4>>2]|0;e:do{if((g|0)!=62){A=Og(b,62,o,n)|0;if((A&f|0)==0&(I&p|0)==0){n=61}else{break d}while(1){if((n|0)==(g|0)){break e}A=j;A=Og(b,n,c[A>>2]|0,c[A+4>>2]|0)|0;if((A&f|0)==0&(I&p|0)==0){n=n+-1|0}else{break d}}}}while(0);c[d>>2]=l|g<<6|49152;d=d+8|0}}while(0);f=j;g=c[f>>2]|0;f=c[f+4>>2]|0;A=b+2064|0;if(!((c[A>>2]&g|0)==0?(c[A+4>>2]&f|0)==0:0)){A=d;i=e;return A|0}if((c[(c[m>>2]|0)+24>>2]&8|0)==0){A=d;i=e;return A|0}l=c[h>>2]|0;h=c[b+1968>>2]|0;m=c[k>>2]|0;k=c[k+4>>2]|0;f:do{if((l|0)!=58){A=Og(b,58,g,f)|0;if((A&m|0)==0&(I&k|0)==0){f=59}else{A=d;i=e;return A|0}while(1){if((f|0)==(l|0)){break f}A=j;A=Og(b,f,c[A>>2]|0,c[A+4>>2]|0)|0;if((A&m|0)==0&(I&k|0)==0){f=f+1|0}else{break}}i=e;return d|0}}while(0);c[d>>2]=h|l<<6|49152;A=d+8|0;i=e;return A|0}return 0}function ag(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,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=i;i=i+144|0;j=e+128|0;z=e+120|0;y=e+112|0;A=e+104|0;f=e+16|0;u=e+8|0;l=e;F=c[b+2212>>2]|0;Cg(f,b);H=f;G=c[H>>2]|0;H=c[H+4>>2]|0;g=u;c[g>>2]=G;c[g+4>>2]=H;g=b+256|0;if(!((G|0)==0&(H|0)==0)){k=f+80|0;do{v=cd(u)|0;C=c[b+(v<<2)>>2]&7;if((C|0)!=1){B=g;D=c[B>>2]|0;B=c[B+4>>2]|0;H=id(C,v,D,B)|0;D=H&~D;B=I&~B;H=l;c[H>>2]=D;c[H+4>>2]=B;if((C|0)==6){H=114208+(c[k>>2]<<3)|0;D=D&~c[H>>2];B=B&~c[H+4>>2];H=l;c[H>>2]=D;c[H+4>>2]=B}if(!((D|0)==0&(B|0)==0)){v=v<<6;B=d;while(1){d=B+8|0;c[B>>2]=cd(l)|0|v;H=l;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){break}else{B=d}}}}H=u}while(!((c[H>>2]|0)==0&(c[H+4>>2]|0)==0))}k=g;l=~c[k>>2];k=~c[k+4>>2];H=b+264|0;G=c[H>>2]|0;H=c[H+4>>2]|0;u=b+320|0;E=u;C=c[E>>2]|0;E=c[E+4>>2]|0;v=b+328|0;B=v;D=c[B>>2]|0;B=c[B+4>>2]|0;if((F|0)==0){C=C&G;w=E&H;r=w&16711680;w=w&-16711681;E=Mt(C|0,w|0,8)|0;E=E&l;t=I&k;H=Mt(E|0,t|0,8)|0;u=l&-16777216;q=f+80|0;F=c[q>>2]|0;G=35360+(F<<3)|0;s=c[G>>2]|0;E=s&E;t=c[G+4>>2]&t;G=y;c[G>>2]=E;c[G+4>>2]=t;s=H&u&s;H=A;c[H>>2]=s;c[H+4>>2]=0;H=f;C=c[H>>2]&C;w=c[H+4>>2]&w;if((C|0)==0&(w|0)==0){u=0}else{H=Mt(C|0,w|0,8)|0;G=30432+((F&7)<<3)|0;F=H&l&~c[G>>2];G=I&k&~c[G+4>>2];H=Mt(F|0,G|0,8)|0;E=F|E;t=G|t;G=y;c[G>>2]=E;c[G+4>>2]=t;s=H&u|s;u=A;c[u>>2]=s;c[u+4>>2]=0;u=0}if(!((E|0)==0&(t|0)==0)){do{G=cd(y)|0;H=d;d=d+8|0;c[H>>2]=(G<<6)+-512|G;H=y}while(!((c[H>>2]|0)==0&(c[H+4>>2]|0)==0));u=A;s=c[u>>2]|0;u=c[u+4>>2]|0}if(!((s|0)==0&(u|0)==0)){s=d;while(1){H=cd(A)|0;d=s+8|0;c[s>>2]=(H<<6)+-1024|H;H=A;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){break}else{s=d}}}if(!(0==0&(r|0)==0)){G=Mt(0,r|0,9)|0;G=G&D;H=I&B;F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){do{s=cd(j)|0;H=31776+(s<<3)|0;G=29920+(c[q>>2]<<3)|0;if(!((c[G>>2]&c[H>>2]|0)==0?(c[G+4>>2]&c[H+4>>2]|0)==0:0)){c[d>>2]=s|(s<<6)+-576|16384;d=d+8|0}H=j}while(!((c[H>>2]|0)==0&(c[H+4>>2]|0)==0))}Mt(0,r|0,7)|0;H=B&2130706432&I;G=j;c[G>>2]=0;c[G+4>>2]=H;if(!(0==0&(H|0)==0)){do{s=cd(j)|0;H=31776+(s<<3)|0;G=29920+(c[q>>2]<<3)|0;if(!((c[G>>2]&c[H>>2]|0)==0?(c[G+4>>2]&c[H+4>>2]|0)==0:0)){c[d>>2]=s|(s<<6)+-448|16384;d=d+8|0}H=j}while(!((c[H>>2]|0)==0&(c[H+4>>2]|0)==0))}G=Mt(0,r|0,8)|0;G=G&l;H=I&k;F=z;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){do{r=cd(z)|0;H=31776+(r<<3)|0;G=29920+(c[q>>2]<<3)|0;if(!((c[G>>2]&c[H>>2]|0)==0?(c[G+4>>2]&c[H+4>>2]|0)==0:0)){c[d>>2]=r|(r<<6)+-512|16384;d=d+8|0}H=z}while(!((c[H>>2]|0)==0&(c[H+4>>2]|0)==0))}}r=b+528|0;s=c[r>>2]|0;if((s|0)!=64){q=f+32|0;do{t=f;u=c[t>>2]|0;t=c[t+4>>2]|0;if(!(!((u|0)==0&(t|0)==0)?(H=29920+(s<<3)|0,!((c[H>>2]&u|0)==0?(c[H+4>>2]&t|0)==0:0)):0)){F=31776+(s<<3)|0;H=q;G=c[F>>2]&l&c[H>>2];H=c[F+4>>2]&k&c[H+4>>2];F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){s=s<<6;while(1){t=d+8|0;c[d>>2]=cd(j)|0|s;H=j;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){d=t;break}else{d=t}}}}r=r+4|0;s=c[r>>2]|0}while((s|0)!=64)}r=b+592|0;s=c[r>>2]|0;if((s|0)!=64){q=f+40|0;do{H=113184+(s<<3)|0;u=q;t=c[u>>2]|0;u=c[u+4>>2]|0;do{if(!((c[H>>2]&l&t|0)==0?(c[H+4>>2]&k&u|0)==0:0)){w=f;y=c[w>>2]|0;w=c[w+4>>2]|0;if(!((y|0)==0&(w|0)==0)?(H=29920+(s<<3)|0,!((c[H>>2]&y|0)==0?(c[H+4>>2]&w|0)==0:0)):0){break}G=g;F=28384+(s<<3)|0;H=28896+(s<<3)|0;H=(ea(c[F+4>>2]&c[G+4>>2],c[H+4>>2]|0)|0)^(ea(c[F>>2]&c[G>>2],c[H>>2]|0)|0);H=(c[29408+(s<<2)>>2]|0)+(H>>>(c[29664+(s<<2)>>2]|0)<<3)|0;G=t&l&c[H>>2];H=u&k&c[H+4>>2];F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){s=s<<6;while(1){t=d+8|0;c[d>>2]=cd(j)|0|s;H=j;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){d=t;break}else{d=t}}}}}while(0);r=r+4|0;s=c[r>>2]|0}while((s|0)!=64)}r=b+656|0;s=c[r>>2]|0;if((s|0)!=64){q=f+48|0;do{H=113696+(s<<3)|0;w=q;y=c[w>>2]|0;w=c[w+4>>2]|0;do{if(!((c[H>>2]&l&y|0)==0?(c[H+4>>2]&k&w|0)==0:0)){u=f;t=c[u>>2]|0;u=c[u+4>>2]|0;if(!((t|0)==0&(u|0)==0)?(H=29920+(s<<3)|0,!((c[H>>2]&t|0)==0?(c[H+4>>2]&u|0)==0:0)):0){break}G=g;F=26848+(s<<3)|0;H=27360+(s<<3)|0;H=(ea(c[F+4>>2]&c[G+4>>2],c[H+4>>2]|0)|0)^(ea(c[F>>2]&c[G>>2],c[H>>2]|0)|0);H=(c[27872+(s<<2)>>2]|0)+(H>>>(c[28128+(s<<2)>>2]|0)<<3)|0;G=y&l&c[H>>2];H=w&k&c[H+4>>2];F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){s=s<<6;while(1){t=d+8|0;c[d>>2]=cd(j)|0|s;H=j;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){d=t;break}else{d=t}}}}}while(0);r=r+4|0;s=c[r>>2]|0}while((s|0)!=64)}r=b+720|0;s=c[r>>2]|0;if((s|0)!=64){q=f+56|0;do{H=114208+(s<<3)|0;t=q;y=c[t>>2]|0;t=c[t+4>>2]|0;do{if(!((c[H>>2]&l&y|0)==0?(c[H+4>>2]&k&t|0)==0:0)){u=f;w=c[u>>2]|0;u=c[u+4>>2]|0;if(!((w|0)==0&(u|0)==0)?(H=29920+(s<<3)|0,!((c[H>>2]&w|0)==0?(c[H+4>>2]&u|0)==0:0)):0){break}D=g;G=c[D>>2]|0;D=c[D+4>>2]|0;E=26848+(s<<3)|0;H=27360+(s<<3)|0;H=(ea(c[E+4>>2]&D,c[H+4>>2]|0)|0)^(ea(c[E>>2]&G,c[H>>2]|0)|0);H=(c[27872+(s<<2)>>2]|0)+(H>>>(c[28128+(s<<2)>>2]|0)<<3)|0;E=28384+(s<<3)|0;F=28896+(s<<3)|0;F=(ea(c[E+4>>2]&D,c[F+4>>2]|0)|0)^(ea(c[E>>2]&G,c[F>>2]|0)|0);F=(c[29408+(s<<2)>>2]|0)+(F>>>(c[29664+(s<<2)>>2]|0)<<3)|0;G=y&l&(c[F>>2]|c[H>>2]);H=t&k&(c[F+4>>2]|c[H+4>>2]);F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){s=s<<6;while(1){t=d+8|0;c[d>>2]=cd(j)|0|s;H=j;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){d=t;break}else{d=t}}}}}while(0);r=r+4|0;s=c[r>>2]|0}while((s|0)!=64)}j=b+2220|0;r=c[(c[j>>2]|0)+24>>2]|0;if((r&3|0)==0){H=d;i=e;return H|0}k=g;q=c[k>>2]|0;k=c[k+4>>2]|0;l=b+2008|0;l=(c[l>>2]&q|0)==0?(c[l+4>>2]&k|0)==0:0;if((a[b+2224>>0]|0)==0){a:do{if(l?(r&1|0)!=0:0){m=c[b+784>>2]|0;l=c[b+1940>>2]|0;n=v;h=c[n>>2]|0;n=c[n+4>>2]|0;b:do{if((m|0)!=6){H=Og(b,6,q,k)|0;if((H&h|0)==0&(I&n|0)==0){k=5}else{h=d;break a}while(1){if((k|0)==(m|0)){break b}H=g;H=Og(b,k,c[H>>2]|0,c[H+4>>2]|0)|0;if((H&h|0)==0&(I&n|0)==0){k=k+-1|0}else{h=d;break a}}}}while(0);h=l|m<<6|49152;if(Rg(b,h,f)|0){c[d>>2]=h;h=d+8|0}else{h=d}}else{h=d}}while(0);k=g;l=c[k>>2]|0;k=c[k+4>>2]|0;H=b+2016|0;if(!((c[H>>2]&l|0)==0?(c[H+4>>2]&k|0)==0:0)){H=h;i=e;return H|0}if((c[(c[j>>2]|0)+24>>2]&2|0)==0){H=h;i=e;return H|0}j=c[b+784>>2]|0;m=c[b+1944>>2]|0;o=v;n=c[o>>2]|0;o=c[o+4>>2]|0;c:do{if((j|0)!=2){H=Og(b,2,l,k)|0;if((H&n|0)==0&(I&o|0)==0){k=3}else{H=h;i=e;return H|0}while(1){if((k|0)==(j|0)){break c}H=g;H=Og(b,k,c[H>>2]|0,c[H+4>>2]|0)|0;if((H&n|0)==0&(I&o|0)==0){k=k+1|0}else{break}}i=e;return h|0}}while(0);g=m|j<<6|49152;if(!(Rg(b,g,f)|0)){H=h;i=e;return H|0}c[h>>2]=g;H=h+8|0;i=e;return H|0}d:do{if(l?(r&1|0)!=0:0){l=c[b+784>>2]|0;r=c[b+1940>>2]|0;s=v;t=c[s>>2]|0;s=c[s+4>>2]|0;u=(l|0)<6?-1:1;if((l|0)!=6){w=6;do{H=Og(b,w,q,k)|0;w=w+u|0;if(!((H&t|0)==0&(I&s|0)==0)){break d}k=g;q=c[k>>2]|0;k=c[k+4>>2]|0}while((w|0)!=(l|0));s=v;t=c[s>>2]|0;s=c[s+4>>2]|0}H=29920+(r<<3)|0;G=26896|0;F=27408|0;F=(ea(c[G+4>>2]&(c[H+4>>2]^k),c[F+4>>2]|0)|0)^(ea(c[G>>2]&(c[H>>2]^q),c[F>>2]|0)|0);F=(c[27896>>2]|0)+(F>>>(c[28152>>2]|0)<<3)|0;H=b+288|0;G=b+296|0;if(((c[F>>2]&t&(c[G>>2]|c[H>>2])|0)==0?(c[F+4>>2]&s&(c[G+4>>2]|c[H+4>>2])|0)==0:0)?(x=r|l<<6|49152,Rg(b,x,f)|0):0){c[d>>2]=x;d=d+8|0}}}while(0);l=g;t=c[l>>2]|0;l=c[l+4>>2]|0;H=b+2016|0;if(!((c[H>>2]&t|0)==0?(c[H+4>>2]&l|0)==0:0)){H=d;i=e;return H|0}if((c[(c[j>>2]|0)+24>>2]&2|0)==0){H=d;i=e;return H|0}k=c[b+784>>2]|0;j=c[b+1944>>2]|0;s=v;r=c[s>>2]|0;s=c[s+4>>2]|0;q=(k|0)<2?-1:1;do{if((k|0)!=2){u=2;while(1){H=Og(b,u,t,l)|0;u=u+q|0;if(!((H&r|0)==0&(I&s|0)==0)){h=d;g=193;break}l=g;t=c[l>>2]|0;l=c[l+4>>2]|0;if((u|0)==(k|0)){g=82;break}}if((g|0)==82){p=v;o=c[p>>2]|0;p=c[p+4>>2]|0;n=t;m=l;break}else if((g|0)==193){i=e;return h|0}}else{o=r;p=s;n=t;m=l}}while(0);H=29920+(j<<3)|0;G=26864|0;F=27376|0;F=(ea(c[G+4>>2]&(c[H+4>>2]^m),c[F+4>>2]|0)|0)^(ea(c[G>>2]&(c[H>>2]^n),c[F>>2]|0)|0);F=(c[27880>>2]|0)+(F>>>(c[28136>>2]|0)<<3)|0;H=b+288|0;G=b+296|0;if(!((c[F>>2]&o&(c[G>>2]|c[H>>2])|0)==0?(c[F+4>>2]&p&(c[G+4>>2]|c[H+4>>2])|0)==0:0)){H=d;i=e;return H|0}g=j|k<<6|49152;if(!(Rg(b,g,f)|0)){H=d;i=e;return H|0}c[d>>2]=g;H=d+8|0;i=e;return H|0}else{F=D&G;D=B&H;n=F&65280;F=F&-65281;v=Kt(F|0,D|0,8)|0;v=v&l;p=I&k;Kt(v|0,p|0,8)|0;x=k&255;m=f+80|0;B=c[m>>2]|0;H=31264+(B<<3)|0;o=c[H+4>>2]|0;v=c[H>>2]&v;p=o&p;H=z;c[H>>2]=v;c[H+4>>2]=p;o=I&x&o;H=A;c[H>>2]=0;c[H+4>>2]=o;H=f;F=c[H>>2]&F;D=c[H+4>>2]&D;if((F|0)==0&(D|0)==0){x=0}else{G=Kt(F|0,D|0,8)|0;H=30432+((B&7)<<3)|0;G=G&l&~c[H>>2];H=I&k&~c[H+4>>2];Kt(G|0,H|0,8)|0;v=G|v;p=H|p;H=z;c[H>>2]=v;c[H+4>>2]=p;o=I&x|o;x=A;c[x>>2]=0;c[x+4>>2]=o;x=0}if(!((v|0)==0&(p|0)==0)){do{G=cd(z)|0;H=d;d=d+8|0;c[H>>2]=(G<<6)+512|G;H=z}while(!((c[H>>2]|0)==0&(c[H+4>>2]|0)==0));o=A;x=c[o>>2]|0;o=c[o+4>>2]|0}if(!((x|0)==0&(o|0)==0)){o=d;while(1){H=cd(A)|0;d=o+8|0;c[o>>2]=(H<<6)+1024|H;H=A;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){break}else{o=d}}}if(!((n|0)==0&0==0)){G=Kt(n|0,0,9)|0;G=G&C;H=I&E;F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){do{o=cd(j)|0;H=31776+(o<<3)|0;G=29920+(c[m>>2]<<3)|0;if(!((c[G>>2]&c[H>>2]|0)==0?(c[G+4>>2]&c[H+4>>2]|0)==0:0)){c[d>>2]=o|(o<<6)+576|16384;d=d+8|0}H=j}while(!((c[H>>2]|0)==0&(c[H+4>>2]|0)==0))}H=Kt(n|0,0,7)|0;H=C&254&H;G=j;c[G>>2]=H;c[G+4>>2]=0;if(!((H|0)==0&0==0)){do{o=cd(j)|0;H=31776+(o<<3)|0;G=29920+(c[m>>2]<<3)|0;if(!((c[G>>2]&c[H>>2]|0)==0?(c[G+4>>2]&c[H+4>>2]|0)==0:0)){c[d>>2]=o|(o<<6)+448|16384;d=d+8|0}H=j}while(!((c[H>>2]|0)==0&(c[H+4>>2]|0)==0))}G=Kt(n|0,0,8)|0;G=G&l;H=I&k;F=y;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){do{n=cd(y)|0;H=31776+(n<<3)|0;G=29920+(c[m>>2]<<3)|0;if(!((c[G>>2]&c[H>>2]|0)==0?(c[G+4>>2]&c[H+4>>2]|0)==0:0)){c[d>>2]=n|(n<<6)+512|16384;d=d+8|0}H=y}while(!((c[H>>2]|0)==0&(c[H+4>>2]|0)==0))}}n=b+1040|0;o=c[n>>2]|0;if((o|0)!=64){m=f+32|0;do{p=f;v=c[p>>2]|0;p=c[p+4>>2]|0;if(!(!((v|0)==0&(p|0)==0)?(H=29920+(o<<3)|0,!((c[H>>2]&v|0)==0?(c[H+4>>2]&p|0)==0:0)):0)){F=31776+(o<<3)|0;H=m;G=c[F>>2]&l&c[H>>2];H=c[F+4>>2]&k&c[H+4>>2];F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){o=o<<6;while(1){p=d+8|0;c[d>>2]=cd(j)|0|o;H=j;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){d=p;break}else{d=p}}}}n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}n=b+1104|0;o=c[n>>2]|0;if((o|0)!=64){m=f+40|0;do{H=113184+(o<<3)|0;y=m;p=c[y>>2]|0;y=c[y+4>>2]|0;do{if(!((c[H>>2]&l&p|0)==0?(c[H+4>>2]&k&y|0)==0:0)){v=f;x=c[v>>2]|0;v=c[v+4>>2]|0;if(!((x|0)==0&(v|0)==0)?(H=29920+(o<<3)|0,!((c[H>>2]&x|0)==0?(c[H+4>>2]&v|0)==0:0)):0){break}G=g;F=28384+(o<<3)|0;H=28896+(o<<3)|0;H=(ea(c[F+4>>2]&c[G+4>>2],c[H+4>>2]|0)|0)^(ea(c[F>>2]&c[G>>2],c[H>>2]|0)|0);H=(c[29408+(o<<2)>>2]|0)+(H>>>(c[29664+(o<<2)>>2]|0)<<3)|0;G=p&l&c[H>>2];H=y&k&c[H+4>>2];F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){o=o<<6;while(1){p=d+8|0;c[d>>2]=cd(j)|0|o;H=j;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){d=p;break}else{d=p}}}}}while(0);n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}n=b+1168|0;o=c[n>>2]|0;if((o|0)!=64){m=f+48|0;do{H=113696+(o<<3)|0;p=m;v=c[p>>2]|0;p=c[p+4>>2]|0;do{if(!((c[H>>2]&l&v|0)==0?(c[H+4>>2]&k&p|0)==0:0)){y=f;x=c[y>>2]|0;y=c[y+4>>2]|0;if(!((x|0)==0&(y|0)==0)?(H=29920+(o<<3)|0,!((c[H>>2]&x|0)==0?(c[H+4>>2]&y|0)==0:0)):0){break}G=g;F=26848+(o<<3)|0;H=27360+(o<<3)|0;H=(ea(c[F+4>>2]&c[G+4>>2],c[H+4>>2]|0)|0)^(ea(c[F>>2]&c[G>>2],c[H>>2]|0)|0);H=(c[27872+(o<<2)>>2]|0)+(H>>>(c[28128+(o<<2)>>2]|0)<<3)|0;G=v&l&c[H>>2];H=p&k&c[H+4>>2];F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){o=o<<6;while(1){p=d+8|0;c[d>>2]=cd(j)|0|o;H=j;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){d=p;break}else{d=p}}}}}while(0);n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}n=b+1232|0;o=c[n>>2]|0;if((o|0)!=64){m=f+56|0;do{H=114208+(o<<3)|0;x=m;y=c[x>>2]|0;x=c[x+4>>2]|0;do{if(!((c[H>>2]&l&y|0)==0?(c[H+4>>2]&k&x|0)==0:0)){v=f;p=c[v>>2]|0;v=c[v+4>>2]|0;if(!((p|0)==0&(v|0)==0)?(H=29920+(o<<3)|0,!((c[H>>2]&p|0)==0?(c[H+4>>2]&v|0)==0:0)):0){break}D=g;G=c[D>>2]|0;D=c[D+4>>2]|0;E=26848+(o<<3)|0;H=27360+(o<<3)|0;H=(ea(c[E+4>>2]&D,c[H+4>>2]|0)|0)^(ea(c[E>>2]&G,c[H>>2]|0)|0);H=(c[27872+(o<<2)>>2]|0)+(H>>>(c[28128+(o<<2)>>2]|0)<<3)|0;E=28384+(o<<3)|0;F=28896+(o<<3)|0;F=(ea(c[E+4>>2]&D,c[F+4>>2]|0)|0)^(ea(c[E>>2]&G,c[F>>2]|0)|0);F=(c[29408+(o<<2)>>2]|0)+(F>>>(c[29664+(o<<2)>>2]|0)<<3)|0;G=y&l&(c[F>>2]|c[H>>2]);H=x&k&(c[F+4>>2]|c[H+4>>2]);F=j;c[F>>2]=G;c[F+4>>2]=H;if(!((G|0)==0&(H|0)==0)){o=o<<6;while(1){p=d+8|0;c[d>>2]=cd(j)|0|o;H=j;if((c[H>>2]|0)==0&(c[H+4>>2]|0)==0){d=p;break}else{d=p}}}}}while(0);n=n+4|0;o=c[n>>2]|0}while((o|0)!=64)}j=b+2220|0;m=c[(c[j>>2]|0)+24>>2]|0;if((m&12|0)==0){H=d;i=e;return H|0}k=g;n=c[k>>2]|0;k=c[k+4>>2]|0;l=b+2032|0;l=(c[l>>2]&n|0)==0?(c[l+4>>2]&k|0)==0:0;if((a[b+2224>>0]|0)==0){e:do{if(l?(m&4|0)!=0:0){l=c[b+1296>>2]|0;h=c[b+1952>>2]|0;o=u;m=c[o>>2]|0;o=c[o+4>>2]|0;f:do{if((l|0)!=62){H=Og(b,62,n,k)|0;if((H&m|0)==0&(I&o|0)==0){k=61}else{h=d;break e}while(1){if((k|0)==(l|0)){break f}H=g;H=Og(b,k,c[H>>2]|0,c[H+4>>2]|0)|0;if((H&m|0)==0&(I&o|0)==0){k=k+-1|0}else{h=d;break e}}}}while(0);h=h|l<<6|49152;if(Rg(b,h,f)|0){c[d>>2]=h;h=d+8|0}else{h=d}}else{h=d}}while(0);l=g;m=c[l>>2]|0;l=c[l+4>>2]|0;H=b+2064|0;if(!((c[H>>2]&m|0)==0?(c[H+4>>2]&l|0)==0:0)){H=h;i=e;return H|0}if((c[(c[j>>2]|0)+24>>2]&8|0)==0){H=h;i=e;return H|0}j=c[b+1296>>2]|0;k=c[b+1968>>2]|0;n=u;o=c[n>>2]|0;n=c[n+4>>2]|0;g:do{if((j|0)!=58){H=Og(b,58,m,l)|0;if((H&o|0)==0&(I&n|0)==0){l=59}else{H=h;i=e;return H|0}while(1){if((l|0)==(j|0)){break g}H=g;H=Og(b,l,c[H>>2]|0,c[H+4>>2]|0)|0;if((H&o|0)==0&(I&n|0)==0){l=l+1|0}else{break}}i=e;return h|0}}while(0);g=k|j<<6|49152;if(!(Rg(b,g,f)|0)){H=h;i=e;return H|0}c[h>>2]=g;H=h+8|0;i=e;return H|0}h:do{if(l?(m&4|0)!=0:0){l=c[b+1296>>2]|0;m=c[b+1952>>2]|0;o=u;p=c[o>>2]|0;o=c[o+4>>2]|0;x=(l|0)<62?-1:1;if((l|0)!=62){v=62;do{H=Og(b,v,n,k)|0;v=v+x|0;if(!((H&p|0)==0&(I&o|0)==0)){break h}k=g;n=c[k>>2]|0;k=c[k+4>>2]|0}while((v|0)!=(l|0));o=u;p=c[o>>2]|0;o=c[o+4>>2]|0}H=29920+(m<<3)|0;G=27344|0;F=27856|0;F=(ea(c[G+4>>2]&(c[H+4>>2]^k),c[F+4>>2]|0)|0)^(ea(c[G>>2]&(c[H>>2]^n),c[F>>2]|0)|0);F=(c[28120>>2]|0)+(F>>>(c[28376>>2]|0)<<3)|0;H=b+288|0;G=b+296|0;if(((c[F>>2]&p&(c[G>>2]|c[H>>2])|0)==0?(c[F+4>>2]&o&(c[G+4>>2]|c[H+4>>2])|0)==0:0)?(w=m|l<<6|49152,Rg(b,w,f)|0):0){c[d>>2]=w;d=d+8|0}}}while(0);n=g;m=c[n>>2]|0;n=c[n+4>>2]|0;H=b+2064|0;if(!((c[H>>2]&m|0)==0?(c[H+4>>2]&n|0)==0:0)){H=d;i=e;return H|0}if((c[(c[j>>2]|0)+24>>2]&8|0)==0){H=d;i=e;return H|0}k=c[b+1296>>2]|0;j=c[b+1968>>2]|0;v=u;l=c[v>>2]|0;v=c[v+4>>2]|0;p=(k|0)<58?-1:1;do{if((k|0)!=58){o=58;while(1){H=Og(b,o,m,n)|0;o=o+p|0;if(!((H&l|0)==0&(I&v|0)==0)){h=d;g=193;break}n=g;m=c[n>>2]|0;n=c[n+4>>2]|0;if((o|0)==(k|0)){g=173;break}}if((g|0)==173){q=u;s=m;r=n;t=c[q>>2]|0;q=c[q+4>>2]|0;break}else if((g|0)==193){i=e;return h|0}}else{s=m;r=n;t=l;q=v}}while(0);H=29920+(j<<3)|0;G=27312|0;F=27824|0;F=(ea(c[G+4>>2]&(c[H+4>>2]^r),c[F+4>>2]|0)|0)^(ea(c[G>>2]&(c[H>>2]^s),c[F>>2]|0)|0);F=(c[28104>>2]|0)+(F>>>(c[28360>>2]|0)<<3)|0;H=b+288|0;G=b+296|0;if(!((c[F>>2]&t&(c[G>>2]|c[H>>2])|0)==0?(c[F+4>>2]&q&(c[G+4>>2]|c[H+4>>2])|0)==0:0)){H=d;i=e;return H|0}g=j|k<<6|49152;if(!(Rg(b,g,f)|0)){H=d;i=e;return H|0}c[d>>2]=g;H=d+8|0;i=e;return H|0}return 0}function bg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,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=i;i=i+48|0;e=d+40|0;k=d+32|0;h=d+24|0;m=d+16|0;q=d+8|0;g=d;n=c[a+2212>>2]|0;f=c[a+(n<<9)+784>>2]|0;j=a+2220|0;t=(c[j>>2]|0)+56|0;w=a+272|0;l=a+264|0;u=l;v=c[t>>2]&~(c[u>>2]|c[w>>2]);w=c[t+4>>2]&~(c[u+4>>2]|c[w+4>>2]);u=q;c[u>>2]=v;c[u+4>>2]=w;if((v|0)==0&(w|0)==0){p=-1;o=-1}else{p=0;o=0;do{v=cd(q)|0;w=71712+(v<<9)+(f<<3)|0;v=29920+(v<<3)|0;p=c[v>>2]^c[w>>2]|p;o=c[v+4>>2]^c[w+4>>2]|o;w=q}while(!((c[w>>2]|0)==0&(c[w+4>>2]|0)==0));p=~p;o=~o}u=33824+(f<<3)|0;w=a+(n<<3)+320|0;v=c[u>>2]&p&~c[w>>2];w=c[u+4>>2]&o&~c[w+4>>2];u=g;c[u>>2]=v;c[u+4>>2]=w;if(!((v|0)==0&(w|0)==0)){o=f<<6;while(1){p=b+8|0;c[b>>2]=cd(g)|0|o;w=g;if((c[w>>2]|0)==0&(c[w+4>>2]|0)==0){b=p;break}else{b=p}}}o=(c[j>>2]|0)+56|0;g=c[o>>2]|0;o=c[o+4>>2]|0;w=Jt(g|0,o|0,-1,-1)|0;if(!((w&g|0)==0&(I&o|0)==0)){w=b;i=d;return w|0}w=bd(g,o)|0;g=38944+(w<<9)+(f<<3)|0;w=29920+(w<<3)|0;f=c[w>>2]|c[g>>2];g=c[w+4>>2]|c[g+4>>2];if((n|0)==0){q=a+320|0;s=l;n=c[s>>2]&c[q>>2];q=c[s+4>>2]&c[q+4>>2];s=q&16711680;o=q&-16711681;p=a+328|0;r=c[p>>2]&f;p=c[p+4>>2]&g;l=a+256|0;t=l;u=~c[t>>2];t=~c[t+4>>2];x=Mt(n|0,o|0,8)|0;x=x&u;w=I&t;v=Mt(x|0,w|0,8)|0;x=x&f;w=w&g;y=h;c[y>>2]=x;c[y+4>>2]=w;v=f&-16777216&u&v;y=m;c[y>>2]=v;c[y+4>>2]=0;if((x|0)==0&(w|0)==0){w=0}else{do{x=cd(h)|0;y=b;b=b+8|0;c[y>>2]=(x<<6)+-512|x;y=h}while(!((c[y>>2]|0)==0&(c[y+4>>2]|0)==0));w=m;v=c[w>>2]|0;w=c[w+4>>2]|0}if(!((v|0)==0&(w|0)==0)){v=b;while(1){y=cd(m)|0;b=v+8|0;c[v>>2]=(y<<6)+-1024|y;y=m;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){break}else{v=b}}}if((0!=0|(s|0)!=0)&(g>>>0>16777215|(g|0)==16777215&f>>>0>4294967295)){u=f&u;t=g&t;x=Mt(0,s|0,9)|0;x=x&r;y=I&p;w=e;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){v=b;while(1){y=cd(e)|0;y=(y<<6)+-576|y;c[v>>2]=y|28672;c[v+8>>2]=y|24576;c[v+16>>2]=y|20480;b=v+32|0;c[v+24>>2]=y|16384;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){break}else{v=b}}}Mt(0,s|0,7)|0;y=p&2130706432&I;x=e;c[x>>2]=0;c[x+4>>2]=y;if(!(0==0&(y|0)==0)){while(1){y=cd(e)|0;y=(y<<6)+-448|y;c[b>>2]=y|28672;c[b+8>>2]=y|24576;c[b+16>>2]=y|20480;v=b+32|0;c[b+24>>2]=y|16384;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=v;break}else{b=v}}}x=Mt(0,s|0,8)|0;x=u&x;y=t&I;w=k;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){while(1){y=cd(k)|0;y=(y<<6)+-512|y;c[b>>2]=y|28672;c[b+8>>2]=y|24576;c[b+16>>2]=y|20480;s=b+32|0;c[b+24>>2]=y|16384;y=k;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=s;break}else{b=s}}}}x=Mt(n|0,q|0,9)|0;x=x&-16843264&r;y=I&16711422&p;k=h;c[k>>2]=x;c[k+4>>2]=y;q=Mt(n|0,q|0,7)|0;q=q&2139062016&r;k=I&8355711&p;w=m;c[w>>2]=q;c[w+4>>2]=k;if(!((x|0)==0&(y|0)==0)){do{x=cd(h)|0;y=b;b=b+8|0;c[y>>2]=(x<<6)+-576|x;y=h}while(!((c[y>>2]|0)==0&(c[y+4>>2]|0)==0));k=m;q=c[k>>2]|0;k=c[k+4>>2]|0}if(!((q|0)==0&(k|0)==0)){k=b;while(1){y=cd(m)|0;b=k+8|0;c[k>>2]=(y<<6)+-448|y;y=m;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){break}else{k=b}}}k=c[(c[j>>2]|0)+40>>2]|0;if(((k|0)!=64?(y=29920+(k+-8<<3)|0,!((c[y>>2]&f|0)==0?(c[y+4>>2]&g|0)==0:0)):0)?(y=35360+(k<<3)|0,x=c[y>>2]&n,y=c[y+4>>2]&o,w=h,c[w>>2]=x,c[w+4>>2]=y,!((x|0)==0&(y|0)==0)):0){while(1){y=cd(h)|0;k=b+8|0;c[b>>2]=y<<6|c[(c[j>>2]|0)+40>>2]|32768;y=h;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=k;break}else{b=k}}}h=a+528|0;j=c[h>>2]|0;if((j|0)!=64){do{y=31776+(j<<3)|0;x=c[y>>2]&f;y=c[y+4>>2]&g;w=e;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){j=j<<6;while(1){k=b+8|0;c[b>>2]=cd(e)|0|j;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=k;break}else{b=k}}}h=h+4|0;j=c[h>>2]|0}while((j|0)!=64)}h=a+592|0;j=c[h>>2]|0;if((j|0)!=64){do{x=l;w=28384+(j<<3)|0;y=28896+(j<<3)|0;y=(ea(c[w+4>>2]&c[x+4>>2],c[y+4>>2]|0)|0)^(ea(c[w>>2]&c[x>>2],c[y>>2]|0)|0);y=(c[29408+(j<<2)>>2]|0)+(y>>>(c[29664+(j<<2)>>2]|0)<<3)|0;x=c[y>>2]&f;y=c[y+4>>2]&g;w=e;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){j=j<<6;while(1){k=b+8|0;c[b>>2]=cd(e)|0|j;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=k;break}else{b=k}}}h=h+4|0;j=c[h>>2]|0}while((j|0)!=64)}h=a+656|0;j=c[h>>2]|0;if((j|0)!=64){do{x=l;w=26848+(j<<3)|0;y=27360+(j<<3)|0;y=(ea(c[w+4>>2]&c[x+4>>2],c[y+4>>2]|0)|0)^(ea(c[w>>2]&c[x>>2],c[y>>2]|0)|0);y=(c[27872+(j<<2)>>2]|0)+(y>>>(c[28128+(j<<2)>>2]|0)<<3)|0;x=c[y>>2]&f;y=c[y+4>>2]&g;w=e;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){j=j<<6;while(1){k=b+8|0;c[b>>2]=cd(e)|0|j;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=k;break}else{b=k}}}h=h+4|0;j=c[h>>2]|0}while((j|0)!=64)}a=a+720|0;h=c[a>>2]|0;if((h|0)==64){y=b;i=d;return y|0}do{u=l;x=c[u>>2]|0;u=c[u+4>>2]|0;v=26848+(h<<3)|0;y=27360+(h<<3)|0;y=(ea(c[v+4>>2]&u,c[y+4>>2]|0)|0)^(ea(c[v>>2]&x,c[y>>2]|0)|0);y=(c[27872+(h<<2)>>2]|0)+(y>>>(c[28128+(h<<2)>>2]|0)<<3)|0;v=28384+(h<<3)|0;w=28896+(h<<3)|0;w=(ea(c[v+4>>2]&u,c[w+4>>2]|0)|0)^(ea(c[v>>2]&x,c[w>>2]|0)|0);w=(c[29408+(h<<2)>>2]|0)+(w>>>(c[29664+(h<<2)>>2]|0)<<3)|0;x=(c[w>>2]|c[y>>2])&f;y=(c[w+4>>2]|c[y+4>>2])&g;w=e;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){h=h<<6;j=b;while(1){b=j+8|0;c[j>>2]=cd(e)|0|h;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){break}else{j=b}}}a=a+4|0;h=c[a>>2]|0}while((h|0)!=64);i=d;return b|0}n=a+328|0;s=l;r=c[s>>2]&c[n>>2];n=c[s+4>>2]&c[n+4>>2];s=r&65280;o=r&-65281;p=a+320|0;q=c[p>>2]&f;p=c[p+4>>2]&g;l=a+256|0;t=l;u=~c[t>>2];t=~c[t+4>>2];x=Kt(o|0,n|0,8)|0;x=x&u;y=I&t;Kt(x|0,y|0,8)|0;x=x&f;y=y&g;w=k;c[w>>2]=x;c[w+4>>2]=y;w=g&255&t&I;v=h;c[v>>2]=0;c[v+4>>2]=w;if((x|0)==0&(y|0)==0){v=0}else{do{x=cd(k)|0;y=b;b=b+8|0;c[y>>2]=(x<<6)+512|x;y=k}while(!((c[y>>2]|0)==0&(c[y+4>>2]|0)==0));w=h;v=c[w>>2]|0;w=c[w+4>>2]|0}if(!((v|0)==0&(w|0)==0)){while(1){y=cd(h)|0;v=b+8|0;c[b>>2]=(y<<6)+1024|y;y=h;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=v;break}else{b=v}}}if(!((s|0)==0&0==0)?!((f&255|0)==0&0==0):0){u=f&u;t=g&t;x=Kt(s|0,0,9)|0;x=x&q;y=I&p;w=e;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){v=b;while(1){y=cd(e)|0;y=(y<<6)+576|y;c[v>>2]=y|28672;c[v+8>>2]=y|24576;c[v+16>>2]=y|20480;b=v+32|0;c[v+24>>2]=y|16384;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){break}else{v=b}}}y=Kt(s|0,0,7)|0;y=q&254&y;x=e;c[x>>2]=y;c[x+4>>2]=0;if(!((y|0)==0&0==0)){v=b;while(1){y=cd(e)|0;y=(y<<6)+448|y;c[v>>2]=y|28672;c[v+8>>2]=y|24576;c[v+16>>2]=y|20480;b=v+32|0;c[v+24>>2]=y|16384;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){break}else{v=b}}}x=Kt(s|0,0,8)|0;x=u&x;y=t&I;w=m;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){while(1){y=cd(m)|0;y=(y<<6)+512|y;c[b>>2]=y|28672;c[b+8>>2]=y|24576;c[b+16>>2]=y|20480;s=b+32|0;c[b+24>>2]=y|16384;y=m;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=s;break}else{b=s}}}}x=Kt(r|0,n|0,9)|0;x=x&2139062016&q;y=I&8355711&p;m=k;c[m>>2]=x;c[m+4>>2]=y;m=Kt(r|0,n|0,7)|0;m=m&-16843264&q;p=I&16711422&p;w=h;c[w>>2]=m;c[w+4>>2]=p;if(!((x|0)==0&(y|0)==0)){do{x=cd(k)|0;y=b;b=b+8|0;c[y>>2]=(x<<6)+576|x;y=k}while(!((c[y>>2]|0)==0&(c[y+4>>2]|0)==0));p=h;m=c[p>>2]|0;p=c[p+4>>2]|0}if(!((m|0)==0&(p|0)==0)){while(1){y=cd(h)|0;m=b+8|0;c[b>>2]=(y<<6)+448|y;y=h;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=m;break}else{b=m}}}m=c[(c[j>>2]|0)+40>>2]|0;if(((m|0)!=64?(y=29920+(m+8<<3)|0,!((c[y>>2]&f|0)==0?(c[y+4>>2]&g|0)==0:0)):0)?(y=31264+(m<<3)|0,x=c[y>>2]&o,y=c[y+4>>2]&n,w=k,c[w>>2]=x,c[w+4>>2]=y,!((x|0)==0&(y|0)==0)):0){while(1){y=cd(k)|0;m=b+8|0;c[b>>2]=y<<6|c[(c[j>>2]|0)+40>>2]|32768;y=k;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=m;break}else{b=m}}}j=a+1040|0;k=c[j>>2]|0;if((k|0)!=64){do{y=31776+(k<<3)|0;x=c[y>>2]&f;y=c[y+4>>2]&g;w=e;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){k=k<<6;m=b;while(1){b=m+8|0;c[m>>2]=cd(e)|0|k;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){break}else{m=b}}}j=j+4|0;k=c[j>>2]|0}while((k|0)!=64)}j=a+1104|0;k=c[j>>2]|0;if((k|0)!=64){do{x=l;w=28384+(k<<3)|0;y=28896+(k<<3)|0;y=(ea(c[w+4>>2]&c[x+4>>2],c[y+4>>2]|0)|0)^(ea(c[w>>2]&c[x>>2],c[y>>2]|0)|0);y=(c[29408+(k<<2)>>2]|0)+(y>>>(c[29664+(k<<2)>>2]|0)<<3)|0;x=c[y>>2]&f;y=c[y+4>>2]&g;w=e;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){k=k<<6;m=b;while(1){b=m+8|0;c[m>>2]=cd(e)|0|k;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){break}else{m=b}}}j=j+4|0;k=c[j>>2]|0}while((k|0)!=64)}j=a+1168|0;k=c[j>>2]|0;if((k|0)!=64){do{x=l;w=26848+(k<<3)|0;y=27360+(k<<3)|0;y=(ea(c[w+4>>2]&c[x+4>>2],c[y+4>>2]|0)|0)^(ea(c[w>>2]&c[x>>2],c[y>>2]|0)|0);y=(c[27872+(k<<2)>>2]|0)+(y>>>(c[28128+(k<<2)>>2]|0)<<3)|0;x=c[y>>2]&f;y=c[y+4>>2]&g;w=e;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){k=k<<6;m=b;while(1){b=m+8|0;c[m>>2]=cd(e)|0|k;y=e;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){break}else{m=b}}}j=j+4|0;k=c[j>>2]|0}while((k|0)!=64)}e=a+1232|0;a=c[e>>2]|0;if((a|0)==64){y=b;i=d;return y|0}do{u=l;x=c[u>>2]|0;u=c[u+4>>2]|0;v=26848+(a<<3)|0;y=27360+(a<<3)|0;y=(ea(c[v+4>>2]&u,c[y+4>>2]|0)|0)^(ea(c[v>>2]&x,c[y>>2]|0)|0);y=(c[27872+(a<<2)>>2]|0)+(y>>>(c[28128+(a<<2)>>2]|0)<<3)|0;v=28384+(a<<3)|0;w=28896+(a<<3)|0;w=(ea(c[v+4>>2]&u,c[w+4>>2]|0)|0)^(ea(c[v>>2]&x,c[w>>2]|0)|0);w=(c[29408+(a<<2)>>2]|0)+(w>>>(c[29664+(a<<2)>>2]|0)<<3)|0;x=(c[w>>2]|c[y>>2])&f;y=(c[w+4>>2]|c[y+4>>2])&g;w=h;c[w>>2]=x;c[w+4>>2]=y;if(!((x|0)==0&(y|0)==0)){a=a<<6;while(1){j=b+8|0;c[b>>2]=cd(h)|0|a;y=h;if((c[y>>2]|0)==0&(c[y+4>>2]|0)==0){b=j;break}else{b=j}}}e=e+4|0;a=c[e>>2]|0}while((a|0)!=64);i=d;return b|0}function cg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;f=i;d=a+2212|0;h=c[d>>2]|0;h=Ng(a,h,h)|0;j=I;d=c[a+(c[d>>2]<<9)+784>>2]|0;k=(c[a+2220>>2]|0)+56|0;if((c[k>>2]|0)==0&(c[k+4>>2]|0)==0){k=$f(a,b)|0}else{k=bg(a,b)|0}if((k|0)==(b|0)){k=b;i=f;return k|0}if(!((h|0)==0&(j|0)==0)){a:while(1){while(1){if(Pg(a,c[b>>2]|0,h,j)|0){break}k=k+-8|0;c[b>>2]=c[k>>2];if((b|0)==(k|0)){h=15;break a}}b=b+8|0;if((b|0)==(k|0)){b=k;h=15;break}}if((h|0)==15){i=f;return b|0}}else{e=b;g=k}b:while(1){while(1){h=c[e>>2]|0;if(!((h>>>6&63|0)==(d|0)|(h&49152|0)==32768)){break}if(Pg(a,h,0,0)|0){break}g=g+-8|0;c[e>>2]=c[g>>2];if((e|0)==(g|0)){b=e;h=15;break b}}e=e+8|0;if((e|0)==(g|0)){b=g;h=15;break}}if((h|0)==15){i=f;return b|0}return 0}function dg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;m=a+256|0;g=m;h=c[g>>2]|0;g=c[g+4>>2]|0;o=a+2032|0;if(!((c[o>>2]&h|0)==0?(c[o+4>>2]&g|0)==0:0)){o=b;i=d;return o|0}if((c[(c[a+2220>>2]|0)+24>>2]&4|0)==0){o=b;i=d;return o|0}f=c[a+1296>>2]|0;e=c[a+1952>>2]|0;j=a+320|0;k=j;l=c[k>>2]|0;k=c[k+4>>2]|0;n=(f|0)<62?-1:1;do{if((f|0)!=62){o=62;while(1){h=Og(a,o,h,g)|0;o=o+n|0;if(!((h&l|0)==0&(I&k|0)==0)){m=9;break}g=m;h=c[g>>2]|0;g=c[g+4>>2]|0;if((o|0)==(f|0)){m=6;break}}if((m|0)==6){k=j;l=c[k>>2]|0;k=c[k+4>>2]|0;break}else if((m|0)==9){i=d;return b|0}}}while(0);o=29920+(e<<3)|0;n=27344|0;m=27856|0;m=(ea(c[n+4>>2]&(c[o+4>>2]^g),c[m+4>>2]|0)|0)^(ea(c[n>>2]&(c[o>>2]^h),c[m>>2]|0)|0);m=(c[28120>>2]|0)+(m>>>(c[28376>>2]|0)<<3)|0;o=a+288|0;n=a+296|0;if(!((l&c[m>>2]&(c[n>>2]|c[o>>2])|0)==0?(k&c[m+4>>2]&(c[n+4>>2]|c[o+4>>2])|0)==0:0)){o=b;i=d;return o|0}c[b>>2]=e|f<<6|49152;o=b+8|0;i=d;return o|0}function eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;m=a+256|0;g=m;h=c[g>>2]|0;g=c[g+4>>2]|0;o=a+2064|0;if(!((c[o>>2]&h|0)==0?(c[o+4>>2]&g|0)==0:0)){o=b;i=d;return o|0}if((c[(c[a+2220>>2]|0)+24>>2]&8|0)==0){o=b;i=d;return o|0}f=c[a+1296>>2]|0;e=c[a+1968>>2]|0;j=a+320|0;k=j;l=c[k>>2]|0;k=c[k+4>>2]|0;n=(f|0)<58?-1:1;do{if((f|0)!=58){o=58;while(1){h=Og(a,o,h,g)|0;o=o+n|0;if(!((h&l|0)==0&(I&k|0)==0)){m=9;break}g=m;h=c[g>>2]|0;g=c[g+4>>2]|0;if((o|0)==(f|0)){m=6;break}}if((m|0)==6){k=j;l=c[k>>2]|0;k=c[k+4>>2]|0;break}else if((m|0)==9){i=d;return b|0}}}while(0);o=29920+(e<<3)|0;n=27312|0;m=27824|0;m=(ea(c[n+4>>2]&(c[o+4>>2]^g),c[m+4>>2]|0)|0)^(ea(c[n>>2]&(c[o>>2]^h),c[m>>2]|0)|0);m=(c[28104>>2]|0)+(m>>>(c[28360>>2]|0)<<3)|0;o=a+288|0;n=a+296|0;if(!((l&c[m>>2]&(c[n>>2]|c[o>>2])|0)==0?(k&c[m+4>>2]&(c[n+4>>2]|c[o+4>>2])|0)==0:0)){o=b;i=d;return o|0}c[b>>2]=e|f<<6|49152;o=b+8|0;i=d;return o|0}function fg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;m=a+256|0;g=m;h=c[g>>2]|0;g=c[g+4>>2]|0;o=a+2008|0;if(!((c[o>>2]&h|0)==0?(c[o+4>>2]&g|0)==0:0)){o=b;i=d;return o|0}if((c[(c[a+2220>>2]|0)+24>>2]&1|0)==0){o=b;i=d;return o|0}f=c[a+784>>2]|0;e=c[a+1940>>2]|0;j=a+328|0;k=j;l=c[k>>2]|0;k=c[k+4>>2]|0;n=(f|0)<6?-1:1;do{if((f|0)!=6){o=6;while(1){h=Og(a,o,h,g)|0;o=o+n|0;if(!((h&l|0)==0&(I&k|0)==0)){m=9;break}g=m;h=c[g>>2]|0;g=c[g+4>>2]|0;if((o|0)==(f|0)){m=6;break}}if((m|0)==6){k=j;l=c[k>>2]|0;k=c[k+4>>2]|0;break}else if((m|0)==9){i=d;return b|0}}}while(0);o=29920+(e<<3)|0;n=26896|0;m=27408|0;m=(ea(c[n+4>>2]&(c[o+4>>2]^g),c[m+4>>2]|0)|0)^(ea(c[n>>2]&(c[o>>2]^h),c[m>>2]|0)|0);m=(c[27896>>2]|0)+(m>>>(c[28152>>2]|0)<<3)|0;o=a+288|0;n=a+296|0;if(!((l&c[m>>2]&(c[n>>2]|c[o>>2])|0)==0?(k&c[m+4>>2]&(c[n+4>>2]|c[o+4>>2])|0)==0:0)){o=b;i=d;return o|0}c[b>>2]=e|f<<6|49152;o=b+8|0;i=d;return o|0}function gg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;d=i;m=a+256|0;g=m;h=c[g>>2]|0;g=c[g+4>>2]|0;o=a+2016|0;if(!((c[o>>2]&h|0)==0?(c[o+4>>2]&g|0)==0:0)){o=b;i=d;return o|0}if((c[(c[a+2220>>2]|0)+24>>2]&2|0)==0){o=b;i=d;return o|0}f=c[a+784>>2]|0;e=c[a+1944>>2]|0;j=a+328|0;k=j;l=c[k>>2]|0;k=c[k+4>>2]|0;n=(f|0)<2?-1:1;do{if((f|0)!=2){o=2;while(1){h=Og(a,o,h,g)|0;o=o+n|0;if(!((h&l|0)==0&(I&k|0)==0)){m=9;break}g=m;h=c[g>>2]|0;g=c[g+4>>2]|0;if((o|0)==(f|0)){m=6;break}}if((m|0)==6){k=j;l=c[k>>2]|0;k=c[k+4>>2]|0;break}else if((m|0)==9){i=d;return b|0}}}while(0);o=29920+(e<<3)|0;n=26864|0;m=27376|0;m=(ea(c[n+4>>2]&(c[o+4>>2]^g),c[m+4>>2]|0)|0)^(ea(c[n>>2]&(c[o>>2]^h),c[m>>2]|0)|0);m=(c[27880>>2]|0)+(m>>>(c[28136>>2]|0)<<3)|0;o=a+288|0;n=a+296|0;if(!((l&c[m>>2]&(c[n>>2]|c[o>>2])|0)==0?(k&c[m+4>>2]&(c[n+4>>2]|c[o+4>>2])|0)==0:0)){o=b;i=d;return o|0}c[b>>2]=e|f<<6|49152;o=b+8|0;i=d;return o|0}function hg(a,b,d,e,f,g,h,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0;k=i;c[a>>2]=b;c[a+4>>2]=f;c[a+20>>2]=e;e=a+104|0;f=a+92|0;c[f>>2]=e;c[a+88>>2]=e;c[a+100>>2]=a+2144;c[a+12>>2]=g;c[a+16>>2]=h;c[a+8>>2]=j;j=(c[b+2220>>2]|0)+56|0;c[a+84>>2]=(c[j>>2]|0)==0&(c[j+4>>2]|0)==0?0:6;if((d|0)==0){b=0;j=e;e=a+24|0;c[e>>2]=b;e=(b|0)!=0;e=e&1;e=j+(e<<3)|0;c[f>>2]=e;i=k;return}e=Qg(b,d)|0;e=e?d:0;j=c[f>>2]|0;b=a+24|0;c[b>>2]=e;e=(e|0)!=0;e=e&1;e=j+(e<<3)|0;c[f>>2]=e;i=k;return}function ig(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0;h=i;c[a>>2]=b;c[a+4>>2]=f;j=a+104|0;c[a+88>>2]=j;f=a+92|0;c[f>>2]=j;l=(c[b+2220>>2]|0)+56|0;do{if((c[l>>2]|0)==0&(c[l+4>>2]|0)==0){if((e|0)>-2){c[a+84>>2]=8;k=12;break}l=a+84|0;if(!((e|0)>-10)){c[l>>2]=15;c[a+76>>2]=g;b=0;break}c[l>>2]=11;if((d|0)==0){b=0}else{k=d&49152;if((k|0)==0){k=(c[b+((d&63)<<2)>>2]|0)!=0}else{k=(k|0)!=49152}d=k?d:0;k=12}}else{c[a+84>>2]=6;k=12}}while(0);if((k|0)==12){if((d|0)==0){b=0}else{b=Qg(b,d)|0;b=b?d:0;j=c[f>>2]|0}}c[a+24>>2]=b;c[f>>2]=j+(((b|0)!=0&1)<<3);i=h;return}function jg(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;g=i;c[a>>2]=b;c[a+4>>2]=e;j=a+104|0;c[a+88>>2]=j;e=a+92|0;c[e>>2]=j;c[a+84>>2]=13;j=a+80|0;c[j>>2]=c[1009384+(f<<2)>>2];do{if((d|0)!=0){b=Qg(b,d)|0;b=b?d:0;d=a+24|0;c[d>>2]=b;if((b|0)==0){h=0}else{a=c[a>>2]|0;f=b&49152;if((c[a+((b&63)<<2)>>2]|0)==0){if((f|0)==32768){h=7}}else{if((f|0)!=49152){h=7}}if((h|0)==7?(f=_g(a,b)|0,(f|0)>(c[j>>2]|0)):0){h=(c[d>>2]|0)!=0;break}c[d>>2]=0;h=0}}else{c[a+24>>2]=0;h=0}}while(0);c[e>>2]=(c[e>>2]|0)+((h&1)<<3);i=g;return}function kg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;b=i;f=a+104|0;d=a+88|0;c[d>>2]=f;e=a+84|0;l=c[e>>2]|0;c[e>>2]=l+1;switch(l|0){case 15:case 13:case 11:case 8:case 0:{d=Zf(c[a>>2]|0,f)|0;c[a+92>>2]=d;if((f|0)==(d|0)){i=b;return}do{g=c[f>>2]|0;e=c[a>>2]|0;e=(c[1009384+(c[e+((g&63)<<2)>>2]<<2)>>2]|0)-(c[e+((g>>>6&63)<<2)>>2]&7)|0;j=f+4|0;c[j>>2]=e;h=g&49152;if((h|0)==32768){c[j>>2]=(c[1009388>>2]|0)+e}else if((h|0)==16384){c[j>>2]=(c[1009384+((g>>>12&3)+2<<2)>>2]|0)+e-(c[1009388>>2]|0)}f=f+8|0}while((f|0)!=(d|0));i=b;return};case 6:{l=bg(c[a>>2]|0,f)|0;d=a+92|0;c[d>>2]=l;if(l>>>0<=(a+112|0)>>>0|(f|0)==(l|0)){i=b;return}e=a+4|0;do{g=c[f>>2]|0;h=Zg(c[a>>2]|0,g)|0;do{if((h|0)>=0){h=c[a>>2]|0;j=g&63;k=c[h+(j<<2)>>2]|0;l=g&49152;if((k|0)==0){if((l|0)==32768){l=44}else{l=45}}else{if((l|0)==49152){l=45}else{l=44}}if((l|0)==44){c[f+4>>2]=(c[1009384+(k<<2)>>2]|0)+2e3-(c[h+((g>>>6&63)<<2)>>2]&7);break}else if((l|0)==45){c[f+4>>2]=c[(c[e>>2]|0)+(c[h+((g>>>6&63)<<2)>>2]<<8)+(j<<2)>>2];break}}else{c[f+4>>2]=h+-2e3}}while(0);f=f+8|0}while((f|0)!=(c[d>>2]|0));i=b;return};case 2:{g=_f(c[a>>2]|0,f)|0;e=a+92|0;c[e>>2]=g;c[a+96>>2]=g;if((f|0)!=(g|0)){h=a+4|0;do{l=c[f>>2]|0;c[f+4>>2]=c[(c[h>>2]|0)+(c[(c[a>>2]|0)+((l>>>6&63)<<2)>>2]<<8)+((l&63)<<2)>>2];f=f+8|0}while((f|0)!=(g|0))}f=c[d>>2]|0;a:do{if((f|0)==(g|0)){a=g}else{a=g;while(1){while(1){g=f+8|0;if((c[f+4>>2]|0)<=0){break}if((g|0)==(a|0)){break a}else{f=g}}do{h=a;a=a+-8|0;if((f|0)==(a|0)){a=f;break a}}while((c[h+-4>>2]|0)<=0);k=f;j=c[k>>2]|0;k=c[k+4>>2]|0;m=a;h=c[m+4>>2]|0;l=f;c[l>>2]=c[m>>2];c[l+4>>2]=h;l=a;c[l>>2]=j;c[l+4>>2]=k;if((g|0)==(a|0)){a=g;break}else{f=g}}}}while(0);c[e>>2]=a;d=c[d>>2]|0;f=d+8|0;if(!(f>>>0<a>>>0)){i=b;return}do{e=f;g=c[e>>2]|0;e=c[e+4>>2]|0;b:do{if((f|0)==(d|0)){j=d}else{h=f;while(1){j=h;h=h+-8|0;if((c[j+-4>>2]|0)>=(e|0)){break b}k=h;l=c[k+4>>2]|0;m=j;c[m>>2]=c[k>>2];c[m+4>>2]=l;if((h|0)==(d|0)){j=d;break}}}}while(0);m=j;c[m>>2]=g;c[m+4>>2]=e;f=f+8|0}while(f>>>0<a>>>0);i=b;return};case 4:{c[d>>2]=a+2144;c[a+92>>2]=c[a+100>>2];i=b;return};case 3:{m=a+92|0;e=c[m>>2]|0;c[d>>2]=e;d=c[a+96>>2]|0;c[m>>2]=d;if((c[a+20>>2]|0)<6){i=b;return}a=e+8|0;if(!(a>>>0<d>>>0)){i=b;return}do{g=a;f=c[g>>2]|0;g=c[g+4>>2]|0;c:do{if((a|0)==(e|0)){j=e}else{h=a;while(1){j=h;h=h+-8|0;if((c[j+-4>>2]|0)>=(g|0)){break c}k=h;l=c[k+4>>2]|0;m=j;c[m>>2]=c[k>>2];c[m+4>>2]=l;if((h|0)==(e|0)){j=e;break}}}}while(0);m=j;c[m>>2]=f;c[m+4>>2]=g;a=a+8|0}while(a>>>0<d>>>0);i=b;return};case 1:{f=a+28|0;c[d>>2]=f;k=a+44|0;e=a+92|0;c[e>>2]=k;m=c[a+8>>2]|0;h=c[m+20>>2]|0;c[f>>2]=h;m=c[m+24>>2]|0;c[a+36>>2]=m;c[a+52>>2]=0;c[a+44>>2]=0;c[a+68>>2]=0;c[a+60>>2]=0;g=c[a+12>>2]|0;d=a+36|0;j=c[g>>2]|0;if(!((j|0)==(h|0)|(j|0)==(m|0))){m=a+52|0;c[e>>2]=m;
+c[k>>2]=j;k=m}g=c[g+4>>2]|0;if((g|0)!=(h|0)?(g|0)!=(c[d>>2]|0):0){m=k+8|0;c[e>>2]=m;c[k>>2]=g;h=c[f>>2]|0;k=m}j=c[a+16>>2]|0;g=a+44|0;a=a+52|0;l=c[j>>2]|0;if((((l|0)!=(h|0)?(l|0)!=(c[d>>2]|0):0)?(l|0)!=(c[g>>2]|0):0)?(l|0)!=(c[a>>2]|0):0){h=k+8|0;c[e>>2]=h;c[k>>2]=l;k=h;h=c[f>>2]|0}f=c[j+4>>2]|0;if((f|0)==(h|0)){i=b;return}if((f|0)==(c[d>>2]|0)){i=b;return}if((f|0)==(c[g>>2]|0)){i=b;return}if((f|0)==(c[a>>2]|0)){i=b;return}c[e>>2]=k+8;c[k>>2]=f;i=b;return};case 14:case 12:case 10:case 7:case 5:{c[e>>2]=17;break};case 9:{c[a+92>>2]=ag(c[a>>2]|0,f)|0;i=b;return};case 16:{break};default:{i=b;return}}c[a+92>>2]=a+112;i=b;return}function lg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,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=i;d=a+88|0;k=a+92|0;p=a+84|0;e=a+24|0;h=a+100|0;j=a+28|0;q=a+36|0;l=a+44|0;m=a+52|0;n=a+60|0;o=a+68|0;g=a+80|0;f=a+76|0;a:while(1){r=c[d>>2]|0;s=c[k>>2]|0;if((r|0)==(s|0)){kg(a);continue}switch(c[p>>2]|0){case 16:{u=r+8|0;c[d>>2]=u;if((u|0)==(s|0)){t=r}else{t=r;v=r;while(1){t=(c[t+4>>2]|0)<(c[v+12>>2]|0)?u:t;v=u+8|0;if((v|0)==(s|0)){break}else{w=u;u=v;v=w}}}w=r;v=c[w>>2]|0;w=c[w+4>>2]|0;x=t;u=c[x+4>>2]|0;s=r;c[s>>2]=c[x>>2];c[s+4>>2]=u;s=t;c[s>>2]=v;c[s+4>>2]=w;s=c[r>>2]|0;if((s&63|0)==(c[f>>2]|0)){a=36;break a}else{continue a}};case 5:{a=24;break a};case 14:{u=r+8|0;c[d>>2]=u;if((u|0)==(s|0)){t=r}else{t=r;v=r;while(1){t=(c[t+4>>2]|0)<(c[v+12>>2]|0)?u:t;v=u+8|0;if((v|0)==(s|0)){break}else{x=u;u=v;v=x}}}x=r;w=c[x>>2]|0;x=c[x+4>>2]|0;u=t;v=c[u+4>>2]|0;s=r;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=t;c[s>>2]=w;c[s+4>>2]=x;s=c[r>>2]|0;if((s|0)==(c[e>>2]|0)){continue a}x=_g(c[a>>2]|0,s)|0;if((x|0)>(c[g>>2]|0)){a=36;break a}else{continue a}};case 1:{u=r+8|0;c[d>>2]=u;if((u|0)==(s|0)){t=r}else{t=r;v=r;while(1){t=(c[t+4>>2]|0)<(c[v+12>>2]|0)?u:t;v=u+8|0;if((v|0)==(s|0)){break}else{x=u;u=v;v=x}}}x=r;w=c[x>>2]|0;x=c[x+4>>2]|0;u=t;v=c[u+4>>2]|0;s=r;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=t;c[s>>2]=w;c[s+4>>2]=x;s=c[r>>2]|0;if((s|0)==(c[e>>2]|0)){continue a}if((Zg(c[a>>2]|0,s)|0)>-1){a=36;break a}x=c[h>>2]|0;c[h>>2]=x+-8;c[x>>2]=s;continue a};case 13:case 11:case 8:case 6:case 0:{a=5;break a};case 12:case 9:case 7:{u=r+8|0;c[d>>2]=u;if((u|0)==(s|0)){t=r}else{t=r;v=r;while(1){t=(c[t+4>>2]|0)<(c[v+12>>2]|0)?u:t;v=u+8|0;if((v|0)==(s|0)){break}else{x=u;u=v;v=x}}}x=r;w=c[x>>2]|0;x=c[x+4>>2]|0;u=t;v=c[u+4>>2]|0;s=r;c[s>>2]=c[u>>2];c[s+4>>2]=v;s=t;c[s>>2]=w;c[s+4>>2]=x;s=c[r>>2]|0;if((s|0)==(c[e>>2]|0)){continue a}else{a=36;break a}};case 4:case 3:{c[d>>2]=r+8;s=c[r>>2]|0;if((s|0)==(c[e>>2]|0)){continue a}if((s|0)==(c[j>>2]|0)){continue a}if((s|0)==(c[q>>2]|0)){continue a}if((s|0)==(c[l>>2]|0)){continue a}if((s|0)==(c[m>>2]|0)){continue a}if((s|0)==(c[n>>2]|0)){continue a}if((s|0)==(c[o>>2]|0)){continue a}else{a=36;break a}};case 17:{s=0;a=36;break a};case 10:{c[d>>2]=r+8;s=c[r>>2]|0;if((s|0)==(c[e>>2]|0)){continue a}else{a=36;break a}};case 2:{c[d>>2]=r+8;s=c[r>>2]|0;if((s|0)==0){continue a}if((s|0)==(c[e>>2]|0)){continue a}if(!(Qg(c[a>>2]|0,s)|0)){continue a}r=s&49152;if((c[(c[a>>2]|0)+((s&63)<<2)>>2]|0)==0){if((r|0)==32768){continue a}else{a=36;break a}}else{if((r|0)==49152){a=36;break a}else{continue a}}};default:{continue a}}}if((a|0)==5){c[d>>2]=r+8;x=c[e>>2]|0;i=b;return x|0}else if((a|0)==24){c[d>>2]=r+-8;x=c[r>>2]|0;i=b;return x|0}else if((a|0)==36){i=b;return s|0}return 0}function mg(a){a=a|0;var b=0;b=i;a=lg(c[(c[c[a+8>>2]>>2]|0)+28>>2]|0)|0;i=b;return a|0}function ng(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;j=i;i=i+160|0;p=0-d|0;q=j+144|0;k=j;m=k+64|0;n=k+8|0;c[n>>2]=1004984;o=k+12|0;c[k>>2]=1005028;c[m>>2]=1005048;c[k+4>>2]=0;h=k+64|0;Ck(h,o);c[k+136>>2]=0;c[k+140>>2]=-1;c[k>>2]=1004964;c[m>>2]=1005004;c[n>>2]=1004984;c[o>>2]=1080120;l=k+16|0;Op(l);g=k+20|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[o>>2]=1005064;g=k+44|0;r=k+60|0;c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[r>>2]=24;c[q+0>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;ef(o,q);if(!((a[q>>0]&1)==0)){Ys(c[q+8>>2]|0)}q=k+8|0;if((((d|0)>-1?d:p)|0)<31880){ul(Fc(q,1006800)|0,(d*100|0)/258|0)|0}else{r=Fc(q,1006808)|0;ul(r,(((d|0)>0?32001:-32e3)-d|0)/2|0)|0}if((d|0)<(f|0)){p=(d|0)<=(e|0)?1006832:1006848}else{p=1006816}Fc(q,p)|0;df(b,o);c[k>>2]=1004964;c[m>>2]=1005004;c[n>>2]=1004984;b=k+12|0;c[b>>2]=1005064;if((a[g>>0]&1)==0){c[b>>2]=1080120;Qp(l);yk(h);i=j;return}Ys(c[k+52>>2]|0);c[b>>2]=1080120;Qp(l);yk(h);i=j;return}function og(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;i=i+48|0;m=g+36|0;f=g+24|0;h=g+12|0;j=g;o=d>>>6;l=o&63;n=d&63;if((d|0)==65){a[b>>0]=8;q=b+1|0;a[q>>0]=808464432;a[q+1>>0]=3158064;a[q+2>>0]=12336;a[q+3>>0]=48;a[b+5>>0]=0;i=g;return}else if((d|0)==0){a[b>>0]=12;q=b+1|0;a[q+0>>0]=a[1006856>>0]|0;a[q+1>>0]=a[1006857>>0]|0;a[q+2>>0]=a[1006858>>0]|0;a[q+3>>0]=a[1006859>>0]|0;a[q+4>>0]=a[1006860>>0]|0;a[q+5>>0]=a[1006861>>0]|0;a[b+7>>0]=0;i=g;return}else{k=d&49152;if(!((k|0)!=49152|e)){n=(n>>>0>l>>>0?6:2)|o&56}a[m>>0]=(o&7)+97;o=m+1|0;a[o>>0]=(l>>>3)+49;e=m+2|0;a[e>>0]=0;q=It(m|0)|0;if(q>>>0<11){l=q<<1&255;a[h>>0]=l;p=h+1|0}else{l=q+16&-16;p=Vs(l)|0;c[h+8>>2]=p;l=l|1;c[h>>2]=l;c[h+4>>2]=q;l=l&255}Nt(p|0,m|0,q|0)|0;a[p+q>>0]=0;a[m>>0]=(n&7)+97;a[o>>0]=(n>>>3)+49;a[e>>0]=0;o=It(m|0)|0;if(o>>>0<11){n=o<<1&255;a[j>>0]=n;e=j+1|0}else{n=o+16&-16;e=Vs(n)|0;c[j+8>>2]=e;n=n|1;c[j>>2]=n;c[j+4>>2]=o;n=n&255}Nt(e|0,m|0,o|0)|0;a[e+o>>0]=0;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;e=(l&1)==0;if(e){o=(l&255)>>>1}else{o=c[h+4>>2]|0}if((n&1)==0){m=(n&255)>>>1}else{m=c[j+4>>2]|0}if(e){e=h+1|0}else{e=c[h+8>>2]|0}p=m+o|0;if(p>>>0<11){a[f>>0]=o<<1;p=f+1|0}else{q=p+16&-16;p=Vs(q)|0;c[f+8>>2]=p;c[f>>2]=q|1;c[f+4>>2]=o}Nt(p|0,e|0,o|0)|0;a[p+o>>0]=0;if((n&1)==0){n=j+1|0}else{n=c[j+8>>2]|0}jk(f,n,m)|0;if(!((a[j>>0]&1)==0)){Ys(c[j+8>>2]|0)}if(!((l&1)==0)){Ys(c[h+8>>2]|0)}if((k|0)==16384){ik(f,a[(d>>>12&3)+1006946>>0]|0)}h=(a[f>>0]&1)==0;if(h){c[b+0>>2]=c[f+0>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];i=g;return}d=c[f+8>>2]|0;j=c[f+4>>2]|0;if(j>>>0<11){a[b>>0]=j<<1;Nt(b+1|0,d|0,j|0)|0;a[b+j+1>>0]=0;if(h){i=g;return}}else{p=j+16&-16;q=Vs(p)|0;c[b+8>>2]=q;c[b>>2]=p|1;c[b+4>>2]=j;Nt(q|0,d|0,j|0)|0;a[q+j>>0]=0}Ys(c[f+8>>2]|0);i=g;return}}function pg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+2080|0;j=e+16|0;g=e;k=a[d>>0]|0;h=(k&1)==0;if(h){k=(k&255)>>>1}else{k=c[d+4>>2]|0}if((k|0)==5){if(h){h=d+1|0}else{h=c[d+8>>2]|0}k=(ft(a[h+4>>0]|0)|0)&255;if((a[d>>0]&1)==0){h=d+1|0}else{h=c[d+8>>2]|0}a[h+4>>0]=k}h=j+2048|0;c[h>>2]=j;p=cg(b,j)|0;c[j+2052>>2]=p;c[p>>2]=0;p=c[c[h>>2]>>2]|0;if((p|0)==0){t=0;i=e;return t|0}j=b+2224|0;l=d+1|0;m=g+1|0;o=g+8|0;b=d+8|0;n=g+4|0;k=d+4|0;while(1){og(g,p,(a[j>>0]|0)!=0);p=a[d>>0]|0;q=(p&1)==0;if(q){s=(p&255)>>>1}else{s=c[k>>2]|0}r=a[g>>0]|0;p=(r&1)==0;if(p){r=(r&255)>>>1}else{r=c[n>>2]|0}a:do{if((s|0)==(r|0)){if(q){t=l}else{t=c[b>>2]|0}r=p?m:c[o>>2]|0;if(!q){q=(Ft(t,r,s)|0)==0;break}if((s|0)==0){q=1}else{while(1){if((a[t>>0]|0)!=(a[r>>0]|0)){q=0;break a}s=s+-1|0;if((s|0)==0){q=1;break}else{t=t+1|0;r=r+1|0}}}}else{q=0}}while(0);if(!p){Ys(c[o>>2]|0)}p=c[h>>2]|0;if(q){break}p=p+8|0;c[h>>2]=p;p=c[p>>2]|0;if((p|0)==0){d=0;f=33;break}}if((f|0)==33){i=e;return d|0}t=c[p>>2]|0;i=e;return t|0}function qg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;f=i;i=i+2288|0;j=f+96|0;u=f+88|0;g=f+2272|0;p=f+2260|0;n=f+2248|0;h=f+2236|0;m=f+2224|0;l=f;k=f+168|0;if((e|0)==65){a[b>>0]=12;x=b+1|0;a[x+0>>0]=a[1006864>>0]|0;a[x+1>>0]=a[1006865>>0]|0;a[x+2>>0]=a[1006866>>0]|0;a[x+3>>0]=a[1006867>>0]|0;a[x+4>>0]=a[1006868>>0]|0;a[x+5>>0]=a[1006869>>0]|0;a[b+7>>0]=0;i=f;return}else if((e|0)==0){a[b>>0]=12;x=b+1|0;a[x+0>>0]=a[1006856>>0]|0;a[x+1>>0]=a[1006857>>0]|0;a[x+2>>0]=a[1006858>>0]|0;a[x+3>>0]=a[1006859>>0]|0;a[x+4>>0]=a[1006860>>0]|0;a[x+5>>0]=a[1006861>>0]|0;a[b+7>>0]=0;i=f;return}else{c[g+0>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;t=c[d+2212>>2]|0;s=e>>>6;r=s&63;q=e&63;w=c[d+(r<<2)>>2]|0;v=w&7;o=e&49152;if((o|0)!=49152){do{if((v|0)==1){if((o|0)==32768?1:(c[d+(q<<2)>>2]|0)!=0){a[g>>0]=2;a[g+1>>0]=(s&7)+97;a[g+2>>0]=0}}else{z=a[1006936+v>>0]|0;a[g>>0]=2;a[g+1>>0]=z;a[g+2>>0]=0;z=d+256|0;z=id(w,q,c[z>>2]|0,c[z+4>>2]|0)|0;y=d+(t<<3)+320|0;x=d+(v<<3)+256|0;z=c[y>>2]&z&c[x>>2];x=c[y+4>>2]&I&c[x+4>>2];y=29920+(r<<3)|0;A=c[y>>2]|0;y=c[y+4>>2]|0;v=A^z;w=y^x;B=u;c[B>>2]=v;c[B+4>>2]=w;if((A|0)==(z|0)&(y|0)==(x|0)){t=w}else{do{x=cd(u)|0;B=Ng(d,t,t)|0;if(!(Pg(d,x<<6|q,B,I)|0)){B=29920+(x<<3)|0;v=c[B>>2]^v;w=c[B+4>>2]^w}B=u}while(!((c[B>>2]|0)==0&(c[B+4>>2]|0)==0));t=w}if(!((v|0)==0&(t|0)==0)){s=s&7;B=30432+(s<<3)|0;if((c[B>>2]&v|0)==0?(c[B+4>>2]&t|0)==0:0){ik(g,s+97&255);break}r=r>>>3;B=30496+(r<<3)|0;if((c[B>>2]&v|0)==0?(c[B+4>>2]&t|0)==0:0){ik(g,r+49&255);break}a[j>>0]=s+97;a[j+1>>0]=r+49;a[j+2>>0]=0;u=It(j|0)|0;if(u>>>0<11){s=u<<1&255;a[p>>0]=s;r=p;t=p+1|0}else{s=u+16&-16;t=Vs(s)|0;c[p+8>>2]=t;s=s|1;c[p>>2]=s;c[p+4>>2]=u;r=p;s=s&255}Nt(t|0,j|0,u|0)|0;a[t+u>>0]=0;if((s&1)==0){t=p+1|0;s=(s&255)>>>1}else{t=c[p+8>>2]|0;s=c[p+4>>2]|0}jk(g,t,s)|0;if(!((a[r>>0]&1)==0)){Ys(c[p+8>>2]|0)}}}}while(0);if((o|0)==32768?1:(c[d+(q<<2)>>2]|0)!=0){ik(g,120)}a[j>>0]=(e&7)+97;a[j+1>>0]=(q>>>3)+49;a[j+2>>0]=0;r=It(j|0)|0;if(r>>>0<11){q=r<<1&255;a[n>>0]=q;p=n;s=n+1|0}else{q=r+16&-16;s=Vs(q)|0;c[n+8>>2]=s;q=q|1;c[n>>2]=q;c[n+4>>2]=r;p=n;q=q&255}Nt(s|0,j|0,r|0)|0;a[s+r>>0]=0;if((q&1)==0){r=n+1|0;q=(q&255)>>>1}else{r=c[n+8>>2]|0;q=c[n+4>>2]|0}jk(g,r,q)|0;if(!((a[p>>0]&1)==0)){Ys(c[n+8>>2]|0)}if((o|0)==16384){a[m>>0]=2;B=m+1|0;a[B>>0]=61;a[m+2>>0]=0;n=a[(e>>>12&3)+1006938>>0]|0;c[h+0>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;a[h>>0]=2;a[h+1>>0]=a[B>>0]|0;a[h+2>>0]=0;ik(h,n);n=a[h>>0]|0;if((n&1)==0){m=h+1|0;n=(n&255)>>>1}else{m=c[h+8>>2]|0;n=c[h+4>>2]|0}jk(g,m,n)|0;if(!((a[h>>0]&1)==0)){Ys(c[h+8>>2]|0)}}}else{B=q>>>0>r>>>0?1006872:1006880;ek(g,B,It(B|0)|0)|0}Cg(l,d);if(Rg(d,e,l)|0){Sg(d,e,j);c[k+2048>>2]=k;B=cg(d,k)|0;c[k+2052>>2]=B;c[B>>2]=0;jk(g,(B|0)!=(k|0)?1006888:1006896,1)|0;Vg(d,e)}e=(a[g>>0]&1)==0;if(e){c[b+0>>2]=c[g+0>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];i=f;return}j=c[g+8>>2]|0;h=c[g+4>>2]|0;if(h>>>0<11){a[b>>0]=h<<1;Nt(b+1|0,j|0,h|0)|0;a[b+h+1>>0]=0;if(e){i=f;return}}else{A=h+16&-16;B=Vs(A)|0;c[b+8>>2]=B;c[b>>2]=A|1;c[b+4>>2]=h;Nt(B|0,j|0,h|0)|0;a[B+h>>0]=0}Ys(c[g+8>>2]|0);i=f;return}}function rg(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;k=i;i=i+512|0;F=k+496|0;E=k+352|0;l=k+328|0;m=k+316|0;n=k+304|0;o=k+160|0;C=k+144|0;D=k+132|0;z=k+120|0;y=k+108|0;v=k+96|0;x=k+84|0;w=k+72|0;u=k;c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[l+20>>2]=0;c[m+0>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[b+0>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[n+0>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;t=o+64|0;s=o+8|0;c[s>>2]=1004984;A=o+12|0;c[o>>2]=1005028;c[t>>2]=1005048;c[o+4>>2]=0;q=o+64|0;Ck(q,A);c[o+136>>2]=0;c[o+140>>2]=-1;c[o>>2]=1004964;c[t>>2]=1005004;c[s>>2]=1004984;c[A>>2]=1080120;r=o+16|0;Op(r);p=o+20|0;c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[p+20>>2]=0;c[A>>2]=1005064;p=o+44|0;V=o+60|0;c[p+0>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[V>>2]=24;c[F+0>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;ef(A,F);if(!((a[F>>0]&1)==0)){Ys(c[F+8>>2]|0)}B=o+8|0;c[B+((c[(c[B>>2]|0)+-12>>2]|0)+12)>>2]=2;G=ul(B,e)|0;c[G+((c[(c[G>>2]|0)+-12>>2]|0)+12)>>2]=8;N=E+64|0;M=E+8|0;c[M>>2]=1004984;L=E+12|0;c[E>>2]=1005028;c[N>>2]=1005048;c[E+4>>2]=0;H=E+64|0;Ck(H,L);c[E+136>>2]=0;c[E+140>>2]=-1;c[E>>2]=1004964;c[N>>2]=1005004;c[M>>2]=1004984;c[L>>2]=1080120;J=E+16|0;Op(J);e=E+20|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[L>>2]=1005064;e=E+44|0;V=E+60|0;c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[V>>2]=24;c[F+0>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;ef(L,F);if(!((a[F>>0]&1)==0)){Ys(c[F+8>>2]|0)}do{if((f|0)<=31879){K=E+8|0;if((f|0)<-31879){ul(Fc(K,1006928)|0,(f+32e3|0)/2|0)|0;break}else{c[K+((c[(c[K>>2]|0)+-12>>2]|0)+8)>>2]=2;V=K+((c[(c[K>>2]|0)+-12>>2]|0)+4)|0;c[V>>2]=c[V>>2]&-261|4;V=K+((c[(c[K>>2]|0)+-12>>2]|0)+4)|0;c[V>>2]=c[V>>2]|2048;yl(K,+(f|0)/258)|0;break}}else{ul(Fc(E+8|0,1006896)|0,(32001-f|0)/2|0)|0}}while(0);df(C,L);c[E>>2]=1004964;c[N>>2]=1005004;c[M>>2]=1004984;f=E+12|0;c[f>>2]=1005064;if(!((a[e>>0]&1)==0)){Ys(c[E+52>>2]|0)}c[f>>2]=1080120;Qp(J);yk(H);H=Ec(G,C)|0;c[H+((c[(c[H>>2]|0)+-12>>2]|0)+12)>>2]=8;M=Ut(g|0,h|0,36e5,0)|0;N=I;P=Tt(M|0,N|0,6e4,0)|0;O=I;N=Ut(M|0,N|0,6e4,0)|0;N=Tt(N|0,I|0,1e3,0)|0;M=I;K=E+64|0;f=E+8|0;c[f>>2]=1004984;L=E+12|0;c[E>>2]=1005028;c[K>>2]=1005048;c[E+4>>2]=0;e=E+64|0;Ck(e,L);c[E+136>>2]=0;c[E+140>>2]=-1;c[E>>2]=1004964;c[K>>2]=1005004;c[f>>2]=1004984;c[L>>2]=1080120;J=E+16|0;Op(J);G=E+20|0;c[G+0>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;c[G+12>>2]=0;c[G+16>>2]=0;c[G+20>>2]=0;c[L>>2]=1005064;G=E+44|0;V=E+60|0;c[G+0>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;c[G+12>>2]=0;c[V>>2]=24;c[F+0>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;ef(L,F);if(!((a[F>>0]&1)==0)){Ys(c[F+8>>2]|0)}V=Jt(g|0,h|0,3599999,0)|0;U=I;if(U>>>0>0|(U|0)==0&V>>>0>7199998){g=Tt(g|0,h|0,36e5,0)|0;h=E+8|0;Hc(wl(h,g,I)|0,58)|0;g=h}else{h=E+8|0;g=h}c[g+((c[(c[g>>2]|0)+-12>>2]|0)+76)>>2]=48;c[g+((c[(c[g>>2]|0)+-12>>2]|0)+12)>>2]=2;h=Hc(wl(h,P,O)|0,58)|0;c[h+((c[(c[h>>2]|0)+-12>>2]|0)+12)>>2]=2;wl(h,N,M)|0;df(D,L);c[E>>2]=1004964;c[K>>2]=1005004;c[f>>2]=1004984;h=E+12|0;c[h>>2]=1005064;if(!((a[G>>0]&1)==0)){Ys(c[E+52>>2]|0)}c[h>>2]=1080120;Qp(J);yk(e);Ec(H,D)|0;if(!((a[D>>0]&1)==0)){Ys(c[D+8>>2]|0)}if(!((a[C>>0]&1)==0)){Ys(c[C+8>>2]|0)}D=d+2200|0;C=c[D>>2]|0;D=c[D+4>>2]|0;do{if(!(D>>>0<0|(D|0)==0&C>>>0<1e6)){c[B+((c[(c[B>>2]|0)+-12>>2]|0)+12)>>2]=7;if(D>>>0<0|(D|0)==0&C>>>0<1e9){V=Wt(C|0,D|0,1e3,0)|0;Fc(xl(B,V,I)|0,1006912)|0;break}else{V=Wt(C|0,D|0,1e6,0)|0;Fc(xl(B,V,I)|0,1006920)|0;break}}else{c[B+((c[(c[B>>2]|0)+-12>>2]|0)+12)>>2]=8;Fc(xl(B,C,D)|0,1006904)|0}}while(0);df(z,A);if((z|0)!=(b|0)){B=a[z>>0]|0;if((B&1)==0){A=z+1|0;B=(B&255)>>>1}else{A=c[z+8>>2]|0;B=c[z+4>>2]|0}ek(b,A,B)|0}if(!((a[z>>0]&1)==0)){Ys(c[z+8>>2]|0)}z=a[b>>0]|0;if((z&1)==0){B=(z&255)>>>1}else{B=c[b+4>>2]|0}if(B>>>0<11){A=B<<1&255;a[y>>0]=A;z=y;C=y+1|0}else{A=B+16&-16;C=Vs(A)|0;c[y+8>>2]=C;A=A|1;c[y>>2]=A;c[y+4>>2]=B;z=y;A=A&255}Lt(C|0,32,B|0)|0;a[C+B>>0]=0;if((A&1)==0){B=y+1|0;A=(A&255)>>>1}else{B=c[y+8>>2]|0;A=c[y+4>>2]|0}ek(n,B,A)|0;if(!((a[z>>0]&1)==0)){Ys(c[y+8>>2]|0)}Q=c[j>>2]|0;if((Q|0)!=0){F=x+1|0;y=v+1|0;K=m+1|0;O=l+8|0;N=l+4|0;M=l+16|0;L=l+20|0;f=m+8|0;J=m+4|0;G=w+1|0;C=n+1|0;H=w+8|0;e=w+4|0;g=n+8|0;h=n+4|0;B=b+4|0;A=x+8|0;z=v+8|0;D=v+4|0;E=x+4|0;P=j;do{qg(x,d,Q);c[v+0>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;R=a[x>>0]|0;Q=(R&1)==0;if(Q){S=(R&255)>>>1;T=F}else{S=c[E>>2]|0;T=c[A>>2]|0}if((S+1|0)>>>0<11){a[v>>0]=S<<1;R=y}else{V=S+17&-16;R=Vs(V)|0;c[z>>2]=R;c[v>>2]=V|1;c[D>>2]=S}Nt(R|0,T|0,S|0)|0;a[R+S>>0]=0;ik(v,32);S=a[v>>0]|0;if((S&1)==0){R=y;S=(S&255)>>>1}else{R=c[z>>2]|0;S=c[D>>2]|0}ek(m,R,S)|0;if(!((a[v>>0]&1)==0)){Ys(c[z>>2]|0)}if(!Q){Ys(c[A>>2]|0)}Q=a[b>>0]|0;if((Q&1)==0){R=(Q&255)>>>1}else{R=c[B>>2]|0}S=a[m>>0]|0;if((S&1)==0){Q=(S&255)>>>1;S=(S&255)>>>1}else{S=c[J>>2]|0;Q=S}do{if(!((((Q+R|0)>>>0)%80|0)>>>0>S>>>0)){c[w+0>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;R=a[n>>0]|0;Q=(R&1)==0;if(Q){S=(R&255)>>>1}else{S=c[h>>2]|0}if((S+1|0)>>>0<11){a[w>>0]=2;R=G}else{V=S+17&-16;R=Vs(V)|0;c[H>>2]=R;c[w>>2]=V|1;c[e>>2]=1}a[R>>0]=10;a[R+1>>0]=0;jk(w,Q?C:c[g>>2]|0,S)|0;R=a[w>>0]|0;if((R&1)==0){Q=G;R=(R&255)>>>1}else{Q=c[H>>2]|0;R=c[e>>2]|0}jk(b,Q,R)|0;if((a[w>>0]&1)==0){break}Ys(c[H>>2]|0)}}while(0);R=a[m>>0]|0;if((R&1)==0){Q=K;R=(R&255)>>>1}else{Q=c[f>>2]|0;R=c[J>>2]|0}jk(b,Q,R)|0;V=u+0|0;T=V+72|0;do{c[V>>2]=0;V=V+4|0}while((V|0)<(T|0));S=c[O>>2]|0;R=c[N>>2]|0;Q=S-R>>2;if((Q|0)==0){U=0}else{U=(Q*56|0)+-1|0}T=c[M>>2]|0;Q=c[L>>2]|0;if((U-T|0)==(Q|0)){sg(l);Q=c[L>>2]|0;T=c[M>>2]|0;S=c[O>>2]|0;U=c[N>>2]|0}else{U=R}T=Q+T|0;R=U+(((T>>>0)/56|0)<<2)|0;do{if((S|0)==(U|0)){S=(T>>>0)%56|0}else{S=(T>>>0)%56|0;T=(c[R>>2]|0)+(S*72|0)|0;if((T|0)==0){break}V=T+0|0;U=u+0|0;T=V+72|0;do{c[V>>2]=c[U>>2];V=V+4|0;U=U+4|0}while((V|0)<(T|0))}}while(0);c[L>>2]=Q+1;Q=P;P=P+4|0;Sg(d,c[Q>>2]|0,(c[R>>2]|0)+(S*72|0)|0);Q=c[P>>2]|0}while((Q|0)!=0);if((P|0)!=(j|0)){do{P=P+-4|0;Vg(d,c[P>>2]|0)}while((P|0)!=(j|0))}}c[o>>2]=1004964;c[t>>2]=1005004;c[s>>2]=1004984;s=o+12|0;c[s>>2]=1005064;if(!((a[p>>0]&1)==0)){Ys(c[o+52>>2]|0)}c[s>>2]=1080120;Qp(r);yk(q);if(!((a[n>>0]&1)==0)){Ys(c[n+8>>2]|0)}if(!((a[m>>0]&1)==0)){Ys(c[m+8>>2]|0)}n=l+4|0;p=c[n>>2]|0;o=l+16|0;t=c[o>>2]|0;j=p+(((t>>>0)/56|0)<<2)|0;m=l+8|0;q=c[m>>2]|0;if((q|0)==(p|0)){s=0;r=l+20|0;t=0}else{r=l+20|0;s=(c[r>>2]|0)+t|0;s=(c[p+(((s>>>0)/56|0)<<2)>>2]|0)+(((s>>>0)%56|0)*72|0)|0;t=(c[j>>2]|0)+(((t>>>0)%56|0)*72|0)|0}a:while(1){do{if((t|0)==(s|0)){break a}t=t+72|0}while((t-(c[j>>2]|0)|0)!=4032);V=j+4|0;t=c[V>>2]|0;j=V}c[r>>2]=0;q=q-p>>2;if(q>>>0>2){do{Ys(c[p>>2]|0);p=(c[n>>2]|0)+4|0;c[n>>2]=p;q=(c[m>>2]|0)-p>>2}while(q>>>0>2)}if((q|0)==1){c[o>>2]=28}else if((q|0)==2){c[o>>2]=56}p=c[n>>2]|0;o=c[m>>2]|0;do{if((p|0)!=(o|0)){do{Ys(c[p>>2]|0);p=p+4|0}while((p|0)!=(o|0));o=c[n>>2]|0;n=c[m>>2]|0;if((n|0)==(o|0)){break}c[m>>2]=n+(~((n+-4+(0-o)|0)>>>2)<<2)}}while(0);l=c[l>>2]|0;if((l|0)==0){i=k;return}Ys(l);i=k;return}function sg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;b=i;i=i+32|0;h=b+20|0;g=b;d=a+16|0;e=c[d>>2]|0;if(e>>>0>55){c[d>>2]=e+-56;g=a+4|0;h=c[g>>2]|0;e=c[h>>2]|0;n=h+4|0;c[g>>2]=n;d=a+8|0;l=c[d>>2]|0;f=a+12|0;do{if((l|0)==(c[f>>2]|0)){m=c[a>>2]|0;if(n>>>0>m>>>0){p=n;a=((p-m>>2)+1|0)/-2|0;l=l-p|0;Ot(h+(a+1<<2)|0,n|0,l|0)|0;l=h+((l>>2)+1+a<<2)|0;c[d>>2]=l;c[g>>2]=(c[g>>2]|0)+(a<<2);a=13;break}k=l-m>>1;k=(k|0)==0?1:k;h=Vs(k<<2)|0;j=h+(k>>>2<<2)|0;k=h+(k<<2)|0;if((n|0)==(l|0)){l=j}else{m=j;do{if((m|0)==0){m=0}else{c[m>>2]=c[n>>2]}m=m+4|0;n=n+4|0}while((n|0)!=(l|0));l=m;m=c[a>>2]|0}c[a>>2]=h;c[g>>2]=j;c[d>>2]=l;c[f>>2]=k;if((m|0)==0){a=12}else{Ys(m);l=c[d>>2]|0;a=12}}else{a=12}}while(0);if((a|0)==12){if((l|0)==0){e=0}else{a=13}}if((a|0)==13){c[l>>2]=e;e=c[d>>2]|0}c[d>>2]=e+4;i=b;return}d=a+8|0;k=c[d>>2]|0;f=a+4|0;l=k-(c[f>>2]|0)>>2;e=a+12|0;j=c[e>>2]|0;m=j-(c[a>>2]|0)|0;if(!(l>>>0<m>>2>>>0)){p=m>>1;p=(p|0)==0?1:p;j=g+12|0;c[g+16>>2]=a+12;n=Vs(p<<2)|0;c[g>>2]=n;o=n+(l<<2)|0;k=g+8|0;c[k>>2]=o;h=g+4|0;c[h>>2]=o;c[j>>2]=n+(p<<2);m=Vs(4032)|0;do{if((l|0)==(p|0)){p=o-n|0;if(o>>>0>n>>>0){o=n+(l+(((p>>2)+1|0)/-2|0)<<2)|0;c[k>>2]=o;c[h>>2]=o;break}p=p>>1;p=(p|0)==0?1:p;l=Vs(p<<2)|0;o=l+(p>>>2<<2)|0;c[g>>2]=l;c[h>>2]=o;c[k>>2]=o;c[j>>2]=l+(p<<2);if((n|0)!=0){Ys(n)}}}while(0);if((o|0)==0){l=0}else{c[o>>2]=m;l=c[k>>2]|0}m=l+4|0;c[k>>2]=m;n=c[d>>2]|0;if((n|0)==(c[f>>2]|0)){l=n}else{l=n;do{l=l+-4|0;ug(g,l)}while((l|0)!=(c[f>>2]|0));m=c[k>>2]|0;n=c[d>>2]|0}o=c[a>>2]|0;c[a>>2]=c[g>>2];c[g>>2]=o;c[f>>2]=c[h>>2];c[h>>2]=l;c[d>>2]=m;c[k>>2]=n;p=c[e>>2]|0;c[e>>2]=c[j>>2];c[j>>2]=p;if((n|0)!=(l|0)){c[k>>2]=n+(~((n+-4+(0-l)|0)>>>2)<<2)}if((o|0)==0){i=b;return}Ys(o);i=b;return}g=Vs(4032)|0;if((j|0)!=(k|0)){if((k|0)==0){a=0}else{c[k>>2]=g;a=c[d>>2]|0}c[d>>2]=a+4;i=b;return}c[h>>2]=g;tg(a,h);h=c[f>>2]|0;g=c[h>>2]|0;m=h+4|0;c[f>>2]=m;l=c[d>>2]|0;do{if((l|0)==(c[e>>2]|0)){n=c[a>>2]|0;if(m>>>0>n>>>0){p=m;a=((p-n>>2)+1|0)/-2|0;l=l-p|0;Ot(h+(a+1<<2)|0,m|0,l|0)|0;l=h+((l>>2)+1+a<<2)|0;c[d>>2]=l;c[f>>2]=(c[f>>2]|0)+(a<<2);a=31;break}j=l-n>>1;j=(j|0)==0?1:j;k=Vs(j<<2)|0;h=k+(j>>>2<<2)|0;j=k+(j<<2)|0;if((m|0)==(l|0)){l=h}else{n=h;do{if((n|0)==0){n=0}else{c[n>>2]=c[m>>2]}n=n+4|0;m=m+4|0}while((m|0)!=(l|0));l=n;n=c[a>>2]|0}c[a>>2]=k;c[f>>2]=h;c[d>>2]=l;c[e>>2]=j;if((n|0)==0){a=30}else{Ys(n);l=c[d>>2]|0;a=30}}else{a=30}}while(0);if((a|0)==30){if((l|0)==0){e=0}else{a=31}}if((a|0)==31){c[l>>2]=g;e=c[d>>2]|0}c[d>>2]=e+4;i=b;return}function tg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;d=a+4|0;m=c[d>>2]|0;do{if((m|0)==(c[a>>2]|0)){g=a+8|0;l=c[g>>2]|0;f=a+12|0;n=c[f>>2]|0;h=n;if(l>>>0<n>>>0){k=l;n=((h-k>>2)+1|0)/2|0;k=k-m|0;j=l+(n-(k>>2)<<2)|0;Ot(j|0,m|0,k|0)|0;c[d>>2]=j;c[g>>2]=(c[g>>2]|0)+(n<<2);break}h=h-m>>1;h=(h|0)==0?1:h;k=Vs(h<<2)|0;j=k+((h+3|0)>>>2<<2)|0;h=k+(h<<2)|0;if((m|0)==(l|0)){n=j}else{n=j;do{if((n|0)==0){n=0}else{c[n>>2]=c[m>>2]}n=n+4|0;m=m+4|0}while((m|0)!=(l|0));m=c[a>>2]|0}c[a>>2]=k;c[d>>2]=j;c[g>>2]=n;c[f>>2]=h;if((m|0)!=0){Ys(m);j=c[d>>2]|0}}else{j=m}}while(0);c[j+-4>>2]=c[b>>2];c[d>>2]=(c[d>>2]|0)+-4;i=e;return}function ug(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;d=a+4|0;m=c[d>>2]|0;do{if((m|0)==(c[a>>2]|0)){g=a+8|0;l=c[g>>2]|0;f=a+12|0;n=c[f>>2]|0;h=n;if(l>>>0<n>>>0){k=l;n=((h-k>>2)+1|0)/2|0;k=k-m|0;j=l+(n-(k>>2)<<2)|0;Ot(j|0,m|0,k|0)|0;c[d>>2]=j;c[g>>2]=(c[g>>2]|0)+(n<<2);break}h=h-m>>1;h=(h|0)==0?1:h;k=Vs(h<<2)|0;j=k+((h+3|0)>>>2<<2)|0;h=k+(h<<2)|0;if((m|0)==(l|0)){n=j}else{n=j;do{if((n|0)==0){n=0}else{c[n>>2]=c[m>>2]}n=n+4|0;m=m+4|0}while((m|0)!=(l|0));m=c[a>>2]|0}c[a>>2]=k;c[d>>2]=j;c[g>>2]=n;c[f>>2]=h;if((m|0)!=0){Ys(m);j=c[d>>2]|0}}else{j=m}}while(0);c[j+-4>>2]=c[b>>2];c[d>>2]=(c[d>>2]|0)+-4;i=e;return}function vg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;c[a+64>>2]=d;f=b+2220|0;c[a+88>>2]=c[(c[f>>2]|0)+24>>2]&3;a=a+80|0;c[a>>2]=0;h=b+320|0;j=b+264|0;g=c[j>>2]&c[h>>2];h=c[j+4>>2]&c[h+4>>2];if((g|0)==0&(h|0)==0){g=0}else{j=0;do{k=j;j=j+1|0;k=104480+(d<<6)+(k<<3)|0}while((c[k>>2]&g|0)==0?(c[k+4>>2]&h|0)==0:0);c[a>>2]=j;g=ea(j,-16)|0}if((d>>3|0)>3){k=g;i=e;return k|0}d=wg(0,b,d)|0;g=c[(c[f>>2]|0)+24>>2]|0;if((g&1|0)!=0){k=wg(0,b,6)|0;g=c[(c[f>>2]|0)+24>>2]|0;d=(d|0)<(k|0)?k:d}if((g&2|0)!=0){k=wg(0,b,2)|0;d=(d|0)<(k|0)?k:d}k=(ea(c[a>>2]|0,-16)|0)+(d<<16)|0;i=e;return k|0}function wg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=i;j=b+264|0;f=d>>3;e=30624+(f<<3)|0;a=30496+(f<<3)|0;k=(c[a>>2]|c[e>>2])&c[j>>2];j=(c[a+4>>2]|c[e+4>>2])&c[j+4>>2];e=b+320|0;a=k&c[e>>2];e=j&c[e+4>>2];h=b+328|0;b=k&c[h>>2];h=j&c[h+4>>2];j=d&7;d=j>>>0<6?j:6;d=d>>>0>1?d:1;k=d+1|0;d=d+-1|0;l=263;while(1){m=30432+(d<<3)|0;n=m;o=c[n>>2]|0;n=c[n+4>>2]|0;q=a&o;p=e&n;if((q|0)==0&(p|0)==0){m=0}else{o=(bd(q,p)|0)>>3;n=m;m=o;o=c[n>>2]|0;n=c[n+4>>2]|0}o=b&o;n=h&n;if((o|0)==0&(n|0)==0){o=0}else{o=(bd(o,n)|0)>>3}if((0!=0?1:(c[29920+((o<<3|d)<<3)>>2]&8487168|0)!=0)&(j|0)==(d|0)?(f|0)==(o+-1|0):0){l=l+200|0}else{if((m|0)==0){n=0}else{n=(o|0)==(m+1|0)?2:1}l=l-(c[1007432+(m<<2)>>2]|0)-(c[1007464+(n<<5)+(o<<2)>>2]|0)|0}if((d|0)<(k|0)){d=d+1|0}else{break}}i=g;return l|0}function xg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;c[a+68>>2]=d;f=b+2220|0;c[a+92>>2]=c[(c[f>>2]|0)+24>>2]&12;a=a+84|0;c[a>>2]=0;h=b+328|0;j=b+264|0;g=c[j>>2]&c[h>>2];h=c[j+4>>2]&c[h+4>>2];if((g|0)==0&(h|0)==0){g=0}else{j=0;do{k=j;j=j+1|0;k=104480+(d<<6)+(k<<3)|0}while((c[k>>2]&g|0)==0?(c[k+4>>2]&h|0)==0:0);c[a>>2]=j;g=ea(j,-16)|0}if((d>>3^7|0)>3){k=g;i=e;return k|0}d=yg(0,b,d)|0;g=c[(c[f>>2]|0)+24>>2]|0;if((g&4|0)!=0){k=yg(0,b,62)|0;g=c[(c[f>>2]|0)+24>>2]|0;d=(d|0)<(k|0)?k:d}if((g&8|0)!=0){k=yg(0,b,58)|0;d=(d|0)<(k|0)?k:d}k=(ea(c[a>>2]|0,-16)|0)+(d<<16)|0;i=e;return k|0}function yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=i;k=b+264|0;j=d>>3;e=30688+(j<<3)|0;a=30496+(j<<3)|0;g=(c[a>>2]|c[e>>2])&c[k>>2];k=(c[a+4>>2]|c[e+4>>2])&c[k+4>>2];e=b+328|0;a=g&c[e>>2];e=k&c[e+4>>2];b=b+320|0;g=g&c[b>>2];b=k&c[b+4>>2];k=d&7;h=k>>>0<6?k:6;h=h>>>0>1?h:1;d=h+1|0;j=j^7;l=263;h=h+-1|0;while(1){p=30432+(h<<3)|0;n=p;o=c[n>>2]|0;n=c[n+4>>2]|0;m=a&o;q=e&n;if((m|0)==0&(q|0)==0){m=0}else{m=(dd(m,q)|0)>>3^7;n=p;o=c[n>>2]|0;n=c[n+4>>2]|0}o=g&o;n=b&n;if((o|0)==0&(n|0)==0){n=0}else{n=(dd(o,n)|0)>>3^7}if((0!=0?1:(c[29920+((n<<3|h)<<3)>>2]&8487168|0)!=0)&(k|0)==(h|0)?(j|0)==(n+-1|0):0){l=l+200|0}else{if((m|0)==0){o=0}else{o=(n|0)==(m+1|0)?2:1}l=l-(c[1007432+(m<<2)>>2]|0)-(c[1007464+(o<<5)+(n<<2)>>2]|0)|0}if((h|0)<(d|0)){h=h+1|0}else{break}}i=f;return l|0}function zg(){var a=0,b=0,d=0,e=0,f=0,g=0;a=i;b=0;do{f=ea(ea(b+-1|0,b)|0,b+-2|0)|0;g=((b|0)/2|0)+1|0;d=(g+f|0)*65537|0;c[1007176+(b<<2)>>2]=d;e=((g*3|0)+f|0)*65537|0;c[1007208+(b<<2)>>2]=e;c[1007240+(b<<2)>>2]=e;f=((g<<2)+f|0)*65537|0;c[1007272+(b<<2)>>2]=f;c[1007304+(b<<2)>>2]=f;c[1007336+(b<<2)>>2]=e;c[1007368+(b<<2)>>2]=e;c[1007400+(b<<2)>>2]=d;b=b+1|0}while((b|0)!=7);i=a;return}function Ag(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;d=i;m=c[a+2220>>2]|0;j=c[m>>2]|0;m=c[m+4>>2]|0;e=j&16383;b=c[b>>2]|0;f=b+(e*120|0)|0;Q=f;if((c[Q>>2]|0)==(j|0)?(c[Q+4>>2]|0)==(m|0):0){i=d;return f|0}t=f;c[t>>2]=j;c[t+4>>2]=m;j=a+320|0;t=j;n=a+264|0;r=n;u=c[r>>2]|0;r=c[r+4>>2]|0;s=u&c[t>>2];t=r&c[t+4>>2];m=a+328|0;v=m;u=c[v>>2]&u;r=c[v+4>>2]&r;v=b+(e*120|0)+32|0;q=v;c[q>>2]=0;c[q+4>>2]=0;q=b+(e*120|0)+16|0;o=q;c[o>>2]=0;c[o+4>>2]=0;c[b+(e*120|0)+64>>2]=64;o=b+(e*120|0)+96|0;c[o>>2]=255;P=Mt(s|0,t|0,9)|0;p=I&-16843010;Q=Mt(s|0,t|0,7)|0;z=b+(e*120|0)+48|0;c[z>>2]=P&-16843264|Q&2139062016;c[z+4>>2]=p|I&2139062143;z=s&-1437226411;z=z-(z>>>1&1426085120)|0;p=Kt(s|0,t|0,33)|0;p=(t&-1437226411)-(p&1426085120)|0;z=(ea((z&858993425)+(p&858993425)+(p>>>2&858993425)+(z>>>2&858993425)|0,286331153)|0)>>>28;c[b+(e*120|0)+108>>2]=z;p=a+340|0;c[b+(e*120|0)+104>>2]=(c[p>>2]|0)-z;z=c[a+464>>2]|0;a:do{if((z|0)==64){k=0}else{w=u|s;x=r|t;A=255;K=0;y=a+468|0;while(1){C=z&7;c[o>>2]=A&~(1<<C);M=30496+(z+-8>>3<<3)|0;L=c[M>>2]|0;M=c[M+4>>2]|0;A=z>>3;D=30496+(A<<3)|0;P=30560+(C<<3)|0;H=c[P>>2]&s;P=c[P+4>>2]&t;D=(H&(c[D>>2]|L)|0)!=0?1:(P&(c[D+4>>2]|M)|0)!=0;L=H&L;M=P&M;P=(H|0)==0&(P|0)==0;H=108576+(z<<3)|0;O=c[H>>2]|0;H=c[H+4>>2]|0;J=O&s;G=H&t;H=(O&u|0)!=0|(H&r|0)!=0;O=109600+(z<<3)|0;N=c[O>>2]&u;O=c[O+4>>2]&r;B=31264+(z<<3)|0;B=(c[B>>2]&u|0)==0?(c[B+4>>2]&r|0)==0:0;E=(N|0)==0&(O|0)==0&1;Q=P&1;if((D&1|Q|E|0)==0?(F=111136+(z<<3)|0,!(((c[F>>2]&s|0)!=0?1:(c[F+4>>2]&t|0)!=0)|B^1)):0){F=110624+(z<<3)|0;R=c[F>>2]|0;F=c[F+4>>2]|0;S=30496+((bd(R&w,F&x)|0)>>3<<3)|0;R=c[S>>2]&R;F=c[S+4>>2]&F;S=Mt(R|0,F|0,8)|0;F=((S|R)&u|0)!=0|((I|F)&r|0)!=0}else{F=0}H=H&1;if((H|Q|E|F&1|0)==0?(l=111136+(z+8<<3)|0,k=c[l>>2]&s,l=c[l+4>>2]&t,!((k|0)==0&(l|0)==0)):0){Q=k-(k>>>1&1431655765)|0;R=Kt(k|0,l|0,33)|0;R=l-(R&1431655765)|0;R=(ea((R&858993459)+(Q&858993459)+(Q>>>2&858993459)+(R>>>2&858993459)|0,286331153)|0)>>>28;Q=110624+(z<<3)|0;E=c[Q>>2]&u;Q=c[Q+4>>2]&r;S=E-(E>>>1&1431655765)|0;E=Kt(E|0,Q|0,33)|0;E=Q-(E&1431655765)|0;E=R>>>0>=(ea((E&858993459)+(S&858993459)+(S>>>2&858993459)+(E>>>2&858993459)|0,286331153)|0)>>>28>>>0}else{E=0}if((N|J|0)==0&(O|G|0)==0){Q=29920+(z<<3)|0;O=q;R=c[O+4>>2]|c[Q+4>>2];S=q;c[S>>2]=c[O>>2]|c[Q>>2];c[S+4>>2]=R}if(P){K=K-(c[1006984+(H<<5)+(C<<2)>>2]|0)|0}else{K=(L|0)!=0|(M|0)!=0?K:K+-1310730|0}L=(J|0)!=0|(G|0)!=0;if(L){R=c[1006952+(C<<2)>>2]|0;S=A-((bd(J,G)|0)>>3)|0;S=(S|0)>-1?S:0-S|0;K=K-(((R&32767)-(R&32768)|0)/(S|0)|0)-((((R+32768&-65536|0)/65536|0|0)/(S|0)|0)<<16)|0}if(F){K=K-(c[1007048+(H<<5)+(C<<2)>>2]|0)|0}if(D){K=(c[1007176+(C<<5)+(A<<2)>>2]|0)+K|0}if(!B){K=(c[1007144+(A<<2)>>2]|0)+K|0}if(E){K=(c[1007112+(A<<2)>>2]|0)+K|0;if(!L){Q=29920+(z<<3)|0;P=v;R=c[P+4>>2]|c[Q+4>>2];S=v;c[S>>2]=c[P>>2]|c[Q>>2];c[S+4>>2]=R}}z=c[y>>2]|0;if((z|0)==64){k=K;break a}A=c[o>>2]|0;y=y+4|0}}}while(0);if((c[p>>2]|0)>1){R=c[o>>2]^255;S=((R|0)<0)<<31>>31;Q=dd(R,S)|0;k=((Q-(bd(R,S)|0)|0)*15|0)+k|0}o=m;r=n;q=c[r>>2]|0;r=c[r+4>>2]|0;l=q&c[o>>2];n=r&c[o+4>>2];o=j;q=c[o>>2]&q;r=c[o+4>>2]&r;o=b+(e*120|0)+40|0;p=o;c[p>>2]=0;c[p+4>>2]=0;p=b+(e*120|0)+24|0;j=p;c[j>>2]=0;c[j+4>>2]=0;c[b+(e*120|0)+68>>2]=64;j=b+(e*120|0)+100|0;c[j>>2]=255;R=Kt(l|0,n|0,9)|0;m=I&8355711;S=Kt(l|0,n|0,7)|0;u=b+(e*120|0)+56|0;c[u>>2]=R&2139062143|S&-16843010;c[u+4>>2]=m|I&16711422;u=l&-1437226411;u=u-(u>>>1&1426085120)|0;m=Kt(l|0,n|0,33)|0;m=(n&-1437226411)-(m&1426085120)|0;u=(ea((u&858993425)+(m&858993425)+(m>>>2&858993425)+(u>>>2&858993425)|0,286331153)|0)>>>28;c[b+(e*120|0)+116>>2]=u;m=a+372|0;c[b+(e*120|0)+112>>2]=(c[m>>2]|0)-u;u=c[a+976>>2]|0;b:do{if((u|0)==64){D=0}else{s=q|l;t=r|n;v=255;D=0;a=a+980|0;while(1){x=u&7;c[j>>2]=v&~(1<<x);K=30496+(u+8>>3<<3)|0;F=c[K>>2]|0;K=c[K+4>>2]|0;v=u>>3;y=30496+(v<<3)|0;J=30560+(x<<3)|0;B=c[J>>2]&l;J=c[J+4>>2]&n;y=(B&(c[y>>2]|F)|0)!=0?1:(J&(c[y+4>>2]|K)|0)!=0;F=B&F;K=J&K;J=(B|0)==0&(J|0)==0;B=109088+(u<<3)|0;G=c[B>>2]|0;B=c[B+4>>2]|0;E=G&l;C=B&n;B=(G&q|0)!=0|(B&r|0)!=0;G=110112+(u<<3)|0;H=c[G>>2]&q;G=c[G+4>>2]&r;w=35360+(u<<3)|0;w=(c[w>>2]&q|0)==0?(c[w+4>>2]&r|0)==0:0;L=(H|0)==0&(G|0)==0&1;z=J&1;if((y&1|z|L|0)==0?(S=110624+(u<<3)|0,!(((c[S>>2]&l|0)!=0?1:(c[S+4>>2]&n|0)!=0)|w^1)):0){A=111136+(u<<3)|0;S=c[A>>2]|0;A=c[A+4>>2]|0;R=30496+((dd(S&s,A&t)|0)>>3<<3)|0;S=c[R>>2]&S;A=c[R+4>>2]&A;R=Kt(S|0,A|0,8)|0;A=((R|S)&q|0)!=0|((I|A)&r|0)!=0}else{A=0}B=B&1;if((B|z|L|A&1|0)==0?(h=110624+(u+-8<<3)|0,g=c[h>>2]&l,h=c[h+4>>2]&n,!((g|0)==0&(h|0)==0)):0){Q=g-(g>>>1&1431655765)|0;R=Kt(g|0,h|0,33)|0;R=h-(R&1431655765)|0;R=(ea((R&858993459)+(Q&858993459)+(Q>>>2&858993459)+(R>>>2&858993459)|0,286331153)|0)>>>28;Q=111136+(u<<3)|0;z=c[Q>>2]&q;Q=c[Q+4>>2]&r;S=z-(z>>>1&1431655765)|0;z=Kt(z|0,Q|0,33)|0;z=Q-(z&1431655765)|0;z=R>>>0>=(ea((z&858993459)+(S&858993459)+(S>>>2&858993459)+(z>>>2&858993459)|0,286331153)|0)>>>28>>>0}else{z=0}if((H|E|0)==0&(G|C|0)==0){Q=29920+(u<<3)|0;P=p;R=c[P+4>>2]|c[Q+4>>2];S=p;c[S>>2]=c[P>>2]|c[Q>>2];c[S+4>>2]=R}if(J){D=D-(c[1006984+(B<<5)+(x<<2)>>2]|0)|0}else{D=(F|0)!=0|(K|0)!=0?D:D+-1310730|0}F=(E|0)!=0|(C|0)!=0;if(F){R=c[1006952+(x<<2)>>2]|0;S=v-((bd(E,C)|0)>>3)|0;S=(S|0)>-1?S:0-S|0;D=D-(((R&32767)-(R&32768)|0)/(S|0)|0)-((((R+32768&-65536|0)/65536|0|0)/(S|0)|0)<<16)|0}if(A){D=D-(c[1007048+(B<<5)+(x<<2)>>2]|0)|0}if(y){D=(c[1007176+(x<<5)+((v^7)<<2)>>2]|0)+D|0}if(!w){D=(c[1007144+((v^7)<<2)>>2]|0)+D|0}if(z){D=(c[1007112+((v^7)<<2)>>2]|0)+D|0;if(!F){Q=29920+(u<<3)|0;P=o;R=c[P+4>>2]|c[Q+4>>2];S=o;c[S>>2]=c[P>>2]|c[Q>>2];c[S+4>>2]=R}}u=c[a>>2]|0;if((u|0)==64){break b}v=c[j>>2]|0;a=a+4|0}}}while(0);if((c[m>>2]|0)>1){R=c[j>>2]^255;S=((R|0)<0)<<31>>31;Q=dd(R,S)|0;D=((Q-(bd(R,S)|0)|0)*15|0)+D|0}c[b+(e*120|0)+8>>2]=k-D;i=d;return f|0}function Bg(a){a=a|0;var b=0,d=0;d=i;a=(c[a+2220>>2]|0)+48|0;b=1017904;I=c[b+4>>2]^c[a+4>>2];i=d;return c[b>>2]^c[a>>2]|0}function sc(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+7&-8;return b|0}function tc(){return i|0}function uc(a){a=a|0;i=a}function vc(a,b){a=a|0;b=b|0;if((t|0)==0){t=a;u=b}}function wc(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function xc(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function yc(a){a=a|0;I=a}function zc(){return I|0}function Ac(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;e=i;i=i+4592|0;p=e+4584|0;f=e+4568|0;g=e+4512|0;h=e+4500|0;o=e+4488|0;n=e+4476|0;l=e+4464|0;m=e+4452|0;k=e+4440|0;C=e+4428|0;w=e+4416|0;B=e+4404|0;y=e+4392|0;t=e+72|0;q=e+4388|0;r=e+4376|0;s=e+2320|0;v=e;u=e+2304|0;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;P=g+0|0;O=P+56|0;do{c[P>>2]=0;P=P+4|0}while((P|0)<(O|0));c[h>>2]=0;j=h+4|0;c[j>>2]=0;A=h+8|0;c[A>>2]=0;S=Bc(d,f)|0;do{if((c[S+((c[(c[S>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0){if((a[f>>0]&1)==0){c[o+0>>2]=c[f+0>>2];c[o+4>>2]=c[f+4>>2];c[o+8>>2]=c[f+8>>2];break}F=c[f+8>>2]|0;D=c[f+4>>2]|0;if(D>>>0<11){a[o>>0]=D<<1;E=o+1|0}else{S=D+16&-16;E=Vs(S)|0;c[o+8>>2]=E;c[o>>2]=S|1;c[o+4>>2]=D}Nt(E|0,F|0,D|0)|0;a[E+D>>0]=0}else{a[o>>0]=4;S=o+1|0;a[S>>0]=12851;a[S+1>>0]=50;a[o+3>>0]=0}}while(0);S=Bc(d,f)|0;do{if((c[S+((c[(c[S>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0){if((a[f>>0]&1)==0){c[n+0>>2]=c[f+0>>2];c[n+4>>2]=c[f+4>>2];c[n+8>>2]=c[f+8>>2];break}D=c[f+8>>2]|0;F=c[f+4>>2]|0;if(F>>>0<11){a[n>>0]=F<<1;E=n+1|0}else{S=F+16&-16;E=Vs(S)|0;c[n+8>>2]=E;c[n>>2]=S|1;c[n+4>>2]=F}Nt(E|0,D|0,F|0)|0;a[E+F>>0]=0}else{a[n>>0]=2;a[n+1>>0]=49;a[n+2>>0]=0}}while(0);S=Bc(d,f)|0;do{if((c[S+((c[(c[S>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0){if((a[f>>0]&1)==0){c[l+0>>2]=c[f+0>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];break}E=c[f+8>>2]|0;D=c[f+4>>2]|0;if(D>>>0<11){a[l>>0]=D<<1;F=l+1|0}else{S=D+16&-16;F=Vs(S)|0;c[l+8>>2]=F;c[l>>2]=S|1;c[l+4>>2]=D}Nt(F|0,E|0,D|0)|0;a[F+D>>0]=0}else{a[l>>0]=4;S=l+1|0;a[S>>0]=13105;
+a[S+1>>0]=51;a[l+3>>0]=0}}while(0);S=Bc(d,f)|0;do{if((c[S+((c[(c[S>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0){if((a[f>>0]&1)==0){c[m+0>>2]=c[f+0>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];break}E=c[f+8>>2]|0;D=c[f+4>>2]|0;if(D>>>0<11){a[m>>0]=D<<1;F=m+1|0}else{S=D+16&-16;F=Vs(S)|0;c[m+8>>2]=F;c[m>>2]=S|1;c[m+4>>2]=D}Nt(F|0,E|0,D|0)|0;a[F+D>>0]=0}else{a[m>>0]=14;S=m+1|0;a[S+0>>0]=a[8>>0]|0;a[S+1>>0]=a[9>>0]|0;a[S+2>>0]=a[10>>0]|0;a[S+3>>0]=a[11>>0]|0;a[S+4>>0]=a[12>>0]|0;a[S+5>>0]=a[13>>0]|0;a[S+6>>0]=a[14>>0]|0;a[m+8>>0]=0}}while(0);S=Bc(d,f)|0;do{if((c[S+((c[(c[S>>2]|0)+-12>>2]|0)+16)>>2]&5|0)==0){if((a[f>>0]&1)==0){c[k+0>>2]=c[f+0>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];break}d=c[f+8>>2]|0;D=c[f+4>>2]|0;if(D>>>0<11){a[k>>0]=D<<1;E=k+1|0}else{S=D+16&-16;E=Vs(S)|0;c[k+8>>2]=E;c[k>>2]=S|1;c[k+4>>2]=D}Nt(E|0,d|0,D|0)|0;a[E+D>>0]=0}else{a[k>>0]=10;S=k+1|0;a[S+0>>0]=a[16>>0]|0;a[S+1>>0]=a[17>>0]|0;a[S+2>>0]=a[18>>0]|0;a[S+3>>0]=a[19>>0]|0;a[S+4>>0]=a[20>>0]|0;a[k+6>>0]=0}}while(0);a[C>>0]=8;S=C+1|0;a[S>>0]=1752392008;a[S+1>>0]=6845281;a[S+2>>0]=26739;a[S+3>>0]=104;a[C+5>>0]=0;Ui(Cc(1077312,C)|0,o)|0;if(!((a[C>>0]&1)==0)){Ys(c[C+8>>2]|0)}a[w>>0]=14;C=w+1|0;a[C+0>>0]=a[24>>0]|0;a[C+1>>0]=a[25>>0]|0;a[C+2>>0]=a[26>>0]|0;a[C+3>>0]=a[27>>0]|0;a[C+4>>0]=a[28>>0]|0;a[C+5>>0]=a[29>>0]|0;a[C+6>>0]=a[30>>0]|0;C=w+8|0;a[C>>0]=0;Ui(Cc(1077312,w)|0,n)|0;if(!((a[w>>0]&1)==0)){Ys(c[C>>2]|0)}yi(1074424);w=a[k>>0]|0;C=(w&1)==0;if(C){d=(w&255)>>>1;D=k+1|0}else{d=c[k+4>>2]|0;D=c[k+8>>2]|0}E=d>>>0>4;if((Ft(D,32,E?4:d)|0)==0?d>>>0>3&(E^1):0){w=a[l>>0]|0;if((w&1)==0){C=l+1|0}else{C=c[l+8>>2]|0}c[g+40>>2]=(At(C)|0)*1e3}else{x=54}do{if((x|0)==54){if(C){d=(w&255)>>>1;D=k+1|0}else{d=c[k+4>>2]|0;D=c[k+8>>2]|0}x=d>>>0>5;if((Ft(D,40,x?5:d)|0)==0?d>>>0>4&(x^1):0){w=a[l>>0]|0;if((w&1)==0){x=l+1|0}else{x=c[l+8>>2]|0}c[g+36>>2]=At(x)|0;break}if(C){w=(w&255)>>>1;C=k+1|0}else{w=c[k+4>>2]|0;C=c[k+8>>2]|0}x=w>>>0>4;C=Ft(C,48,x?4:w)|0;if((C|0)==0){x=w>>>0<4?-1:x&1}else{x=C}w=a[l>>0]|0;if((w&1)==0){C=l+1|0}else{C=c[l+8>>2]|0}C=At(C)|0;if((x|0)==0){c[g+44>>2]=C;break}else{c[g+32>>2]=C;break}}}while(0);d=a[m>>0]|0;C=(d&1)==0;if(C){x=(d&255)>>>1;D=m+1|0}else{x=c[m+4>>2]|0;D=c[m+8>>2]|0}E=x>>>0>7;if((Ft(D,8,E?7:x)|0)==0?x>>>0>6&(E^1):0){Dc(h,56,176|0);x=128}else{x=80}do{if((x|0)==80){if(C){D=(d&255)>>>1;E=m+1|0}else{D=c[m+4>>2]|0;E=c[m+8>>2]|0}d=D>>>0>7;if((Ft(E,176,d?7:D)|0)==0?D>>>0>6&(d^1):0){Kg(B,b);y=c[j>>2]|0;if((y|0)==(c[A>>2]|0)){Zc(h,B)}else{do{if((y|0)!=0){if((a[B>>0]&1)==0){c[y+0>>2]=c[B+0>>2];c[y+4>>2]=c[B+4>>2];c[y+8>>2]=c[B+8>>2];break}x=c[B+8>>2]|0;z=c[B+4>>2]|0;if(z>>>0<11){a[y>>0]=z<<1;y=y+1|0}else{R=z+16&-16;S=Vs(R)|0;c[y+8>>2]=S;c[y>>2]=R|1;c[y+4>>2]=z;y=S}Nt(y|0,x|0,z|0)|0;a[y+z>>0]=0}}while(0);c[j>>2]=(c[j>>2]|0)+12}if((a[B>>0]&1)==0){x=128;break}Ys(c[B+8>>2]|0);x=128;break}c[y+0>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;if(C){D=m+1|0}else{D=c[m+8>>2]|0}d=t+108|0;B=t+8|0;c[t>>2]=444;c[d>>2]=464;c[t+4>>2]=0;C=t+108|0;Ck(C,B);c[t+180>>2]=0;c[t+184>>2]=-1;c[t>>2]=404;c[d>>2]=424;Yc(B);b=t+72|0;if((c[b>>2]|0)==0?(S=Wb(D|0,536)|0,c[b>>2]=S,(S|0)!=0):0){c[t+96>>2]=8}else{x=103}if((x|0)==103?(S=c[(c[t>>2]|0)+-12>>2]|0,xk(t+S|0,c[t+(S+16)>>2]|4),(c[b>>2]|0)==0):0){S=Ec(Fc(1078208,184)|0,m)|0;Bk(p,S+(c[(c[S>>2]|0)+-12>>2]|0)|0);R=Sp(p,1082848)|0;R=pc[c[(c[R>>2]|0)+28>>2]&63](R,10)|0;Qp(p);zl(S,R)|0;il(S)|0;c[t>>2]=404;c[d>>2]=424;Oc(B);yk(C);if((a[y>>0]&1)==0){break}Ys(c[y+8>>2]|0);break}x=y+8|0;D=y+4|0;while(1){Bk(p,t+(c[(c[t>>2]|0)+-12>>2]|0)|0);S=Sp(p,1082848)|0;S=pc[c[(c[S>>2]|0)+28>>2]&63](S,10)|0;Qp(p);S=Jc(t,y,S)|0;if((c[S+((c[(c[S>>2]|0)+-12>>2]|0)+16)>>2]&5|0)!=0){break}F=a[y>>0]|0;E=(F&1)==0;if(E){F=(F&255)>>>1}else{F=c[D>>2]|0}if((F|0)==0){continue}F=c[j>>2]|0;if((F|0)==(c[A>>2]|0)){Zc(h,y);continue}do{if((F|0)!=0){if(E){c[F+0>>2]=c[y+0>>2];c[F+4>>2]=c[y+4>>2];c[F+8>>2]=c[y+8>>2];break}G=c[x>>2]|0;E=c[D>>2]|0;if(E>>>0<11){a[F>>0]=E<<1;F=F+1|0}else{R=E+16&-16;S=Vs(R)|0;c[F+8>>2]=S;c[F>>2]=R|1;c[F+4>>2]=E;F=S}Nt(F|0,G|0,E|0)|0;a[F+E>>0]=0}}while(0);c[j>>2]=(c[j>>2]|0)+12}A=c[b>>2]|0;if(!(((A|0)!=0?(z=gc[c[(c[B>>2]|0)+24>>2]&127](B)|0,(yb(A|0)|0)==0):0)?(c[b>>2]=0,(z|0)==0):0)){S=c[(c[t>>2]|0)+-12>>2]|0;xk(t+S|0,c[t+(S+16)>>2]|4)}c[t>>2]=404;c[d>>2]=424;Oc(B);yk(C);if((a[y>>0]&1)==0){x=128}else{Ys(c[x>>2]|0);x=128}}}while(0);if((x|0)==128){c[q>>2]=0;Yb(p|0,0)|0;z=c[p>>2]|0;y=((z|0)<0)<<31>>31;A=(c[p+4>>2]|0)/1e3|0;B=((A|0)<0)<<31>>31;O=c[h>>2]|0;if((c[j>>2]|0)==(O|0)){N=0;M=0}else{K=r+8|0;F=r+4|0;b=k+1|0;D=s+2048|0;E=s+2052|0;J=g+32|0;H=t+2224|0;G=u+8|0;d=k+4|0;C=k+8|0;N=0;M=0;L=0;do{R=O+(L*12|0)|0;S=Vs(16)|0;c[K>>2]=S;c[r>>2]=17;c[F>>2]=12;P=S+0|0;Q=208|0;O=P+12|0;do{a[P>>0]=a[Q>>0]|0;P=P+1|0;Q=Q+1|0}while((P|0)<(O|0));a[S+12>>0]=0;S=(Ii(Cc(1077312,r)|0)|0)!=0;Gg(t,R,S,c[c[268548]>>2]|0);if(!((a[r>>0]&1)==0)){Ys(c[K>>2]|0)}L=L+1|0;P=Hc(vl(Fc(1078208,224)|0,L)|0,47)|0;P=vl(P,((c[j>>2]|0)-(c[h>>2]|0)|0)/12|0)|0;Bk(p,P+(c[(c[P>>2]|0)+-12>>2]|0)|0);O=Sp(p,1082848)|0;O=pc[c[(c[O>>2]|0)+28>>2]&63](O,10)|0;Qp(p);zl(P,O)|0;il(P)|0;P=a[k>>0]|0;O=(P&1)==0;if(O){S=(P&255)>>>1;R=b}else{S=c[d>>2]|0;R=c[C>>2]|0}Q=S>>>0>6;do{if((Ft(R,240,Q?6:S)|0)==0?S>>>0>5&(Q^1):0){c[D>>2]=s;O=cg(t,s)|0;c[E>>2]=O;c[O>>2]=0;O=c[c[D>>2]>>2]|0;if((O|0)==0){break}do{Sg(t,O,v);O=c[J>>2]|0;if((O|0)>1){P=mh(t,(O<<1)+-2|0)|0;O=I}else{P=1;O=0}Vg(t,c[c[D>>2]>>2]|0);og(u,c[c[D>>2]>>2]|0,(a[H>>0]|0)!=0);S=xl(Fc(Ec(1078208,u)|0,248)|0,P,O)|0;Bk(p,S+(c[(c[S>>2]|0)+-12>>2]|0)|0);R=Sp(p,1082848)|0;R=pc[c[(c[R>>2]|0)+28>>2]&63](R,10)|0;Qp(p);zl(S,R)|0;il(S)|0;if(!((a[u>>0]&1)==0)){Ys(c[G>>2]|0)}N=Jt(P|0,O|0,N|0,M|0)|0;M=I;O=(c[D>>2]|0)+8|0;c[D>>2]=O;O=c[O>>2]|0}while((O|0)!=0)}else{x=143}}while(0);a:do{if((x|0)==143){x=0;if(O){O=(P&255)>>>1;P=b}else{O=c[d>>2]|0;P=c[C>>2]|0}Q=O>>>0>5;do{if((Ft(P,256,Q?5:O)|0)==0){if(!(O>>>0>4&(Q^1))){break}R=mh(t,c[J>>2]<<1)|0;S=I;Q=Fc(1078208,264)|0;Q=xl(Fc(ul(Q,c[J>>2]|0)|0,272)|0,R,S)|0;Bk(p,Q+(c[(c[Q>>2]|0)+-12>>2]|0)|0);P=Sp(p,1082848)|0;P=pc[c[(c[P>>2]|0)+28>>2]&63](P,10)|0;Qp(p);zl(Q,P)|0;il(Q)|0;N=Jt(R|0,S|0,N|0,M|0)|0;M=I;break a}}while(0);pi(1074192,t,g,q);S=1024728|0;N=Jt(c[S>>2]|0,c[S+4>>2]|0,N|0,M|0)|0;M=I}}while(0);O=c[h>>2]|0}while(L>>>0<(((c[j>>2]|0)-O|0)/12|0)>>>0)}Yb(p|0,0)|0;R=c[p>>2]|0;R=Vt(R|0,((R|0)<0)<<31>>31|0,1e3,0)|0;S=I;Q=(c[p+4>>2]|0)/1e3|0;P=Vt(z|0,y|0,-1e3,-1)|0;P=Ht(P|1|0,I|0,A|0,B|0)|0;S=Jt(P|0,I|0,R|0,S|0)|0;Q=Jt(S|0,I|0,Q|0,((Q|0)<0)<<31>>31|0)|0;S=I;Hf();R=Fc(xl(Fc(wl(Fc(Fc(1078208,288)|0,320)|0,Q,S)|0,344)|0,N,M)|0,368)|0;P=Vt(N|0,M|0,1e3,0)|0;S=Wt(P|0,I|0,Q|0,S|0)|0;S=xl(R,S,I)|0;Bk(p,S+(c[(c[S>>2]|0)+-12>>2]|0)|0);R=Sp(p,1082848)|0;R=pc[c[(c[R>>2]|0)+28>>2]&63](R,10)|0;Qp(p);zl(S,R)|0;il(S)|0;p=c[q>>2]|0;if((p|0)!=0){r=p+4|0;t=c[r>>2]|0;s=p+16|0;z=c[s>>2]|0;y=t+(((z>>>0)/56|0)<<2)|0;q=p+8|0;x=c[q>>2]|0;if((x|0)==(t|0)){v=0;u=p+20|0;z=0}else{u=p+20|0;v=(c[u>>2]|0)+z|0;v=(c[t+(((v>>>0)/56|0)<<2)>>2]|0)+(((v>>>0)%56|0)*72|0)|0;z=(c[y>>2]|0)+(((z>>>0)%56|0)*72|0)|0}b:while(1){do{if((z|0)==(v|0)){break b}z=z+72|0}while((z-(c[y>>2]|0)|0)!=4032);S=y+4|0;z=c[S>>2]|0;y=S}c[u>>2]=0;u=x-t>>2;if(u>>>0>2){do{Ys(c[t>>2]|0);t=(c[r>>2]|0)+4|0;c[r>>2]=t;u=(c[q>>2]|0)-t>>2}while(u>>>0>2)}if((u|0)==1){c[s>>2]=28}else if((u|0)==2){c[s>>2]=56}t=c[r>>2]|0;s=c[q>>2]|0;if((t|0)!=(s|0)){do{Ys(c[t>>2]|0);t=t+4|0}while((t|0)!=(s|0));s=c[r>>2]|0;r=c[q>>2]|0;if((r|0)!=(s|0)){c[q>>2]=r+(~((r+-4+(0-s)|0)>>>2)<<2)}}q=c[p>>2]|0;if((q|0)!=0){Ys(q)}Ys(p)}}if(!((a[k>>0]&1)==0)){Ys(c[k+8>>2]|0)}if(!((a[m>>0]&1)==0)){Ys(c[m+8>>2]|0)}if(!((w&1)==0)){Ys(c[l+8>>2]|0)}if(!((a[n>>0]&1)==0)){Ys(c[n+8>>2]|0)}if(!((a[o>>0]&1)==0)){Ys(c[o+8>>2]|0)}k=c[h>>2]|0;if((k|0)!=0){l=c[j>>2]|0;if((l|0)!=(k|0)){do{m=l+-12|0;c[j>>2]=m;if((a[m>>0]&1)==0){l=m}else{Ys(c[l+-4>>2]|0);l=c[j>>2]|0}}while((l|0)!=(k|0));k=c[h>>2]|0}Ys(k)}h=c[g>>2]|0;if((h|0)!=0){g=g+4|0;j=c[g>>2]|0;if((j|0)!=(h|0)){c[g>>2]=j+(~((j+-4+(0-h)|0)>>>2)<<2)}Ys(h)}if((a[f>>0]&1)==0){i=e;return}Ys(c[f+8>>2]|0);i=e;return}function Bc(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;g=i;i=i+16|0;n=g+4|0;j=g;hl(n,e,0);if((a[n>>0]|0)==0){n=c[(c[e>>2]|0)+-12>>2]|0;xk(e+n|0,c[e+(n+16)>>2]|4);i=g;return e|0}if((a[f>>0]&1)==0){a[f+1>>0]=0;a[f>>0]=0}else{a[c[f+8>>2]>>0]=0;c[f+4>>2]=0}k=c[(c[e>>2]|0)+-12>>2]|0;h=c[e+(k+12)>>2]|0;h=(h|0)<1?2147483647:h;Bk(j,e+k|0);k=Sp(j,1082848)|0;Qp(j);a:do{if((h|0)>0){j=k+8|0;k=0;while(1){l=c[e+((c[(c[e>>2]|0)+-12>>2]|0)+24)>>2]|0;m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0)){l=gc[c[(c[l>>2]|0)+36>>2]&127](l)|0;if((l|0)==-1){f=2;break a}}else{l=d[m>>0]|0}m=l&255;if(m<<24>>24>-1?!((b[(c[j>>2]|0)+(l<<24>>24<<1)>>1]&8192)==0):0){f=0;break a}ik(f,m);k=k+1|0;n=c[e+((c[(c[e>>2]|0)+-12>>2]|0)+24)>>2]|0;m=n+12|0;l=c[m>>2]|0;if((l|0)==(c[n+16>>2]|0)){gc[c[(c[n>>2]|0)+40>>2]&127](n)|0}else{c[m>>2]=l+1}if((k|0)>=(h|0)){f=0;break}}}else{k=0;f=0}}while(0);c[e+((c[(c[e>>2]|0)+-12>>2]|0)+12)>>2]=0;n=c[(c[e>>2]|0)+-12>>2]|0;xk(e+n|0,c[e+(n+16)>>2]|((k|0)==0?f|4:f));i=g;return e|0}function Cc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+16|0;h=e;f=b+4|0;j=c[f>>2]|0;do{if((j|0)!=0){k=b+8|0;while(1){g=j+16|0;if(Ni(k,d,g)|0){g=c[j>>2]|0;if((g|0)==0){k=5;break}else{j=g;continue}}if(!(Ni(k,g,d)|0)){k=9;break}g=j+4|0;l=c[g>>2]|0;if((l|0)==0){k=8;break}else{j=l}}if((k|0)==5){c[h>>2]=j;g=j;break}else if((k|0)==8){c[h>>2]=j;break}else if((k|0)==9){c[h>>2]=j;g=h;break}}else{j=b+4|0;c[h>>2]=j;g=j}}while(0);h=c[g>>2]|0;if((h|0)!=0){l=h;l=l+28|0;i=e;return l|0}h=Vs(80)|0;l=h+16|0;if((a[d>>0]&1)==0){c[l+0>>2]=c[d+0>>2];c[l+4>>2]=c[d+4>>2];c[l+8>>2]=c[d+8>>2]}else{k=c[d+8>>2]|0;d=c[d+4>>2]|0;if(d>>>0<11){a[l>>0]=d<<1;l=h+17|0}else{n=d+16&-16;m=Vs(n)|0;c[h+24>>2]=m;c[l>>2]=n|1;c[h+20>>2]=d;l=m}Nt(l|0,k|0,d|0)|0;a[l+d>>0]=0}Qi(h+28|0,0);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=j;c[g>>2]=h;d=c[c[b>>2]>>2]|0;if((d|0)==0){d=h}else{c[b>>2]=d;d=c[g>>2]|0}_c(c[f>>2]|0,d);n=b+8|0;c[n>>2]=(c[n>>2]|0)+1;n=h;n=n+28|0;i=e;return n|0}function Dc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;k=d;j=e-k>>2;h=b+8|0;m=c[h>>2]|0;g=c[b>>2]|0;l=g;if(j>>>0>((m-l|0)/12|0)>>>0){if((g|0)!=0){k=b+4|0;l=c[k>>2]|0;if((l|0)!=(g|0)){do{m=l+-12|0;c[k>>2]=m;if((a[m>>0]&1)==0){l=m}else{Ys(c[l+-4>>2]|0);l=c[k>>2]|0}}while((l|0)!=(g|0));g=c[b>>2]|0}Ys(g);c[h>>2]=0;c[k>>2]=0;c[b>>2]=0;m=0}g=(m|0)/12|0;if(g>>>0<178956970){k=g<<1;k=k>>>0<j>>>0?j:k}else{k=357913941}j=Vs(k*12|0)|0;g=b+4|0;c[g>>2]=j;c[b>>2]=j;c[h>>2]=j+(k*12|0);if((d|0)==(e|0)){i=f;return}do{if((j|0)==0){b=0}else{h=c[d>>2]|0;b=It(h|0)|0;if(b>>>0<11){a[j>>0]=b<<1;j=j+1|0}else{l=b+16&-16;m=Vs(l)|0;c[j+8>>2]=m;c[j>>2]=l|1;c[j+4>>2]=b;j=m}Nt(j|0,h|0,b|0)|0;a[j+b>>0]=0;b=c[g>>2]|0}j=b+12|0;c[g>>2]=j;d=d+4|0}while((d|0)!=(e|0));i=f;return}b=b+4|0;h=((c[b>>2]|0)-l|0)/12|0;if(j>>>0>h>>>0){j=d+(h<<2)|0;h=1}else{j=e;h=0}if((j|0)!=(d|0)){k=j+-4+(0-k)|0;l=g;while(1){m=c[d>>2]|0;ek(l,m,It(m|0)|0)|0;d=d+4|0;if((d|0)==(j|0)){break}else{l=l+12|0}}g=g+(((k>>>2)+1|0)*12|0)|0}if(!h){d=c[b>>2]|0;if((d|0)==(g|0)){i=f;return}while(1){e=d+-12|0;c[b>>2]=e;if(!((a[e>>0]&1)==0)){Ys(c[d+-4>>2]|0);e=c[b>>2]|0}if((e|0)==(g|0)){break}else{d=e}}i=f;return}if((j|0)==(e|0)){i=f;return}h=c[b>>2]|0;do{if((h|0)==0){d=0}else{d=c[j>>2]|0;g=It(d|0)|0;if(g>>>0<11){a[h>>0]=g<<1;h=h+1|0}else{l=g+16&-16;m=Vs(l)|0;c[h+8>>2]=m;c[h>>2]=l|1;c[h+4>>2]=g;h=m}Nt(h|0,d|0,g|0)|0;a[h+g>>0]=0;d=c[b>>2]|0}h=d+12|0;c[b>>2]=h;j=j+4|0}while((j|0)!=(e|0));i=f;return}function Ec(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e;j=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(j+16)>>2]|0)==0){j=c[b+(j+72)>>2]|0;if((j|0)!=0){il(j)|0}j=a[d>>0]|0;l=(j&1)==0;if(l){k=(j&255)>>>1}else{k=c[d+4>>2]|0}j=c[(c[b>>2]|0)+-12>>2]|0;c[h>>2]=c[b+(j+24)>>2];if(l){if((c[b+(j+4)>>2]&176|0)==32){l=d+k+1|0}else{l=d+1|0}m=d+1|0;d=d+1|0}else{l=c[d+8>>2]|0;if((c[b+(j+4)>>2]&176|0)==32){l=l+k|0}m=c[d+8>>2]|0;d=c[d+8>>2]|0}m=m+k|0;k=b+j|0;j=b+(j+76)|0;n=c[j>>2]|0;if((n|0)==-1){Bk(f,k);n=Sp(f,1082848)|0;n=pc[c[(c[n>>2]|0)+28>>2]&63](n,32)|0;Qp(f);n=n<<24>>24;c[j>>2]=n}n=n&255;c[f+0>>2]=c[h+0>>2];Ic(g,f,d,l,m,k,n);if((c[g>>2]|0)==0){n=c[(c[b>>2]|0)+-12>>2]|0;xk(b+n|0,c[b+(n+16)>>2]|5)}}f=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(f+24)>>2]|0)==0){i=e;return b|0}if((c[b+(f+16)>>2]|0)!=0){i=e;return b|0}if((c[b+(f+4)>>2]&8192|0)==0){i=e;return b|0}if(Ua()|0){i=e;return b|0}n=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;if(!((gc[c[(c[n>>2]|0)+24>>2]&127](n)|0)==-1)){i=e;return b|0}n=c[(c[b>>2]|0)+-12>>2]|0;xk(b+n|0,c[b+(n+16)>>2]|1);i=e;return b|0}function Fc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;d=i;i=i+16|0;e=d+8|0;g=d+4|0;f=d;l=c[(c[a>>2]|0)+-12>>2]|0;if((c[a+(l+16)>>2]|0)==0){h=c[a+(l+72)>>2]|0;if((h|0)!=0){il(h)|0;l=c[(c[a>>2]|0)+-12>>2]|0}j=It(b|0)|0;c[g>>2]=c[a+(l+24)>>2];j=b+j|0;h=(c[a+(l+4)>>2]&176|0)==32?j:b;k=a+l|0;l=a+(l+76)|0;m=c[l>>2]|0;if((m|0)==-1){Bk(e,k);m=Sp(e,1082848)|0;m=pc[c[(c[m>>2]|0)+28>>2]&63](m,32)|0;Qp(e);m=m<<24>>24;c[l>>2]=m}m=m&255;c[e+0>>2]=c[g+0>>2];Ic(f,e,b,h,j,k,m);if((c[f>>2]|0)==0){m=c[(c[a>>2]|0)+-12>>2]|0;xk(a+m|0,c[a+(m+16)>>2]|5)}}e=c[(c[a>>2]|0)+-12>>2]|0;if((c[a+(e+24)>>2]|0)==0){i=d;return a|0}if((c[a+(e+16)>>2]|0)!=0){i=d;return a|0}if((c[a+(e+4)>>2]&8192|0)==0){i=d;return a|0}if(Ua()|0){i=d;return a|0}m=c[a+((c[(c[a>>2]|0)+-12>>2]|0)+24)>>2]|0;if(!((gc[c[(c[m>>2]|0)+24>>2]&127](m)|0)==-1)){i=d;return a|0}m=c[(c[a>>2]|0)+-12>>2]|0;xk(a+m|0,c[a+(m+16)>>2]|1);i=d;return a|0}function Gc(a){a=a|0;var b=0;b=i;c[a>>2]=404;c[a+108>>2]=424;Oc(a+8|0);yk(a+108|0);i=b;return}function Hc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+16|0;f=e+8|0;h=e+12|0;j=e+4|0;g=e;a[h>>0]=d;m=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(m+16)>>2]|0)==0){d=c[b+(m+72)>>2]|0;if((d|0)!=0){il(d)|0;m=c[(c[b>>2]|0)+-12>>2]|0}c[j>>2]=c[b+(m+24)>>2];l=b+m|0;k=h+1|0;d=(c[b+(m+4)>>2]&176|0)==32?k:h;m=b+(m+76)|0;n=c[m>>2]|0;if((n|0)==-1){Bk(f,l);n=Sp(f,1082848)|0;n=pc[c[(c[n>>2]|0)+28>>2]&63](n,32)|0;Qp(f);n=n<<24>>24;c[m>>2]=n}n=n&255;c[f+0>>2]=c[j+0>>2];Ic(g,f,h,d,k,l,n);if((c[g>>2]|0)==0){n=c[(c[b>>2]|0)+-12>>2]|0;xk(b+n|0,c[b+(n+16)>>2]|5)}}f=c[(c[b>>2]|0)+-12>>2]|0;if((c[b+(f+24)>>2]|0)==0){i=e;return b|0}if((c[b+(f+16)>>2]|0)!=0){i=e;return b|0}if((c[b+(f+4)>>2]&8192|0)==0){i=e;return b|0}if(Ua()|0){i=e;return b|0}n=c[b+((c[(c[b>>2]|0)+-12>>2]|0)+24)>>2]|0;if(!((gc[c[(c[n>>2]|0)+24>>2]&127](n)|0)==-1)){i=e;return b|0}n=c[(c[b>>2]|0)+-12>>2]|0;xk(b+n|0,c[b+(n+16)>>2]|1);i=e;return b|0}function Ic(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=i;i=i+16|0;m=l;k=c[d>>2]|0;if((k|0)==0){c[b>>2]=0;i=l;return}p=e;o=g-p|0;h=h+12|0;n=c[h>>2]|0;o=(n|0)>(o|0)?n-o|0:0;n=f;p=n-p|0;if((p|0)>0?(ac[c[(c[k>>2]|0)+48>>2]&31](k,e,p)|0)!=(p|0):0){c[d>>2]=0;c[b>>2]=0;i=l;return}do{if((o|0)>0){if(o>>>0<11){q=o<<1&255;a[m>>0]=q;e=m;p=m+1|0}else{q=o+16&-16;p=Vs(q)|0;c[m+8>>2]=p;q=q|1;c[m>>2]=q;c[m+4>>2]=o;e=m;q=q&255}Lt(p|0,j|0,o|0)|0;a[p+o>>0]=0;if((q&1)==0){j=m+1|0}else{j=c[m+8>>2]|0}if((ac[c[(c[k>>2]|0)+48>>2]&31](k,j,o)|0)==(o|0)){if((a[e>>0]&1)==0){break}Ys(c[m+8>>2]|0);break}c[d>>2]=0;c[b>>2]=0;if((a[e>>0]&1)==0){i=l;return}Ys(c[m+8>>2]|0);i=l;return}}while(0);m=g-n|0;if((m|0)>0?(ac[c[(c[k>>2]|0)+48>>2]&31](k,f,m)|0)!=(m|0):0){c[d>>2]=0;c[b>>2]=0;i=l;return}c[h>>2]=0;c[b>>2]=k;i=l;return}function Jc(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;h=c[b>>2]|0;j=c[h+-12>>2]|0;k=c[b+(j+16)>>2]|0;if((k|0)!=0){xk(b+j|0,k|4);i=g;return b|0}k=c[b+(j+72)>>2]|0;if((k|0)==0){k=h}else{il(k)|0;k=c[b>>2]|0;j=c[k+-12>>2]|0}if((c[b+(j+16)>>2]|0)!=0){i=g;return b|0}if((a[e>>0]&1)==0){a[e+1>>0]=0;a[e>>0]=0;h=e+4|0}else{a[c[e+8>>2]>>0]=0;h=e+4|0;c[h>>2]=0}j=0;while(1){m=c[b+((c[k+-12>>2]|0)+24)>>2]|0;l=m+12|0;k=c[l>>2]|0;if((k|0)==(c[m+16>>2]|0)){k=gc[c[(c[m>>2]|0)+40>>2]&127](m)|0;if((k|0)==-1){e=2;break}}else{c[l>>2]=k+1;k=d[k>>0]|0}j=j+1|0;k=k&255;if(k<<24>>24==f<<24>>24){e=0;break}ik(e,k);if(!((a[e>>0]&1)==0)?(c[h>>2]|0)==-17:0){e=4;break}k=c[b>>2]|0}m=c[(c[b>>2]|0)+-12>>2]|0;xk(b+m|0,c[b+(m+16)>>2]|((j|0)==0?e|4:e));i=g;return b|0}function Kc(a){a=a|0;var b=0;b=i;c[a>>2]=404;c[a+108>>2]=424;Oc(a+8|0);yk(a+108|0);Ys(a);i=b;return}function Lc(a){a=a|0;var b=0,d=0,e=0;b=i;e=c[(c[a>>2]|0)+-12>>2]|0;c[a+e>>2]=404;d=a+(e+108)|0;c[d>>2]=424;Oc(a+(e+8)|0);yk(d);i=b;return}function Mc(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;f=c[(c[a>>2]|0)+-12>>2]|0;d=a+f|0;c[d>>2]=404;e=a+(f+108)|0;c[e>>2]=424;Oc(a+(f+8)|0);yk(e);Ys(d);i=b;return}function Nc(a){a=a|0;var b=0;b=i;Oc(a);i=b;return}function Oc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;c[b>>2]=480;e=b+64|0;f=c[e>>2]|0;if((f|0)!=0?(Uc(b)|0,(yb(f|0)|0)==0):0){c[e>>2]=0}if((a[b+96>>0]|0)!=0?(h=c[b+32>>2]|0,(h|0)!=0):0){Zs(h)}if((a[b+97>>0]|0)!=0?(g=c[b+56>>2]|0,(g|0)!=0):0){Zs(g)}c[b>>2]=1080120;Qp(b+4|0);i=d;return}function Pc(a){a=a|0;var b=0;b=i;Oc(a);Ys(a);i=b;return}function Qc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;gc[c[(c[b>>2]|0)+24>>2]&127](b)|0;k=Sp(d,1082912)|0;c[b+68>>2]=k;d=b+98|0;j=a[d>>0]|0;k=gc[c[(c[k>>2]|0)+28>>2]&127](k)|0;a[d>>0]=k&1;if((j&255|0)==(k&1|0)){i=e;return}j=b+8|0;d=b+96|0;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;j=(a[d>>0]|0)!=0;if(k){g=b+32|0;if(j?(f=c[g>>2]|0,(f|0)!=0):0){Zs(f)}k=b+97|0;a[d>>0]=a[k>>0]|0;d=b+60|0;c[b+52>>2]=c[d>>2];j=b+56|0;c[g>>2]=c[j>>2];c[d>>2]=0;c[j>>2]=0;a[k>>0]=0;i=e;return}if(!j?(h=b+32|0,g=c[h>>2]|0,(g|0)!=(b+44|0)):0){k=c[b+52>>2]|0;c[b+60>>2]=k;c[b+56>>2]=g;a[b+97>>0]=0;c[h>>2]=Xs(k)|0;a[d>>0]=1;i=e;return}k=c[b+52>>2]|0;c[b+60>>2]=k;c[b+56>>2]=Xs(k)|0;a[b+97>>0]=1;i=e;return}function Rc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;k=b+8|0;h=b+96|0;c[k+0>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;if((a[h>>0]|0)!=0?(g=c[b+32>>2]|0,(g|0)!=0):0){Zs(g)}g=b+97|0;if((a[g>>0]|0)!=0?(j=c[b+56>>2]|0,(j|0)!=0):0){Zs(j)}j=b+52|0;c[j>>2]=e;do{if(e>>>0>8){j=a[b+98>>0]|0;if(j<<24>>24==0|(d|0)==0){c[b+32>>2]=Xs(e)|0;a[h>>0]=1;break}else{c[b+32>>2]=d;a[h>>0]=0;break}}else{c[b+32>>2]=b+44;c[j>>2]=8;a[h>>0]=0;j=a[b+98>>0]|0}}while(0);if(!(j<<24>>24==0)){c[b+60>>2]=0;c[b+56>>2]=0;a[g>>0]=0;i=f;return b|0}e=(e|0)<8?8:e;c[b+60>>2]=e;if((d|0)!=0&e>>>0>7){c[b+56>>2]=d;a[g>>0]=0;i=f;return b|0}else{c[b+56>>2]=Xs(e)|0;a[g>>0]=1;i=f;return b|0}return 0}function Sc(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0;j=i;l=c[b+68>>2]|0;l=gc[c[(c[l>>2]|0)+24>>2]&127](l)|0;g=b+64|0;if(((c[g>>2]|0)!=0?(k=(l|0)>0,k|(d|0)==0&(e|0)==0):0)?(gc[c[(c[b>>2]|0)+24>>2]&127](b)|0)==0:0){if(!(f>>>0<3)){l=a;c[l>>2]=0;c[l+4>>2]=0;l=a+8|0;c[l>>2]=-1;c[l+4>>2]=-1;i=j;return}h=c[g>>2]|0;if(k){d=Vt(l|0,((l|0)<0)<<31>>31|0,d|0,e|0)|0}else{d=0}if((pb(h|0,d|0,f|0)|0)==0){k=Ub(c[g>>2]|0)|0;h=b+72|0;e=c[h+4>>2]|0;l=a;c[l>>2]=c[h>>2];c[l+4>>2]=e;l=a+8|0;c[l>>2]=k;c[l+4>>2]=((k|0)<0)<<31>>31;i=j;return}else{l=a;c[l>>2]=0;c[l+4>>2]=0;l=a+8|0;c[l>>2]=-1;c[l+4>>2]=-1;i=j;return}}l=a;c[l>>2]=0;c[l+4>>2]=0;l=a+8|0;c[l>>2]=-1;c[l+4>>2]=-1;i=j;return}function Tc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;e=i;f=b+64|0;if((c[f>>2]|0)!=0?(gc[c[(c[b>>2]|0)+24>>2]&127](b)|0)==0:0){if((pb(c[f>>2]|0,c[d+8>>2]|0,0)|0)==0){h=d;g=c[h+4>>2]|0;f=b+72|0;c[f>>2]=c[h>>2];c[f+4>>2]=g;c[a+0>>2]=c[d+0>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];i=e;return}else{h=a;c[h>>2]=0;c[h+4>>2]=0;h=a+8|0;c[h>>2]=-1;c[h+4>>2]=-1;i=e;return}}h=a;c[h>>2]=0;c[h+4>>2]=0;h=a+8|0;c[h>>2]=-1;c[h+4>>2]=-1;i=e;return}function Uc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;d=i;i=i+16|0;h=d+8|0;f=d;e=b+64|0;if((c[e>>2]|0)==0){m=0;i=d;return m|0}g=b+92|0;j=c[g>>2]|0;do{if((j&16|0)==0){if((j&8|0)!=0){k=b+80|0;l=c[k+4>>2]|0;m=f;c[m>>2]=c[k>>2];c[m+4>>2]=l;do{if((a[b+98>>0]|0)==0){k=b+68|0;m=c[k>>2]|0;m=gc[c[(c[m>>2]|0)+24>>2]&127](m)|0;h=b+36|0;j=c[h>>2]|0;l=(c[b+40>>2]|0)-j|0;if((m|0)>0){l=(ea((c[b+16>>2]|0)-(c[b+12>>2]|0)|0,m)|0)+l|0;h=0;break}m=c[b+12>>2]|0;if((m|0)==(c[b+16>>2]|0)){h=0}else{n=c[k>>2]|0;k=b+32|0;m=qc[c[(c[n>>2]|0)+32>>2]&15](n,f,c[k>>2]|0,j,m-(c[b+8>>2]|0)|0)|0;l=l-m+(c[h>>2]|0)-(c[k>>2]|0)|0;h=1}}else{l=(c[b+16>>2]|0)-(c[b+12>>2]|0)|0;h=0}}while(0);if((pb(c[e>>2]|0,0-l|0,1)|0)!=0){n=-1;i=d;return n|0}if(h){l=f;m=c[l+4>>2]|0;n=b+72|0;c[n>>2]=c[l>>2];c[n+4>>2]=m}n=c[b+32>>2]|0;c[b+40>>2]=n;c[b+36>>2]=n;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[g>>2]=0}}else{if((c[b+24>>2]|0)!=(c[b+20>>2]|0)?(pc[c[(c[b>>2]|0)+52>>2]&63](b,-1)|0)==-1:0){n=-1;i=d;return n|0}g=b+68|0;f=b+72|0;j=b+32|0;b=b+52|0;while(1){m=c[g>>2]|0;k=c[j>>2]|0;k=qc[c[(c[m>>2]|0)+20>>2]&15](m,f,k,k+(c[b>>2]|0)|0,h)|0;m=c[j>>2]|0;n=(c[h>>2]|0)-m|0;if((Qb(m|0,1,n|0,c[e>>2]|0)|0)!=(n|0)){e=-1;b=21;break}if((k|0)==2){e=-1;b=21;break}else if((k|0)!=1){b=8;break}}if((b|0)==8){if((Wa(c[e>>2]|0)|0)==0){break}else{e=-1}i=d;return e|0}else if((b|0)==21){i=d;return e|0}}}while(0);n=0;i=d;return n|0}function Vc(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,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=i;i=i+16|0;e=f+4|0;j=f;l=b+64|0;if((c[l>>2]|0)==0){s=-1;i=f;return s|0}g=b+92|0;if((c[g>>2]&8|0)==0){c[b+24>>2]=0;c[b+20>>2]=0;c[b+28>>2]=0;if((a[b+98>>0]|0)==0){s=c[b+56>>2]|0;n=s+(c[b+60>>2]|0)|0;c[b+8>>2]=s;c[b+12>>2]=n;c[b+16>>2]=n}else{s=c[b+32>>2]|0;n=s+(c[b+52>>2]|0)|0;c[b+8>>2]=s;c[b+12>>2]=n;c[b+16>>2]=n}c[g>>2]=8;h=1;g=b+12|0}else{n=b+12|0;h=0;g=n;n=c[n>>2]|0}if((n|0)==0){n=e+1|0;c[b+8>>2]=e;c[g>>2]=n;c[b+16>>2]=n}k=c[b+16>>2]|0;if(h){m=0}else{m=(k-(c[b+8>>2]|0)|0)/2|0;m=m>>>0>4?4:m}h=b+16|0;do{if((n|0)==(k|0)){k=b+8|0;Ot(c[k>>2]|0,n+(0-m)|0,m|0)|0;if((a[b+98>>0]|0)!=0){b=c[k>>2]|0;b=Ha(b+m|0,1,(c[h>>2]|0)-m-b|0,c[l>>2]|0)|0;if((b|0)==0){b=-1;break}r=c[k>>2]|0;s=r+m|0;c[g>>2]=s;c[h>>2]=r+(b+m);b=d[s>>0]|0;break}o=b+32|0;n=b+36|0;r=c[n>>2]|0;p=b+40|0;Ot(c[o>>2]|0,r|0,(c[p>>2]|0)-r|0)|0;r=c[o>>2]|0;q=r+((c[p>>2]|0)-(c[n>>2]|0))|0;c[n>>2]=q;if((r|0)==(b+44|0)){s=8}else{s=c[b+52>>2]|0}u=r+s|0;c[p>>2]=u;s=b+60|0;t=(c[s>>2]|0)-m|0;u=u-q|0;r=b+72|0;x=r;w=c[x+4>>2]|0;v=b+80|0;c[v>>2]=c[x>>2];c[v+4>>2]=w;l=Ha(q|0,1,(u>>>0<t>>>0?u:t)|0,c[l>>2]|0)|0;if((l|0)!=0){w=(c[n>>2]|0)+l|0;c[p>>2]=w;v=c[b+68>>2]|0;x=c[k>>2]|0;if((lc[c[(c[v>>2]|0)+16>>2]&15](v,r,c[o>>2]|0,w,n,x+m|0,x+(c[s>>2]|0)|0,j)|0)==3){b=c[o>>2]|0;x=c[p>>2]|0;c[k>>2]=b;c[g>>2]=b;c[h>>2]=x;b=d[b>>0]|0;break}j=c[j>>2]|0;b=c[k>>2]|0;l=b+m|0;if((j|0)!=(l|0)){c[k>>2]=b;c[g>>2]=l;c[h>>2]=j;b=d[l>>0]|0}else{b=-1}}else{b=-1}}else{k=b+8|0;b=d[n>>0]|0}}while(0);if((c[k>>2]|0)!=(e|0)){x=b;i=f;return x|0}c[k>>2]=0;c[g>>2]=0;c[h>>2]=0;x=b;i=f;return x|0}function Wc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;do{if((c[b+64>>2]|0)!=0?(f=b+12|0,g=c[f>>2]|0,(c[b+8>>2]|0)>>>0<g>>>0):0){if((d|0)==-1){c[f>>2]=g+-1;d=0;break}if((c[b+88>>2]&16|0)==0){b=d&255;g=g+-1|0;if(!(b<<24>>24==(a[g>>0]|0))){d=-1;break}}else{b=d&255;g=g+-1|0}c[f>>2]=g;a[g>>0]=b}else{d=-1}}while(0);i=e;return d|0}function Xc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+16|0;o=e+8|0;g=e+4|0;h=e;f=b+64|0;if((c[f>>2]|0)==0){u=-1;i=e;return u|0}j=b+92|0;if((c[j>>2]&16|0)==0){c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;k=c[b+52>>2]|0;do{if(k>>>0>8){if((a[b+98>>0]|0)==0){l=c[b+56>>2]|0;m=l+((c[b+60>>2]|0)+-1)|0;c[b+24>>2]=l;c[b+20>>2]=l;c[b+28>>2]=m;break}else{l=c[b+32>>2]|0;m=l+(k+-1)|0;c[b+24>>2]=l;c[b+20>>2]=l;c[b+28>>2]=m;break}}else{c[b+24>>2]=0;c[b+20>>2]=0;c[b+28>>2]=0;m=0;l=0}}while(0);c[j>>2]=16;k=b+28|0;j=b+20|0}else{l=b+20|0;m=b+28|0;k=m;j=l;l=c[l>>2]|0;m=c[m>>2]|0}n=(d|0)==-1;p=b+24|0;t=c[p>>2]|0;if(n){u=l}else{if((t|0)==0){c[p>>2]=o;c[j>>2]=o;c[k>>2]=o+1;t=o}a[t>>0]=d;t=(c[p>>2]|0)+1|0;c[p>>2]=t;u=c[j>>2]|0}o=b+24|0;if((t|0)!=(u|0)){a:do{if((a[b+98>>0]|0)==0){p=b+32|0;s=c[p>>2]|0;c[g>>2]=s;q=b+68|0;r=b+72|0;b=b+52|0;while(1){v=c[q>>2]|0;t=lc[c[(c[v>>2]|0)+12>>2]&15](v,r,u,t,h,s,s+(c[b>>2]|0)|0,g)|0;s=c[j>>2]|0;if((c[h>>2]|0)==(s|0)){d=-1;g=27;break}if((t|0)==3){g=20;break}if(!(t>>>0<2)){d=-1;g=27;break}u=c[p>>2]|0;v=(c[g>>2]|0)-u|0;if((Qb(u|0,1,v|0,c[f>>2]|0)|0)!=(v|0)){d=-1;g=27;break}if((t|0)!=1){break a}u=c[h>>2]|0;t=c[o>>2]|0;c[j>>2]=u;c[k>>2]=t;t=u+(t-u)|0;c[o>>2]=t;s=c[p>>2]|0}if((g|0)==20){v=(c[o>>2]|0)-s|0;if((Qb(s|0,1,v|0,c[f>>2]|0)|0)==(v|0)){break}else{d=-1}i=e;return d|0}else if((g|0)==27){i=e;return d|0}}else{v=t-u|0;if((Qb(u|0,1,v|0,c[f>>2]|0)|0)!=(v|0)){v=-1;i=e;return v|0}}}while(0);c[o>>2]=l;c[j>>2]=l;c[k>>2]=m}v=n?0:d;i=e;return v|0}function Yc(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;j=i;i=i+16|0;g=j+4|0;k=j;c[d>>2]=1080120;h=d+4|0;Op(h);f=d+8|0;c[f+0>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[d>>2]=480;c[d+32>>2]=0;c[d+36>>2]=0;c[d+40>>2]=0;f=d+52|0;l=d+68|0;m=f+0|0;e=m+44|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(e|0));b[f+44>>1]=0;a[f+46>>0]=0;Pp(g,h);m=Rp(g,1082912)|0;Qp(g);if(!m){m=c[d>>2]|0;m=m+12|0;m=c[m>>2]|0;ac[m&31](d,0,4096)|0;i=j;return}Pp(k,h);c[l>>2]=Sp(k,1082912)|0;Qp(k);m=c[l>>2]|0;a[d+98>>0]=(gc[c[(c[m>>2]|0)+28>>2]&127](m)|0)&1;m=c[d>>2]|0;m=m+12|0;m=c[m>>2]|0;ac[m&31](d,0,4096)|0;i=j;return}function Zc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=i;g=b+4|0;p=c[g>>2]|0;h=c[b>>2]|0;m=h;l=(p-m|0)/12|0;n=l+1|0;f=b+8|0;j=((c[f>>2]|0)-m|0)/12|0;if(j>>>0<178956970){j=j<<1;j=j>>>0<n>>>0?n:j;if((j|0)==0){q=0;j=0}else{k=3}}else{j=357913941;k=3}if((k|0)==3){q=j;j=Vs(j*12|0)|0}o=j+(l*12|0)|0;k=j+(q*12|0)|0;do{if((o|0)!=0){if((a[d>>0]&1)==0){c[o+0>>2]=c[d+0>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];break}p=c[d+8>>2]|0;q=c[d+4>>2]|0;if(q>>>0<11){a[o>>0]=q<<1;d=o+1|0}else{r=q+16&-16;d=Vs(r)|0;c[j+(l*12|0)+8>>2]=d;c[o>>2]=r|1;c[j+(l*12|0)+4>>2]=q}Nt(d|0,p|0,q|0)|0;a[d+q>>0]=0;p=c[g>>2]|0}}while(0);n=j+(n*12|0)|0;if((p|0)!=(h|0)){l=l+-1-(((p+-12+(0-m)|0)>>>0)/12|0)|0;do{d=o;o=o+-12|0;q=p;p=p+-12|0;if((a[p>>0]&1)==0){c[o+0>>2]=c[p+0>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2]}else{m=c[q+-4>>2]|0;q=c[q+-8>>2]|0;if(q>>>0<11){a[o>>0]=q<<1;d=o+1|0}else{s=q+16&-16;r=Vs(s)|0;c[d+-4>>2]=r;c[o>>2]=s|1;c[d+-8>>2]=q;d=r}Nt(d|0,m|0,q|0)|0;a[d+q>>0]=0}}while((p|0)!=(h|0));h=c[b>>2]|0;m=c[g>>2]|0;c[b>>2]=j+(l*12|0);c[g>>2]=n;c[f>>2]=k;if((m|0)!=(h|0)){do{b=m;m=m+-12|0;if(!((a[m>>0]&1)==0)){Ys(c[b+-4>>2]|0)}}while((m|0)!=(h|0))}}else{c[b>>2]=o;c[g>>2]=n;c[f>>2]=k}if((h|0)==0){i=e;return}Ys(h);i=e;return}function _c(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;l=(d|0)==(b|0);a[d+12>>0]=l&1;if(l){i=e;return}while(1){j=d+8|0;f=c[j>>2]|0;k=f+12|0;if((a[k>>0]|0)!=0){b=37;break}g=f+8|0;h=c[g>>2]|0;l=c[h>>2]|0;if((l|0)==(f|0)){j=c[h+4>>2]|0;if((j|0)==0){b=7;break}j=j+12|0;if((a[j>>0]|0)!=0){b=7;break}a[k>>0]=1;a[h+12>>0]=(h|0)==(b|0)&1;a[j>>0]=1}else{if((l|0)==0){b=24;break}l=l+12|0;if((a[l>>0]|0)!=0){b=24;break}a[k>>0]=1;a[h+12>>0]=(h|0)==(b|0)&1;a[l>>0]=1}if((h|0)==(b|0)){b=37;break}else{d=h}}if((b|0)==7){if((c[f>>2]|0)==(d|0)){d=f}else{l=f+4|0;d=c[l>>2]|0;j=c[d>>2]|0;c[l>>2]=j;if((j|0)!=0){c[j+8>>2]=f;h=c[g>>2]|0}j=d+8|0;c[j>>2]=h;h=c[g>>2]|0;if((c[h>>2]|0)==(f|0)){c[h>>2]=d}else{c[h+4>>2]=d}c[d>>2]=f;c[g>>2]=d;f=c[j>>2]|0;h=f;f=c[f>>2]|0}a[d+12>>0]=1;a[h+12>>0]=0;g=f+4|0;d=c[g>>2]|0;c[h>>2]=d;if((d|0)!=0){c[d+8>>2]=h}d=h+8|0;c[f+8>>2]=c[d>>2];j=c[d>>2]|0;if((c[j>>2]|0)==(h|0)){c[j>>2]=f}else{c[j+4>>2]=f}c[g>>2]=h;c[d>>2]=f;i=e;return}else if((b|0)==24){if((c[f>>2]|0)==(d|0)){b=d+4|0;k=c[b>>2]|0;c[f>>2]=k;if((k|0)!=0){c[k+8>>2]=f;h=c[g>>2]|0}c[j>>2]=h;h=c[g>>2]|0;if((c[h>>2]|0)==(f|0)){c[h>>2]=d}else{c[h+4>>2]=d}c[b>>2]=f;c[g>>2]=d;f=d;h=c[j>>2]|0}a[f+12>>0]=1;a[h+12>>0]=0;l=h+4|0;f=c[l>>2]|0;g=c[f>>2]|0;c[l>>2]=g;if((g|0)!=0){c[g+8>>2]=h}g=h+8|0;c[f+8>>2]=c[g>>2];d=c[g>>2]|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=f}else{c[d+4>>2]=f}c[f>>2]=h;c[g>>2]=f;i=e;return}else if((b|0)==37){i=e;return}}function $c(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=(d<<6)+a+(b<<13&57344)+(e<<12)+(6-(b>>>3)<<15)|0;return(c[2272+(d>>>5<<2)>>2]&1<<(d&31)|0)!=0|0}function ad(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a=i;i=i+16|0;d=a;h=Vs(3932160)|0;o=h;m=h+3932160|0;f=0;while(1){k=f&63;j=f>>>6&63;e=f>>>12&1;q=6-(f>>>15&7)<<3;l=q|f>>>13&3;do{if((c[115744+(k<<8)+(j<<2)>>2]|0)>=2?!((k|0)==(l|0)|(j|0)==(l|0)):0){p=31264+(l<<3)|0;n=c[p>>2]|0;p=c[p+4>>2]|0;if((e|0)!=0){t=33824+(j<<3)|0;q=c[t>>2]|0;t=c[t+4>>2]|0;s=33824+(k<<3)|0;r=c[s>>2]|0;s=c[s+4>>2]|0;if(!((q&~(r|n)|0)==0&(t&~(s|p)|0)==0)?(p=29920+(l<<3)|0,(q&~r&c[p>>2]|0)==0?(t&~s&c[p+4>>2]|0)==0:0):0){n=1;break}n=2;break}t=29920+(j<<3)|0;if((c[t>>2]&n|0)==0?(c[t+4>>2]&p|0)==0:0){if((q|0)==48?(g=l+8|0,(k|0)!=(g|0)):0){if((c[115744+(j<<8)+(g<<2)>>2]|0)<=1?(t=33824+(k<<3)|0,s=29920+(g<<3)|0,(c[s>>2]&c[t>>2]|0)==0?(c[s+4>>2]&c[t+4>>2]|0)==0:0):0){n=1;break}n=4}else{n=1}}else{n=0}}else{n=0}}while(0);if((o|0)==(m|0)){p=o-h|0;q=(p|0)/20|0;o=q+1|0;if(q>>>0<107374182){r=q<<1;r=r>>>0<o>>>0?o:r;if((r|0)==0){m=0;r=0}else{b=21}}else{r=214748364;b=21}if((b|0)==21){b=0;m=r;r=Vs(r*20|0)|0}s=r+(q*20|0)|0;m=r+(m*20|0)|0;if((s|0)!=0){c[s>>2]=e;c[r+(q*20|0)+4>>2]=j;c[r+(q*20|0)+8>>2]=k;c[r+(q*20|0)+12>>2]=l;c[r+(q*20|0)+16>>2]=n}o=r+(o*20|0)|0;e=r+((((p|0)/-20|0)+q|0)*20|0)|0;Nt(e|0,h|0,p|0)|0;if((h|0)!=0){Ys(h)}}else{if((o|0)==0){o=0}else{c[o>>2]=e;c[o+4>>2]=j;c[o+8>>2]=k;c[o+12>>2]=l;c[o+16>>2]=n}e=h;o=o+20|0}f=f+1|0;if((f|0)==196608){break}else{h=e}}f=0;g=0;while(1){h=e+(f*20|0)+16|0;if((c[h>>2]|0)==1){if((c[e+(f*20|0)>>2]|0)==0){j=e+(f*20|0)+8|0;t=33824+(c[j>>2]<<3)|0;s=c[t>>2]|0;t=c[t+4>>2]|0;r=d;c[r>>2]=s;c[r+4>>2]=t;if((s|0)==0&(t|0)==0){m=0;k=c[e+(f*20|0)+12>>2]|0}else{l=e+(f*20|0)+4|0;m=e+(f*20|0)+12|0;n=0;do{t=c[l>>2]|0;s=cd(d)|0;k=c[m>>2]|0;n=c[e+((s+4096+(t<<6)+(k<<13&57344)+(6-(k>>>3)<<15)|0)*20|0)+16>>2]|n;t=d}while(!((c[t>>2]|0)==0&(c[t+4>>2]|0)==0));m=n}l=k>>3;if((l|0)<6){s=k+8|0;t=c[e+(f*20|0)+4>>2]|0;r=c[j>>2]|0;j=r+4096+(t<<6)|0;m=c[e+(((6-(s>>>3)<<15)+(s<<13&57344)+j|0)*20|0)+16>>2]|m;if(!((l|0)!=1|(s|0)==(r|0)|(s|0)==(t|0))){t=k+16|0;m=c[e+(((6-(t>>>3)<<15)+(t<<13&57344)+j|0)*20|0)+16>>2]|m}}if((m&4|0)==0){j=2-(m&1)|0}else{j=4}c[h>>2]=j}else{t=33824+(c[e+(f*20|0)+4>>2]<<3)|0;s=c[t>>2]|0;t=c[t+4>>2]|0;r=d;c[r>>2]=s;c[r+4>>2]=t;if(!((s|0)==0&(t|0)==0)){k=e+(f*20|0)+8|0;l=e+(f*20|0)+12|0;j=0;do{s=cd(d)|0;t=c[l>>2]|0;j=c[e+(((c[k>>2]|0)+(s<<6)+(t<<13&57344)+(6-(t>>>3)<<15)|0)*20|0)+16>>2]|j;t=d}while(!((c[t>>2]|0)==0&(c[t+4>>2]|0)==0));if((j&2|0)==0){b=44}else{j=2}}else{j=0;b=44}if((b|0)==44){b=0;j=(j&1|0)!=0?1:4}c[h>>2]=j}h=(j|0)!=1}else{h=0}g=h&1|g;f=f+1|0;if((f|0)!=196608){continue}if((g|0)==0){b=0;break}else{f=0;g=0}}do{if((c[e+(b*20|0)+16>>2]|0)==4){t=2272+(b>>>5<<2)|0;c[t>>2]=c[t>>2]|1<<(b&31)}b=b+1|0}while((b|0)!=196608);if((e|0)==0){i=a;return}Ys(e);i=a;return}function bd(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;e=Jt(a|0,b|0,-1,-1)|0;b=c[132128+((ea(I^b^(e^a),2017106723)|0)>>>26<<2)>>2]|0;i=d;return b|0}function cd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;f=a;d=c[f>>2]|0;f=c[f+4>>2]|0;e=Jt(d|0,f|0,-1,-1)|0;g=I;c[a>>2]=e&d;c[a+4>>2]=g&f;a=c[132128+((ea(g^f^(e^d),2017106723)|0)>>>26<<2)>>2]|0;i=b;return a|0}function dd(a,b){a=a|0;b=b|0;if(b>>>0>0|(b|0)==0&a>>>0>4294967295){a=32}else{b=a;a=0}if(b>>>0>65535){b=b>>>16;a=a|16}if(b>>>0>255){b=b>>>8;a=a+8|0}return(c[132384+(b<<2)>>2]|0)+a|0}function ed(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;b=i;i=i+32|0;e=b+16|0;d=b;f=0;do{r=Mt(1,0,f|0)|0;p=I;q=29920+(f<<3)|0;c[q>>2]=r;c[q+4>>2]=p;q=Jt(r|0,p|0,-1,-1)|0;c[132128+((ea(I^p^(q^r),2017106723)|0)>>>26<<2)>>2]=f;f=f+1|0}while((f|0)!=64);f=1;g=0;do{j=Jt(f|0,g|0,-1,-1)|0;h=I;if((j&f|0)==0&(h&g|0)==0){h=132128+((ea(h^g^(j^f),2017106723)|0)>>>26<<2)|0}else{h=Jt(f|0,g|0,-1,0)|0;h=132384+(h<<2)|0}c[132384+(f<<2)>>2]=c[h>>2];f=Jt(f|0,g|0,1,0)|0;g=I}while(g>>>0<0|(g|0)==0&f>>>0<256);r=30432;c[r>>2]=16843009;c[r+4>>2]=16843009;r=30440|0;c[r>>2]=33686018;c[r+4>>2]=33686018;r=30448|0;c[r>>2]=67372036;c[r+4>>2]=67372036;r=30456|0;c[r>>2]=134744072;c[r+4>>2]=134744072;r=30464|0;c[r>>2]=269488144;c[r+4>>2]=269488144;r=30472|0;c[r>>2]=538976288;c[r+4>>2]=538976288;r=30480|0;c[r>>2]=1077952576;c[r+4>>2]=1077952576;r=30488|0;c[r>>2]=-2139062144;c[r+4>>2]=-2139062144;r=30496;c[r>>2]=255;c[r+4>>2]=0;r=30504|0;c[r>>2]=65280;c[r+4>>2]=0;r=30512|0;c[r>>2]=16711680;c[r+4>>2]=0;r=30520|0;c[r>>2]=-16777216;c[r+4>>2]=0;r=30528|0;c[r>>2]=0;c[r+4>>2]=255;r=30536|0;c[r>>2]=0;c[r+4>>2]=65280;r=30544|0;c[r>>2]=0;c[r+4>>2]=16711680;r=30552|0;c[r>>2]=0;c[r+4>>2]=-16777216;r=30560;c[r>>2]=33686018;c[r+4>>2]=33686018;r=30568|0;c[r>>2]=84215045;
+c[r+4>>2]=84215045;r=30576|0;c[r>>2]=168430090;c[r+4>>2]=168430090;r=30584|0;c[r>>2]=336860180;c[r+4>>2]=336860180;r=30592|0;c[r>>2]=673720360;c[r+4>>2]=673720360;r=30600|0;c[r>>2]=1347440720;c[r+4>>2]=1347440720;r=30608|0;c[r>>2]=-1600085856;c[r+4>>2]=-1600085856;r=30616|0;c[r>>2]=1077952576;c[r+4>>2]=1077952576;r=30688|0;q=c[r>>2]|0;r=c[r+4>>2]|0;f=30696|0;c[f>>2]=q|255;c[f+4>>2]=r;f=30624;c[f>>2]=q&-256^-256;c[f+4>>2]=~r;f=30704|0;c[f>>2]=q|65535;c[f+4>>2]=r;f=30632|0;c[f>>2]=q&-65536^-65536;c[f+4>>2]=~r;f=30712|0;c[f>>2]=q|16777215;c[f+4>>2]=r;f=30640|0;c[f>>2]=q&-16777216^-16777216;c[f+4>>2]=~r;f=30720|0;c[f>>2]=-1;c[f+4>>2]=r;f=30648|0;c[f>>2]=0;c[f+4>>2]=~r;f=30728|0;c[f>>2]=-1;c[f+4>>2]=r|255;f=30656|0;c[f>>2]=0;c[f+4>>2]=r&-256^-256;f=30736|0;c[f>>2]=-1;c[f+4>>2]=r|65535;f=30664|0;c[f>>2]=0;c[f+4>>2]=r&-65536^-65536;f=30744|0;c[f>>2]=-1;c[f+4>>2]=r|16777215;f=30672|0;c[f>>2]=0;c[f+4>>2]=r&-16777216^-16777216;f=0;do{q=30624+(f>>3<<3)|0;o=c[q>>2]|0;q=c[q+4>>2]|0;r=f&7;p=30432+(r<<3)|0;n=c[p>>2]&o;p=c[p+4>>2]&q;m=108576+(f<<3)|0;c[m>>2]=n;c[m+4>>2]=p;r=30560+(r<<3)|0;o=c[r>>2]&o;q=c[r+4>>2]&q;r=110624+(f<<3)|0;c[r>>2]=o;c[r+4>>2]=q;r=109600+(f<<3)|0;c[r>>2]=n|o;c[r+4>>2]=p|q;f=f+1|0}while((f|0)!=64);f=0;do{q=30688+(f>>3<<3)|0;o=c[q>>2]|0;q=c[q+4>>2]|0;r=f&7;p=30432+(r<<3)|0;n=c[p>>2]&o;p=c[p+4>>2]&q;m=109088+(f<<3)|0;c[m>>2]=n;c[m+4>>2]=p;r=30560+(r<<3)|0;o=c[r>>2]&o;q=c[r+4>>2]&q;r=111136+(f<<3)|0;c[r>>2]=o;c[r+4>>2]=q;r=110112+(f<<3)|0;c[r>>2]=n|o;c[r+4>>2]=p|q;f=f+1|0}while((f|0)!=64);g=0;do{j=g&7;f=g>>3;h=0;do{if((g|0)!=(h|0)){r=j-(h&7)|0;r=(r|0)>-1?r:0-r|0;p=f-(h>>3)|0;p=(p|0)>-1?p:0-p|0;r=(r|0)<(p|0)?p:r;c[115744+(g<<8)+(h<<2)>>2]=r;r=104480+(g<<6)+(r+-1<<3)|0;p=29920+(h<<3)|0;o=r;q=c[o+4>>2]|c[p+4>>2];c[r>>2]=c[o>>2]|c[p>>2];c[r+4>>2]=q}h=h+1|0}while((h|0)!=64);g=g+1|0}while((g|0)!=64);j=1;do{h=c[133408+(j*36|0)>>2]|0;k=(57>>>j&1|0)==0;l=0;do{if(k){f=30752+(j<<9)+(l<<3)|0;m=h;g=0;do{m=m+l|0;if(m>>>0<64?(c[115744+(l<<8)+(m<<2)>>2]|0)<3:0){p=29920+(m<<3)|0;o=f;q=c[o+4>>2]|c[p+4>>2];r=f;c[r>>2]=c[o>>2]|c[p>>2];c[r+4>>2]=q}g=g+1|0;m=c[133408+(j*36|0)+(g<<2)>>2]|0}while((m|0)!=0)}l=l+1|0}while((l|0)!=64);j=j+1|0}while((j|0)!=7);f=1;do{h=c[133408+(f*36|0)>>2]|0;j=(57>>>f&1|0)==0;g=f|8;k=0;do{if(j){l=30752+(g<<9)+(k<<3)|0;n=h;m=0;do{n=k-n|0;if(n>>>0<64?(c[115744+(k<<8)+(n<<2)>>2]|0)<3:0){p=29920+(n<<3)|0;o=l;q=c[o+4>>2]|c[p+4>>2];r=l;c[r>>2]=c[o>>2]|c[p>>2];c[r+4>>2]=q}m=m+1|0;n=c[133408+(f*36|0)+(m<<2)>>2]|0}while((n|0)!=0)}k=k+1|0}while((k|0)!=64);f=f+1|0}while((f|0)!=7);c[e+0>>2]=c[133664>>2];c[e+4>>2]=c[133668>>2];c[e+8>>2]=c[133672>>2];c[e+12>>2]=c[133676>>2];c[d+0>>2]=c[133680>>2];c[d+4>>2]=c[133684>>2];c[d+8>>2]=c[133688>>2];c[d+12>>2]=c[133692>>2];fd(133696,27872,27360,26848,28128,e,25);fd(952896,29408,28896,28384,29664,d,26);q=0;do{m=29408+(q<<2)|0;k=c[m>>2]|0;l=c[k>>2]|0;k=c[k+4>>2]|0;j=113184+(q<<3)|0;c[j>>2]=l;c[j+4>>2]=k;j=114208+(q<<3)|0;p=j;c[p>>2]=l;c[p+4>>2]=k;p=27872+(q<<2)|0;n=c[p>>2]|0;o=c[n>>2]|0;n=c[n+4>>2]|0;h=113696+(q<<3)|0;c[h>>2]=o;c[h+4>>2]=n;c[j>>2]=l|o;c[j+4>>2]=k|n;j=29920+(q<<3)|0;h=0;do{g=29920+(h<<3)|0;f=c[g>>2]|0;g=c[g+4>>2]|0;if((f&l|0)==0&(g&k|0)==0){if(!((o&f|0)==0&(n&g|0)==0)){d=p;e=4;r=27872;a=25}}else{d=m;e=3;r=29408;a=25}if((a|0)==25){a=0;v=c[r+(h<<2)>>2]|0;u=c[d>>2]|0;r=j;d=c[r>>2]|0;r=c[r+4>>2]|0;t=r|c[v+4>>2]&c[u+4>>2]|g;s=71712+(q<<9)+(h<<3)|0;c[s>>2]=d|c[v>>2]&c[u>>2]|f;c[s+4>>2]=t;f=id(e,q,f,g)|0;g=I;e=id(e,h,d,r)|0;r=38944+(q<<9)+(h<<3)|0;c[r>>2]=e&f;c[r+4>>2]=I&g}h=h+1|0}while((h|0)!=64);q=q+1|0}while((q|0)!=64);i=b;return}function fd(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;j=i;i=i+65536|0;k=j+32768|0;l=j;c[b>>2]=a;a=0;B=-167529152;z=1188910975;x=-87058309;v=-1006142499;C=1912662104;A=-1141581509;y=-733365474;w=-740264497;while(1){o=a>>3;q=30496+(o<<3)|0;m=30432+((a&7)<<3)|0;r=c[m>>2]&-2122219135^-2122219135|c[q>>2]&255^255;q=c[m+4>>2]&-2122219135^-2122219135|c[q+4>>2]&-16777216^-16777216;m=jd(g,a,0,0)|0;r=m&~r;q=I&~q;m=e+(a<<3)|0;p=m;c[p>>2]=r;c[p+4>>2]=q;p=r-(r>>>1&1431655765)|0;n=Kt(r|0,q|0,33)|0;n=q-(n&1431655765)|0;c[f+(a<<2)>>2]=32-((ea((n&858993459)+(p&858993459)+(p>>>2&858993459)+(n>>>2&858993459)|0,286331153)|0)>>>28);n=0;p=0;D=0;while(1){J=k+(D<<3)|0;c[J>>2]=n;c[J+4>>2]=p;J=jd(g,a,n,p)|0;u=l+(D<<3)|0;c[u>>2]=J;c[u+4>>2]=I;u=D+1|0;J=Ht(n|0,p|0,r|0,q|0)|0;n=J&r;p=I&q;if((n|0)==0&(p|0)==0){break}else{D=u}}n=b+(a<<2)|0;if((a|0)<63){c[b+(a+1<<2)>>2]=(c[n>>2]|0)+(u<<3)}q=c[994880+(o<<2)>>2]|0;s=q&63;r=64-s|0;q=q>>>6&63;p=64-q|0;o=d+(a<<3)|0;t=u<<3;a:do{if((D|0)>-1){b:while(1){G=Mt(x|0,v|0,7)|0;H=I;K=Kt(x|0,v|0,57)|0;H=Ht(B|0,z|0,K|G|0,I|H|0)|0;G=I;K=Mt(C|0,A|0,13)|0;F=I;E=Kt(C|0,A|0,51)|0;K=(E|K)^x;F=(I|F)^v;E=Mt(y|0,w|0,37)|0;D=I;z=Kt(y|0,w|0,27)|0;D=Jt(z|E|0,I|D|0,C|0,A|0)|0;E=I;z=Jt(H|0,G|0,y|0,w|0)|0;B=I;x=Jt(H|0,G|0,K|0,F|0)|0;v=I;y=Mt(x|0,v|0,s|0)|0;G=I;H=Kt(x|0,v|0,r|0)|0;G=I|G;A=Mt(D|0,E|0,7)|0;C=I;J=Kt(D|0,E|0,57)|0;C=Ht(K|0,F|0,J|A|0,I|C|0)|0;A=I;J=Mt(z|0,B|0,13)|0;w=I;F=Kt(z|0,B|0,51)|0;D=(F|J)^D;E=(I|w)^E;w=Mt(x|0,v|0,37)|0;J=I;F=Kt(x|0,v|0,27)|0;B=Jt(F|w|0,I|J|0,z|0,B|0)|0;z=I;v=Jt(C|0,A|0,x|0,v|0)|0;x=I;A=Jt(D|0,E|0,C|0,A|0)|0;C=I;y=A&(H|y);G=C&G;H=Mt(y|0,G|0,q|0)|0;J=I;G=Kt(y|0,G|0,p|0)|0;J=I|J;y=Mt(B|0,z|0,7)|0;w=I;F=Kt(B|0,z|0,57)|0;w=Ht(D|0,E|0,F|y|0,I|w|0)|0;y=I;F=Mt(v|0,x|0,13)|0;E=I;D=Kt(v|0,x|0,51)|0;B=(D|F)^B;z=(I|E)^z;E=Mt(A|0,C|0,37)|0;F=I;D=Kt(A|0,C|0,27)|0;x=Jt(D|E|0,I|F|0,v|0,x|0)|0;v=I;C=Jt(w|0,y|0,A|0,C|0)|0;A=I;y=Jt(w|0,y|0,B|0,z|0)|0;w=I;H=y&(G|H);J=w&J;G=o;c[G>>2]=H;c[G+4>>2]=J;G=m;G=Vt(H|0,J|0,c[G>>2]|0,c[G+4>>2]|0)|0;J=I;H=Kt(G|0,J|0,56)|0;J=Kt(G|0,J|0,57)|0;J=H-(J&85)|0;if((ea((J>>>2&858993459)+(J&858993459)|0,286331153)|0)>>>0<1610612736){continue}Lt(c[n>>2]|0,0,t|0)|0;D=0;while(1){E=k+(D<<3)|0;E=ac[h&31](a,c[E>>2]|0,c[E+4>>2]|0)|0;E=(c[n>>2]|0)+(E<<3)|0;F=E;H=c[F>>2]|0;F=c[F+4>>2]|0;G=l+(D<<3)|0;J=c[G>>2]|0;G=c[G+4>>2]|0;if(!((H|0)==0&(F|0)==0)){if(!((H|0)==(J|0)&(F|0)==(G|0))){continue b}}else{H=J;F=G}K=E;c[K>>2]=H;c[K+4>>2]=F;D=D+1|0;if((D|0)>=(u|0)){break a}}}}else{do{u=Mt(x|0,v|0,7)|0;L=I;P=Kt(x|0,v|0,57)|0;L=Ht(B|0,z|0,P|u|0,I|L|0)|0;u=I;P=Mt(C|0,A|0,13)|0;F=I;M=Kt(C|0,A|0,51)|0;P=(M|P)^x;F=(I|F)^v;M=Mt(y|0,w|0,37)|0;Q=I;N=Kt(y|0,w|0,27)|0;Q=Jt(N|M|0,I|Q|0,C|0,A|0)|0;M=I;N=Jt(L|0,u|0,y|0,w|0)|0;O=I;u=Jt(L|0,u|0,P|0,F|0)|0;L=I;G=Mt(u|0,L|0,s|0)|0;H=I;J=Kt(u|0,L|0,r|0)|0;H=I|H;D=Mt(Q|0,M|0,7)|0;E=I;K=Kt(Q|0,M|0,57)|0;E=Ht(P|0,F|0,K|D|0,I|E|0)|0;D=I;K=Mt(N|0,O|0,13)|0;F=I;P=Kt(N|0,O|0,51)|0;Q=(P|K)^Q;M=(I|F)^M;F=Mt(u|0,L|0,37)|0;K=I;P=Kt(u|0,L|0,27)|0;O=Jt(P|F|0,I|K|0,N|0,O|0)|0;N=I;L=Jt(E|0,D|0,u|0,L|0)|0;u=I;D=Jt(Q|0,M|0,E|0,D|0)|0;E=I;G=D&(J|G);H=E&H;J=Mt(G|0,H|0,q|0)|0;K=I;H=Kt(G|0,H|0,p|0)|0;K=I|K;G=Mt(O|0,N|0,7)|0;F=I;P=Kt(O|0,N|0,57)|0;F=Ht(Q|0,M|0,P|G|0,I|F|0)|0;G=I;P=Mt(L|0,u|0,13)|0;M=I;Q=Kt(L|0,u|0,51)|0;B=(Q|P)^O;z=(I|M)^N;N=Mt(D|0,E|0,37)|0;M=I;O=Kt(D|0,E|0,27)|0;x=Jt(O|N|0,I|M|0,L|0,u|0)|0;v=I;C=Jt(F|0,G|0,D|0,E|0)|0;A=I;y=Jt(F|0,G|0,B|0,z|0)|0;w=I;J=y&(H|J);K=w&K;H=o;c[H>>2]=J;c[H+4>>2]=K;H=m;H=Vt(J|0,K|0,c[H>>2]|0,c[H+4>>2]|0)|0;K=I;J=Kt(H|0,K|0,56)|0;K=Kt(H|0,K|0,57)|0;K=J-(K&85)|0}while((ea((K>>>2&858993459)+(K&858993459)|0,286331153)|0)>>>0<1610612736);Lt(c[n>>2]|0,0,t|0)|0}}while(0);a=a+1|0;if((a|0)==64){break}}i=j;return}function gd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=26848+(a<<3)|0;e=27360+(a<<3)|0;d=(ea(c[f+4>>2]&d,c[e+4>>2]|0)|0)^(ea(c[f>>2]&b,c[e>>2]|0)|0);return d>>>(c[28128+(a<<2)>>2]|0)|0}function hd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=28384+(a<<3)|0;e=28896+(a<<3)|0;d=(ea(c[f+4>>2]&d,c[e+4>>2]|0)|0)^(ea(c[f>>2]&b,c[e>>2]|0)|0);return d>>>(c[29664+(a<<2)>>2]|0)|0}function id(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;g=a&7;if((g|0)==3){g=28384+(b<<3)|0;a=28896+(b<<3)|0;a=(ea(c[g+4>>2]&e,c[a+4>>2]|0)|0)^(ea(c[g>>2]&d,c[a>>2]|0)|0);a=(c[29408+(b<<2)>>2]|0)+(a>>>(c[29664+(b<<2)>>2]|0)<<3)|0;d=c[a+4>>2]|0;a=c[a>>2]|0;I=d;i=f;return a|0}else if((g|0)==5){h=28384+(b<<3)|0;a=28896+(b<<3)|0;a=(ea(c[h+4>>2]&e,c[a+4>>2]|0)|0)^(ea(c[h>>2]&d,c[a>>2]|0)|0);a=(c[29408+(b<<2)>>2]|0)+(a>>>(c[29664+(b<<2)>>2]|0)<<3)|0;h=26848+(b<<3)|0;g=27360+(b<<3)|0;e=(ea(c[h+4>>2]&e,c[g+4>>2]|0)|0)^(ea(c[h>>2]&d,c[g>>2]|0)|0);e=(c[27872+(b<<2)>>2]|0)+(e>>>(c[28128+(b<<2)>>2]|0)<<3)|0;d=c[e+4>>2]|c[a+4>>2];a=c[e>>2]|c[a>>2];I=d;i=f;return a|0}else if((g|0)==4){a=26848+(b<<3)|0;h=27360+(b<<3)|0;h=(ea(c[a+4>>2]&e,c[h+4>>2]|0)|0)^(ea(c[a>>2]&d,c[h>>2]|0)|0);h=(c[27872+(b<<2)>>2]|0)+(h>>>(c[28128+(b<<2)>>2]|0)<<3)|0;a=c[h+4>>2]|0;h=c[h>>2]|0;I=a;i=f;return h|0}else{h=30752+(a<<9)+(b<<3)|0;a=c[h+4>>2]|0;h=c[h>>2]|0;I=a;i=f;return h|0}return 0}function jd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;g=c[a>>2]|0;h=g+b|0;a:do{if(h>>>0<64){j=0;k=0;do{if((c[115744+(h<<8)+(h-g<<2)>>2]|0)!=1){break a}l=29920+(h<<3)|0;m=c[l>>2]|0;l=c[l+4>>2]|0;j=m|j;k=l|k;h=g+h|0}while((m&d|0)==0&(l&e|0)==0&h>>>0<64)}else{j=0;k=0}}while(0);g=c[a+4>>2]|0;h=g+b|0;b:do{if(h>>>0<64){while(1){if((c[115744+(h<<8)+(h-g<<2)>>2]|0)!=1){g=j;break b}m=29920+(h<<3)|0;l=c[m>>2]|0;m=c[m+4>>2]|0;j=l|j;k=m|k;h=g+h|0;if(!((l&d|0)==0&(m&e|0)==0&h>>>0<64)){g=j;break}}}else{g=j}}while(0);h=c[a+8>>2]|0;j=h+b|0;c:do{if(j>>>0<64){do{if((c[115744+(j<<8)+(j-h<<2)>>2]|0)!=1){break c}m=29920+(j<<3)|0;l=c[m>>2]|0;m=c[m+4>>2]|0;g=l|g;k=m|k;j=h+j|0}while((l&d|0)==0&(m&e|0)==0&j>>>0<64)}}while(0);a=c[a+12>>2]|0;b=a+b|0;if(!(b>>>0<64)){l=k;m=g;I=l;i=f;return m|0}while(1){if((c[115744+(b<<8)+(b-a<<2)>>2]|0)!=1){d=13;break}m=29920+(b<<3)|0;l=c[m>>2]|0;m=c[m+4>>2]|0;g=l|g;k=m|k;b=a+b|0;if(!((l&d|0)==0&(m&e|0)==0&b>>>0<64)){d=13;break}}if((d|0)==13){I=k;i=f;return g|0}return 0}function kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=i;i=i+16|0;g=e;c[a>>2]=0;Yb(g|0,0)|0;f=c[g>>2]|0;f=Vt(f|0,((f|0)<0)<<31>>31|0,1e3,0)|0;g=(c[g+4>>2]|0)/1e3|0;f=Jt(g|0,((g|0)<0)<<31>>31|0,f|0,I|0)|0;f=Ut(f|0,I|0,1e4,0)|0;g=a+8|0;d=g;c[d>>2]=-236298515;c[d+4>>2]=0;d=a+32|0;b=d;c[b>>2]=-723440521;c[b+4>>2]=0;b=a+24|0;k=b;c[k>>2]=-723440521;c[k+4>>2]=0;k=a+16|0;q=k;c[q>>2]=-723440521;c[q+4>>2]=0;if((f|0)>0){h=-723440521;j=0;a=-236298515;l=0;m=-723440521;n=0;o=-723440521;p=0;q=0}else{i=e;return}do{r=Mt(h|0,j|0,7)|0;s=I;t=Kt(h|0,j|0,57)|0;s=Ht(a|0,l|0,t|r|0,I|s|0)|0;r=I;t=Mt(m|0,n|0,13)|0;u=I;v=Kt(m|0,n|0,51)|0;a=(v|t)^h;l=(I|u)^j;u=Mt(o|0,p|0,37)|0;t=I;v=Kt(o|0,p|0,27)|0;h=Jt(v|u|0,I|t|0,m|0,n|0)|0;j=I;m=Jt(s|0,r|0,o|0,p|0)|0;n=I;o=Jt(s|0,r|0,a|0,l|0)|0;p=I;q=q+1|0}while((q|0)!=(f|0));v=g;c[v>>2]=a;c[v+4>>2]=l;v=k;c[v>>2]=h;c[v+4>>2]=j;v=b;c[v>>2]=m;c[v+4>>2]=n;v=d;c[v>>2]=o;c[v+4>>2]=p;i=e;return}function ld(a){a=a|0;return}function md(a,b){a=a|0;b=b|0;var d=0;d=i;Qs(c[248736]|0);c[248736]=a;c[248738]=b;i=d;return}function nd(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;h=i;i=i+2080|0;k=h+16|0;l=h;c[f>>2]=0;if((c[248736]|0)==0){i=h;return 0}C=g+256|0;B=c[C>>2]|0;C=c[C+4>>2]|0;A=k;c[A>>2]=B;c[A+4>>2]=C;if((B|0)==0&(C|0)==0){o=0;m=0}else{o=0;m=0;do{C=cd(k)|0;B=c[g+(C<<2)>>2]|0;C=994960+(((B<<1&14)+-2|B>>>0<8)<<9)+(C<<3)|0;o=c[C>>2]^o;m=c[C+4>>2]^m;C=k}while(!((c[C>>2]|0)==0&(c[C+4>>2]|0)==0))}p=g+2220|0;n=c[p>>2]|0;C=c[n+24>>2]&15;B=k;c[B>>2]=C;c[B+4>>2]=0;if((C|0)!=0){do{C=994960+((cd(k)|0)+768<<3)|0;o=c[C>>2]^o;m=c[C+4>>2]^m;C=k}while(!((c[C>>2]|0)==0&(c[C+4>>2]|0)==0));n=c[p>>2]|0}n=c[n+40>>2]|0;if((n|0)==64){n=m}else{n=994960+((n&7)+772<<3)|0;o=c[n>>2]^o;n=c[n+4>>2]^m}r=(c[g+2212>>2]|0)==0;m=r?o^-1356364535:o;r=r?n^-120183126:n;c[f>>2]=(od(f,m,r)|0)<<4;q=l+8|0;u=l+10|0;t=l+12|0;p=f+8|0;o=f+16|0;n=f+24|0;s=f+32|0;w=0;v=0;x=0;a:while(1){if(j){while(1){y=pd(f,l)|0;b[q>>1]=0;z=c[y>>2]|0;B=c[248738]|0;if(z>>>0<B>>>0){A=z+1|0;c[y>>2]=A;B=c[248738]|0;C=d[(c[248736]|0)+z>>0]|0}else{A=z;C=255}b[q>>1]=C;if(A>>>0<B>>>0){z=A+1|0;c[y>>2]=z;B=c[248738]|0;A=a[(c[248736]|0)+A>>0]|0}else{z=A;A=-1}b[q>>1]=A&255|(C&65535)<<8;b[u>>1]=0;if(z>>>0<B>>>0){A=z+1|0;c[y>>2]=A;B=c[248738]|0;z=d[(c[248736]|0)+z>>0]|0}else{A=z;z=255}b[u>>1]=z;if(A>>>0<B>>>0){c[y>>2]=A+1;A=a[(c[248736]|0)+A>>0]|0}else{A=-1}b[u>>1]=A&255|(z&65535)<<8;qd(y,t)|0;C=l;if(!((c[C>>2]|0)==(m|0)?(c[C+4>>2]|0)==(r|0):0)){break a}y=b[u>>1]|0;w=(w&65535)<(y&65535)?y:w;x=(y&65535)+x|0;if(y<<16>>16==w<<16>>16){w=y;break}}}else{while(1){y=pd(f,l)|0;b[q>>1]=0;z=c[y>>2]|0;C=c[248738]|0;if(z>>>0<C>>>0){A=z+1|0;c[y>>2]=A;C=c[248738]|0;B=d[(c[248736]|0)+z>>0]|0}else{A=z;B=255}b[q>>1]=B;if(A>>>0<C>>>0){z=A+1|0;c[y>>2]=z;C=c[248738]|0;A=a[(c[248736]|0)+A>>0]|0}else{z=A;A=-1}b[q>>1]=A&255|(B&65535)<<8;b[u>>1]=0;if(z>>>0<C>>>0){A=z+1|0;c[y>>2]=A;C=c[248738]|0;z=d[(c[248736]|0)+z>>0]|0}else{A=z;z=255}b[u>>1]=z;if(A>>>0<C>>>0){c[y>>2]=A+1;A=a[(c[248736]|0)+A>>0]|0}else{A=-1}b[u>>1]=A&255|(z&65535)<<8;qd(y,t)|0;C=l;if(!((c[C>>2]|0)==(m|0)?(c[C+4>>2]|0)==(r|0):0)){break a}y=b[u>>1]|0;w=(w&65535)<(y&65535)?y:w;y=y&65535;x=y+x|0;if((x|0)==0){x=0;continue}F=p;D=c[F>>2]|0;F=c[F+4>>2]|0;A=o;z=c[A>>2]|0;A=c[A+4>>2]|0;C=Mt(z|0,A|0,7)|0;B=I;G=Kt(z|0,A|0,57)|0;B=Ht(D|0,F|0,G|C|0,I|B|0)|0;C=I;G=n;F=c[G>>2]|0;G=c[G+4>>2]|0;D=Mt(F|0,G|0,13)|0;E=I;J=Kt(F|0,G|0,51)|0;z=(J|D)^z;A=(I|E)^A;E=p;c[E>>2]=z;c[E+4>>2]=A;E=s;D=c[E>>2]|0;E=c[E+4>>2]|0;J=Mt(D|0,E|0,37)|0;H=I;K=Kt(D|0,E|0,27)|0;G=Jt(K|J|0,I|H|0,F|0,G|0)|0;F=o;c[F>>2]=G;c[F+4>>2]=I;E=Jt(B|0,C|0,D|0,E|0)|0;D=n;c[D>>2]=E;c[D+4>>2]=I;C=Jt(z|0,A|0,B|0,C|0)|0;B=s;c[B>>2]=C;c[B+4>>2]=I;if(((C>>>0)%(x>>>0)|0)>>>0<y>>>0){break}}}v=e[q>>1]|0}if((v|0)==0){i=h;return 0}f=v>>>12&7;if((f|0)!=0){v=v&4095|(f<<12)+-4096|16384}f=k+2048|0;c[f>>2]=k;g=cg(g,k)|0;c[k+2052>>2]=g;c[g>>2]=0;g=c[f>>2]|0;k=c[g>>2]|0;if((k|0)==0){K=0;i=h;return K|0}while(1){if((v|0)==(k&-49153|0)){g=39;break}g=g+8|0;c[f>>2]=g;k=c[g>>2]|0;if((k|0)==0){k=0;g=39;break}}if((g|0)==39){i=h;return k|0}return 0}function od(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=i;i=i+16|0;m=h;n=((c[248738]|0)>>>4)+-1|0;if((n|0)==0){u=0;i=h;return u|0}l=m+8|0;j=m+10|0;k=m+12|0;q=0;do{o=(n+q|0)>>>1;c[e>>2]=o<<4;p=pd(e,m)|0;b[l>>1]=0;r=c[p>>2]|0;u=c[248738]|0;if(r>>>0<u>>>0){s=r+1|0;c[p>>2]=s;u=c[248738]|0;t=d[(c[248736]|0)+r>>0]|0}else{s=r;t=255}b[l>>1]=t;if(s>>>0<u>>>0){r=s+1|0;c[p>>2]=r;u=c[248738]|0;s=a[(c[248736]|0)+s>>0]|0}else{r=s;s=-1}b[l>>1]=s&255|(t&65535)<<8;b[j>>1]=0;if(r>>>0<u>>>0){s=r+1|0;c[p>>2]=s;u=c[248738]|0;r=d[(c[248736]|0)+r>>0]|0}else{s=r;r=255}b[j>>1]=r;if(s>>>0<u>>>0){c[p>>2]=s+1;s=a[(c[248736]|0)+s>>0]|0}else{s=-1}b[j>>1]=s&255|(r&65535)<<8;qd(p,k)|0;u=m;t=c[u+4>>2]|0;u=t>>>0<g>>>0|((t|0)==(g|0)?(c[u>>2]|0)>>>0<f>>>0:0);q=u?o+1|0:q;n=u?n:o}while(q>>>0<n>>>0);i=h;return q|0}function pd(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;f=b;c[f>>2]=0;c[f+4>>2]=0;f=c[a>>2]|0;g=c[248738]|0;if(f>>>0<g>>>0){g=f+1|0;c[a>>2]=g;h=d[(c[248736]|0)+f>>0]|0;j=0;f=g;g=c[248738]|0}else{h=255;j=0}l=b;c[l>>2]=h;c[l+4>>2]=j;if(f>>>0<g>>>0){g=f+1|0;c[a>>2]=g;l=d[(c[248736]|0)+f>>0]|0;k=0;f=g;g=c[248738]|0}else{l=255;k=0}j=Mt(h|0,j|0,8)|0;j=j|l;k=I|k;l=b;c[l>>2]=j;c[l+4>>2]=k;if(f>>>0<g>>>0){g=f+1|0;c[a>>2]=g;l=d[(c[248736]|0)+f>>0]|0;h=0;f=g;g=c[248738]|0}else{l=255;h=0}j=Mt(j|0,k|0,8)|0;j=j|l;l=I|h;k=b;c[k>>2]=j;c[k+4>>2]=l;if(f>>>0<g>>>0){g=f+1|0;c[a>>2]=g;k=d[(c[248736]|0)+f>>0]|0;h=0;f=g;g=c[248738]|0}else{k=255;h=0}j=Mt(j|0,l|0,8)|0;j=j|k;k=I|h;l=b;c[l>>2]=j;c[l+4>>2]=k;if(f>>>0<g>>>0){g=f+1|0;c[a>>2]=g;l=d[(c[248736]|0)+f>>0]|0;h=0;f=g;g=c[248738]|0}else{l=255;h=0}k=Mt(j|0,k|0,8)|0;k=k|l;l=I|h;j=b;c[j>>2]=k;c[j+4>>2]=l;if(f>>>0<g>>>0){g=f+1|0;c[a>>2]=g;h=d[(c[248736]|0)+f>>0]|0;j=0;f=g;g=c[248738]|0}else{h=255;j=0}l=Mt(k|0,l|0,8)|0;h=l|h;l=I|j;k=b;c[k>>2]=h;c[k+4>>2]=l;if(f>>>0<g>>>0){g=f+1|0;c[a>>2]=g;k=d[(c[248736]|0)+f>>0]|0;j=0;f=g;g=c[248738]|0}else{k=255;j=0}h=Mt(h|0,l|0,8)|0;h=h|k;j=I|j;l=b;c[l>>2]=h;c[l+4>>2]=j;if(!(f>>>0<g>>>0)){g=255;k=0;h=Mt(h|0,j|0,8)|0;l=I;h=h|g;k=l|k;l=b;j=l;c[j>>2]=h;l=l+4|0;c[l>>2]=k;i=e;return a|0}c[a>>2]=f+1;g=d[(c[248736]|0)+f>>0]|0;k=0;h=Mt(h|0,j|0,8)|0;l=I;h=h|g;k=l|k;l=b;j=l;c[j>>2]=h;l=l+4|0;c[l>>2]=k;i=e;return a|0}function qd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;c[d>>2]=0;g=c[b>>2]|0;if(g>>>0<(c[248738]|0)>>>0){c[b>>2]=g+1;f=c[d>>2]<<8;g=a[(c[248736]|0)+g>>0]|0}else{f=0;g=-1}g=f|g&255;c[d>>2]=g;f=c[b>>2]|0;if(f>>>0<(c[248738]|0)>>>0){c[b>>2]=f+1;g=c[d>>2]|0;f=a[(c[248736]|0)+f>>0]|0}else{f=-1}g=g<<8|f&255;c[d>>2]=g;f=c[b>>2]|0;if(f>>>0<(c[248738]|0)>>>0){c[b>>2]=f+1;g=c[d>>2]|0;f=a[(c[248736]|0)+f>>0]|0}else{f=-1}g=g<<8|f&255;c[d>>2]=g;f=c[b>>2]|0;if(!(f>>>0<(c[248738]|0)>>>0)){f=g;g=-1;f=f<<8;g=g&255;g=f|g;c[d>>2]=g;i=e;return b|0}c[b>>2]=f+1;h=c[d>>2]|0;g=a[(c[248736]|0)+f>>0]|0;f=h<<8;g=g&255;g=f|g;c[d>>2]=g;i=e;return b|0}function rd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;h=i;i=i+208|0;e=h+8|0;g=h;x=h+196|0;w=h+184|0;v=h+172|0;u=h+160|0;t=h+148|0;s=h+136|0;r=h+124|0;q=h+112|0;p=h+100|0;j=h+88|0;o=h+76|0;n=h+64|0;m=h+52|0;l=h+40|0;k=h+28|0;d=h+16|0;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;f=b+12|0;c[b+16>>2]=0;c[b+20>>2]=0;c[f>>2]=b+16;a[x>>0]=6;y=x+1|0;a[y+0>>0]=a[1001208>>0]|0;a[y+1>>0]=a[1001209>>0]|0;a[y+2>>0]=a[1001210>>0]|0;a[x+4>>0]=0;y=Vs(12)|0;c[y>>2]=1002248;c[y+4>>2]=0;c[y+8>>2]=1;z=Pd(x,0)|0;A=e;c[A>>2]=z;c[A+4>>2]=I;c[(me(b,e)|0)>>2]=y;y=Vs(12)|0;c[y>>2]=1002248;c[y+4>>2]=1;c[y+8>>2]=0;A=Pd(x,1)|0;z=g;c[z>>2]=A;c[z+4>>2]=I;c[(me(b,g)|0)>>2]=y;if(!((a[x>>0]&1)==0)){Ys(c[x+8>>2]|0)}a[w>>0]=8;A=w+1|0;a[A>>0]=1263423051;a[A+1>>0]=4935246;a[A+2>>0]=19278;a[A+3>>0]=75;a[w+5>>0]=0;A=Vs(12)|0;c[A>>2]=1002224;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(w,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(me(b,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002224;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(w,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(me(b,g)|0)>>2]=A;if(!((a[w>>0]&1)==0)){Ys(c[w+8>>2]|0)}a[v>>0]=8;A=v+1|0;a[A>>0]=1263419979;a[A+1>>0]=4935234;a[A+2>>0]=19278;a[A+3>>0]=75;a[v+5>>0]=0;A=Vs(12)|0;c[A>>2]=1002200;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(v,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(me(b,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002200;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(v,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(me(b,g)|0)>>2]=A;if(!((a[v>>0]&1)==0)){Ys(c[v+8>>2]|0)}a[u>>0]=8;A=u+1|0;a[A>>0]=1347113547;a[A+1>>0]=5262162;a[A+2>>0]=20555;a[A+3>>0]=80;a[u+5>>0]=0;A=Vs(12)|0;c[A>>2]=1002176;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(u,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(me(b,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002176;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(u,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(me(b,g)|0)>>2]=A;if(!((a[u>>0]&1)==0)){Ys(c[u+8>>2]|0)}a[t>>0]=8;A=t+1|0;a[A>>0]=1112232523;a[A+1>>0]=4344658;a[A+2>>0]=16971;a[A+3>>0]=66;a[t+5>>0]=0;A=Vs(12)|0;c[A>>2]=1002152;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(t,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(me(b,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002152;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(t,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(me(b,g)|0)>>2]=A;if(!((a[t>>0]&1)==0)){Ys(c[t+8>>2]|0)}a[s>>0]=8;A=s+1|0;a[A>>0]=1313559115;a[A+1>>0]=5131090;a[A+2>>0]=20043;a[A+3>>0]=78;a[s+5>>0]=0;A=Vs(12)|0;c[A>>2]=1002128;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(s,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(me(b,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002128;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(s,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(me(b,g)|0)>>2]=A;if(!((a[s>>0]&1)==0)){Ys(c[s+8>>2]|0)}a[r>>0]=8;A=r+1|0;a[A>>0]=1347113291;a[A+1>>0]=5262161;a[A+2>>0]=20555;a[A+3>>0]=80;a[r+5>>0]=0;A=Vs(12)|0;c[A>>2]=1002104;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(r,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(me(b,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002104;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(r,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(me(b,g)|0)>>2]=A;if(!((a[r>>0]&1)==0)){Ys(c[r+8>>2]|0)}a[q>>0]=8;A=q+1|0;a[A>>0]=1380667723;a[A+1>>0]=5393233;a[A+2>>0]=21067;a[A+3>>0]=82;a[q+5>>0]=0;A=Vs(12)|0;c[A>>2]=1002080;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(q,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(me(b,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002080;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(q,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(me(b,g)|0)>>2]=A;if(!((a[q>>0]&1)==0)){Ys(c[q+8>>2]|0)}a[p>>0]=8;A=p+1|0;a[A>>0]=1263554123;a[A+1>>0]=4935758;a[A+2>>0]=19280;a[A+3>>0]=75;a[p+5>>0]=0;A=Vs(12)|0;c[A>>2]=1002056;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(p,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(Od(f,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002056;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(p,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(Od(f,g)|0)>>2]=A;if(!((a[p>>0]&1)==0)){Ys(c[p+8>>2]|0)}a[j>>0]=10;A=j+1|0;a[A+0>>0]=a[1001216>>0]|0;a[A+1>>0]=a[1001217>>0]|0;a[A+2>>0]=a[1001218>>0]|0;a[A+3>>0]=a[1001219>>0]|0;a[A+4>>0]=a[1001220>>0]|0;a[j+6>>0]=0;A=Vs(12)|0;c[A>>2]=1002032;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(j,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(Od(f,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002032;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(j,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(Od(f,g)|0)>>2]=A;if(!((a[j>>0]&1)==0)){Ys(c[j+8>>2]|0)}a[o>>0]=10;A=o+1|0;a[A+0>>0]=a[1001224>>0]|0;a[A+1>>0]=a[1001225>>0]|0;a[A+2>>0]=a[1001226>>0]|0;a[A+3>>0]=a[1001227>>0]|0;a[A+4>>0]=a[1001228>>0]|0;a[o+6>>0]=0;A=Vs(12)|0;c[A>>2]=1002008;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(o,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(Od(f,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1002008;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(o,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(Od(f,g)|0)>>2]=A;if(!((a[o>>0]&1)==0)){Ys(c[o+8>>2]|0)}a[n>>0]=10;A=n+1|0;a[A+0>>0]=a[1001232>>0]|0;a[A+1>>0]=a[1001233>>0]|0;a[A+2>>0]=a[1001234>>0]|0;a[A+3>>0]=a[1001235>>0]|0;a[A+4>>0]=a[1001236>>0]|0;a[n+6>>0]=0;A=Vs(12)|0;c[A>>2]=1001984;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(n,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(Od(f,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1001984;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(n,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(Od(f,g)|0)>>2]=A;if(!((a[n>>0]&1)==0)){Ys(c[n+8>>2]|0)}a[m>>0]=10;A=m+1|0;a[A+0>>0]=a[1001240>>0]|0;a[A+1>>0]=a[1001241>>0]|0;a[A+2>>0]=a[1001242>>0]|0;a[A+3>>0]=a[1001243>>0]|0;a[A+4>>0]=a[1001244>>0]|0;a[m+6>>0]=0;A=Vs(12)|0;c[A>>2]=1001960;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(m,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(Od(f,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1001960;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(m,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(Od(f,g)|0)>>2]=A;if(!((a[m>>0]&1)==0)){Ys(c[m+8>>2]|0)}a[l>>0]=10;A=l+1|0;a[A+0>>0]=a[1001248>>0]|0;a[A+1>>0]=a[1001249>>0]|0;a[A+2>>0]=a[1001250>>0]|0;a[A+3>>0]=a[1001251>>0]|0;a[A+4>>0]=a[1001252>>0]|0;a[l+6>>0]=0;A=Vs(12)|0;c[A>>2]=1001936;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(l,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(Od(f,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1001936;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(l,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(Od(f,g)|0)>>2]=A;if(!((a[l>>0]&1)==0)){Ys(c[l+8>>2]|0)}a[k>>0]=12;A=k+1|0;a[A+0>>0]=a[1001256>>0]|0;a[A+1>>0]=a[1001257>>0]|0;a[A+2>>0]=a[1001258>>0]|0;a[A+3>>0]=a[1001259>>0]|0;a[A+4>>0]=a[1001260>>0]|0;a[A+5>>0]=a[1001261>>0]|0;a[k+7>>0]=0;A=Vs(12)|0;c[A>>2]=1001912;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(k,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(Od(f,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1001912;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(k,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(Od(f,g)|0)>>2]=A;if(!((a[k>>0]&1)==0)){Ys(c[k+8>>2]|0)}a[d>>0]=14;j=d+1|0;a[j+0>>0]=a[1001264>>0]|0;a[j+1>>0]=a[1001265>>0]|0;a[j+2>>0]=a[1001266>>0]|0;a[j+3>>0]=a[1001267>>0]|0;a[j+4>>0]=a[1001268>>0]|0;a[j+5>>0]=a[1001269>>0]|0;a[j+6>>0]=a[1001270>>0]|0;j=d+8|0;a[j>>0]=0;A=Vs(12)|0;c[A>>2]=1001888;c[A+4>>2]=0;c[A+8>>2]=1;z=Pd(d,0)|0;y=e;c[y>>2]=z;c[y+4>>2]=I;c[(Od(f,e)|0)>>2]=A;A=Vs(12)|0;c[A>>2]=1001888;c[A+4>>2]=1;c[A+8>>2]=0;y=Pd(d,1)|0;z=g;c[z>>2]=y;c[z+4>>2]=I;c[(Od(f,g)|0)>>2]=A;if((a[d>>0]&1)==0){i=h;return}Ys(c[j>>2]|0);i=h;return}function sd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;e=c[a>>2]|0;d=a+4|0;if((e|0)!=(d|0)){do{f=c[e+24>>2]|0;if((f|0)!=0){dc[c[(c[f>>2]|0)+4>>2]&255](f)}f=c[e+4>>2]|0;if((f|0)==0){while(1){f=c[e+8>>2]|0;if((c[f>>2]|0)==(e|0)){e=f;break}else{e=f}}}else{e=f;while(1){f=c[e>>2]|0;if((f|0)==0){break}else{e=f}}}}while((e|0)!=(d|0))}e=a+12|0;f=c[e>>2]|0;d=a+16|0;if((f|0)!=(d|0)){do{g=c[f+24>>2]|0;if((g|0)!=0){dc[c[(c[g>>2]|0)+4>>2]&255](g)}g=c[f+4>>2]|0;if((g|0)==0){while(1){g=c[f+8>>2]|0;if((c[g>>2]|0)==(f|0)){f=g;break}else{f=g}}}else{f=g;while(1){g=c[f>>2]|0;if((g|0)==0){break}else{f=g}}}}while((f|0)!=(d|0))}Me(e,c[a+16>>2]|0);Le(a,c[a+4>>2]|0);i=b;return}function td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+2064|0;g=f;e=b+2212|0;j=a+8|0;h=c[j>>2]|0;do{if((c[e>>2]|0)==(h|0)){c[g+2048>>2]=g;h=cg(b,g)|0;c[g+2052>>2]=h;c[h>>2]=0;if((h|0)==(g|0)){i=f;return 0}else{h=c[j>>2]|0;break}}}while(0);a=c[a+4>>2]|0;g=c[b+(h<<9)+784>>2]|0;g=((c[b+(a<<5)+340>>2]|0)*258|0)+(c[(c[b+2220>>2]|0)+(a<<2)+16>>2]|0)+(c[1001272+(g<<2)>>2]|0)+(c[1001528+(c[115744+(c[b+(a<<9)+784>>2]<<8)+(g<<2)>>2]<<2)>>2]|0)|0;if((c[b+(a<<5)+356>>2]|0)==0?(c[b+(a<<5)+352>>2]|0)==0:0){h=c[b+(a<<5)+348>>2]|0;if((h|0)!=0){if((c[b+(a<<5)+344>>2]|0)==0){if((h|0)>1?(j=c[b+(a<<9)+596>>2]^c[b+(a<<9)+592>>2],((j>>>3^j)&1|0)!=0):0){d=10}}else{d=10}}}else{d=10}if((d|0)==10){g=g+1e4|0}i=f;return((a|0)==(c[e>>2]|0)?g:0-g|0)|0}function ud(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[a+4>>2]|0;e=c[b+(d<<9)+784>>2]|0;a=c[b+(c[a+8>>2]<<9)+784>>2]|0;f=c[b+(d<<9)+592>>2]|0;if(((f>>>3^f)&1|0)!=0){a=a^56;e=e^56}f=(c[1001528+(c[115744+(e<<8)+(a<<2)>>2]<<2)>>2]|0)+1e4+(c[1001560+(a<<2)>>2]|0)|0;return((d|0)==(c[b+2212>>2]|0)?f:0-f|0)|0}function vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;d=a+4|0;f=c[d>>2]|0;j=c[b+(f<<9)+784>>2]|0;k=c[b+(f<<9)+464>>2]|0;l=(k&4|0)!=0;j=l?j^7:j;h=(f|0)==1;g=c[b+(c[a+8>>2]<<9)+784>>2]|0;g=l?g^7:g;a=l?k^7:k;a=h?a^56:a;b=b+2212|0;if($c(h?j^56:j,a,h?g^56:g,(f|0)!=(c[b>>2]|0)&1)|0){l=a>>3;i=e;return((c[d>>2]|0)==(c[b>>2]|0)?l+10258|0:-10258-l|0)|0}else{i=e;return 0}return 0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;d=c[a+4>>2]|0;m=c[b+(d<<9)+784>>2]|0;n=d*56|0;f=n^m;l=c[a+8>>2]|0;h=c[b+(l<<9)+784>>2]^n;k=c[b+(d<<9)+656>>2]^n;j=c[b+(l<<9)+464>>2]|0;a=j^n;j=j&7;do{if((f|0)<(a|0)&(m&7|0)==(j|0)){b=c[b+2212>>2]|0;f=1278-(c[115744+(f<<8)+(a<<2)>>2]|0)|0}else{m=c[115744+(h<<8)+(a<<2)>>2]|0;b=c[b+2212>>2]|0;if((m|0)>=(((b|0)==(l|0)?4:3)|0)?(c[115744+(h<<8)+(k<<2)>>2]|0)>2:0){f=1278-(c[115744+(f<<8)+(a<<2)>>2]|0)|0;break}if(((h>>3|0)<3&(m|0)==1?(f>>3|0)>2:0)?(g=c[115744+(f<<8)+(a<<2)>>2]|0,(g|0)>((b|0)==(d|0)|2|0)):0){f=80-(g<<3)|0;break}n=a+-8|0;f=200-((c[115744+(f<<8)+(n<<2)>>2]|0)-(c[115744+(h<<8)+(n<<2)>>2]|0)-(c[115744+(a<<8)+(j<<2)>>2]|0)<<3)|0}}while(0);i=e;return((d|0)==(b|0)?f:0-f|0)|0}function xd(a,b){a=a|0;b=b|0;var d=0;d=c[1001272+(c[b+(c[a+8>>2]<<9)+784>>2]<<2)>>2]|0;return((c[a+4>>2]|0)==(c[b+2212>>2]|0)?d:0-d|0)|0}function yd(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[a+8>>2]|0;d=c[b+(e<<9)+784>>2]|0;d=(c[1001816+(c[115744+(d<<8)+(c[b+(e<<9)+528>>2]<<2)>>2]<<2)>>2]|0)+(c[1001272+(d<<2)>>2]|0)|0;return((c[a+4>>2]|0)==(c[b+2212>>2]|0)?d:0-d|0)|0}function zd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;d=c[a+4>>2]|0;h=c[a+8>>2]|0;g=c[b+(h<<9)+784>>2]|0;f=c[b+(h<<9)+464>>2]|0;a=c[1001528+(c[115744+(c[b+(d<<9)+784>>2]<<8)+(g<<2)>>2]<<2)>>2]|0;if(((f>>3^h*7|0)==6?(c[115744+(g<<8)+(f<<2)>>2]|0)==1:0)?(h=29920+(f<<3)|0,!((c[h>>2]&-1515870811|0)==0?(c[h+4>>2]&-1515870811|0)==0:0)):0){g=a;f=b+2212|0;f=c[f>>2]|0;f=(d|0)==(f|0);h=0-g|0;h=f?g:h;i=e;return h|0}g=a+2300|0;f=b+2212|0;f=c[f>>2]|0;f=(d|0)==(f|0);h=0-g|0;h=f?g:h;i=e;return h|0}function Ad(a,b){a=a|0;b=b|0;var d=0;d=c[a+4>>2]|0;a=c[b+(c[a+8>>2]<<9)+784>>2]|0;a=(c[1001272+(a<<2)>>2]|0)+1280+(c[1001528+(c[115744+(c[b+(d<<9)+784>>2]<<8)+(a<<2)>>2]<<2)>>2]|0)|0;return((d|0)==(c[b+2212>>2]|0)?a:0-a|0)|0}function Bd(a,b){a=a|0;b=b|0;return 0}function Cd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;g=a+4|0;p=c[g>>2]|0;n=b+(p<<3)+320|0;d=b+264|0;j=d;m=c[j>>2]|0;j=c[j+4>>2]|0;l=c[b+(p<<9)+464>>2]&7;if((l|0)==0|(l|0)==7){q=30432+(l<<3)|0;if((((~c[q>>2]&(m&c[n>>2])|0)==0?(~c[q+4>>2]&(j&c[n+4>>2])|0)==0:0)?(o=p*56^(l|56),q=o^c[b+(p<<9)+592>>2],((q>>>3^q)&1|0)!=0):0)?(c[115744+(o<<8)+(c[b+(c[a+8>>2]<<9)+784>>2]<<2)>>2]|0)<2:0){q=0;i=e;return q|0}if((l|0)==1|(l|0)==6){k=6}}else if((l|0)==1|(l|0)==6){k=6}do{if((((k|0)==6?(q=30432+(l<<3)|0,(m&~c[q>>2]|0)==0?(j&~c[q+4>>2]|0)==0:0):0)?(f=a+8|0,h=c[f>>2]|0,(c[(c[b+2220>>2]|0)+(h<<2)+16>>2]|0)==0):0)?(c[b+(h<<5)+340>>2]|0)>0:0){q=b+(h<<3)+320|0;k=c[q>>2]&m;j=c[q+4>>2]&j;if((h|0)==0){h=bd(k,j)|0}else{h=dd(k,j)|0}g=c[g>>2]|0;j=c[b+(g<<9)+784>>2]|0;a=c[f>>2]|0;f=c[b+(a<<9)+784>>2]|0;l=c[b+(g<<9)+592>>2]|0;k=g*7|0;if((k^h>>3|0)==6?(p=b+(g<<3)+320|0,o=d,q=29920+(((a|0)==0?8:-8)+h<<3)|0,!((c[o>>2]&c[p>>2]&c[q>>2]|0)==0?(c[o+4>>2]&c[p+4>>2]&c[q+4>>2]|0)==0:0)):0){q=l^h;if(((q>>>3^q)&1|0)==0?(c[b+(g<<5)+340>>2]|0)!=1:0){break}q=c[115744+(h<<8)+(f<<2)>>2]|0;if(!((q|0)>2|(k^f>>3|0)<6|(q|0)>(c[115744+(h<<8)+(j<<2)>>2]|0))){q=0;i=e;return q|0}}}}while(0);q=255;i=e;return q|0}function Dd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;e=c[a+8>>2]|0;f=c[b+(e<<9)+784>>2]|0;g=c[b+(e<<9)+656>>2]|0;h=e*7|0;if((((f>>3^h|0)<2?(j=c[a+4>>2]|0,(c[b+(j<<9)+784>>2]>>3^h|0)>2):0)?(g>>3^h|0)==2:0)?(h=b+(e<<3)+320|0,e=b+264|0,a=33824+(f<<3)|0,j=30752+((j<<3|1)<<9)+(g<<3)|0,!((c[e>>2]&c[h>>2]&c[a>>2]&c[j>>2]|0)==0?(c[e+4>>2]&c[h+4>>2]&c[a+4>>2]&c[j+4>>2]|0)==0:0)):0){j=0;i=d;return j|0}j=255;i=d;return j|0}function Ed(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=i;r=c[a+4>>2]|0;e=c[b+(r<<9)+784>>2]|0;l=c[b+(r<<9)+464>>2]|0;o=(l&4|0)!=0;e=o?e^7:e;j=(r|0)==1;e=j?e^56:e;p=c[a+8>>2]|0;a=c[b+(p<<9)+784>>2]|0;a=o?a^7:a;a=j?a^56:a;n=c[b+(r<<9)+656>>2]|0;n=o?n^7:n;n=j?n^56:n;l=o?l^7:l;l=j?l^56:l;p=c[b+(p<<9)+656>>2]|0;p=o?p^7:p;p=j?p^56:p;j=l&7;o=l>>3;m=j|56;r=(c[b+2212>>2]|0)==(r|0);b=r&1;q=(o|0)<5;if(q?(e|0)<40?(c[115744+(a<<8)+(m<<2)>>2]|0)<2:0:0){if((p&-8|0)==40){r=0;i=d;return r|0}if((o|0)<3?(n&-8|0)!=40:0){r=0;i=d;return r|0}}if(((o|0)==5?(c[115744+(a<<8)+(m<<2)>>2]|0)<2:0)?(b+(e>>3)|0)<6:0){if(p>>>0<8){r=0;i=d;return r|0}if(!r?(s=(p&7)-j|0,(((s|0)>-1?s:0-s|0)|0)>2):0){s=0;i=d;return s|0}}if((o|0)>4&(a|0)==(m|0)&p>>>0<8){if(!r){s=0;i=d;return s|0}if((c[115744+(e<<8)+(l<<2)>>2]|0)>1){s=0;i=d;return s|0}}if(((l|0)==48&(n|0)==56?(a&-2|0)==54:0)?(p&7|0)==0:0){if((p>>3|0)<3){s=0;i=d;return s|0}if((e&7)>>>0>2|(e>>3|0)<5){s=0;i=d;return s|0}}r=l+8|0;if((q&(a|0)==(r|0)?((c[115744+(e<<8)+(l<<2)>>2]|0)-b|0)>1:0)?((c[115744+(e<<8)+(p<<2)>>2]|0)-b|0)>1:0){s=0;i=d;return s|0}p=(j|0)==0;if(((!((o|0)!=6|p)?!((n&7|0)!=(j|0)|(n|0)==(m|0)):0)?(g=c[115744+(e<<8)+(m<<2)>>2]|0,(g|0)<((b|-2)+(c[115744+(a<<8)+(m<<2)>>2]|0)|0)):0)?(g|0)<((c[115744+(a<<8)+(n<<2)>>2]|0)+b|0):0){s=128-(g<<1)|0;i=d;return s|0}do{if(((!p?(n&7|0)==(j|0)&(n|0)<(l|0):0)?(f=c[115744+(e<<8)+(m<<2)>>2]|0,k=b|-2,(f|0)<(k+(c[115744+(a<<8)+(m<<2)>>2]|0)|0)):0)?(h=c[115744+(e<<8)+(r<<2)>>2]|0,(h|0)<(k+(c[115744+(a<<8)+(r<<2)>>2]|0)|0)):0){s=(c[115744+(a<<8)+(n<<2)>>2]|0)+b|0;if((s|0)<=2?!((f|0)<(s|0)&(h|0)<(s|0)):0){break}s=128-(c[115744+(l<<8)+(m<<2)>>2]<<3)-(f<<1)|0;i=d;return s|0}}while(0);if(!((o|0)<4&(a|0)>(l|0))){s=255;i=d;return s|0}f=a&7;if((f|0)==(j|0)){s=10;i=d;return s|0}s=f-j|0;if((((s|0)>-1?s:0-s|0)|0)!=1){s=255;i=d;return s|0}e=c[115744+(e<<8)+(a<<2)>>2]|0;if((e|0)<=2){s=255;i=d;return s|0}s=24-(e<<1)|0;i=d;return s|0}function Fd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;j=b+264|0;do{if(!((c[j>>2]&-2122219135|0)==0?(c[j+4>>2]&-2122219135|0)==0:0)){f=c[a+8>>2]|0;e=c[b+(f<<9)+784>>2]|0;f=c[b+(f<<9)+592>>2]|0;g=c[a+4>>2]|0;h=c[b+(g<<9)+464>>2]|0;j=h>>3^g*7;a=(g|0)==0?8:-8;if((j|0)==5){if((c[115744+((a<<1)+h<<8)+(e<<2)>>2]|0)>=2){break}j=113184+(f<<3)|0;g=29920+(a+h<<3)|0;if((c[g>>2]&c[j>>2]|0)==0?(c[g+4>>2]&c[j+4>>2]|0)==0:0){break}j=(f&7)-(h&7)|0;if((((j|0)>-1?j:0-j|0)|0)>1){b=8}else{break}i=d;return b|0}else if((j|0)!=4){break}j=h^f;if(((j>>>3^j)&1|0)==0){f=c[115744+((a*3|0)+h<<8)+(e<<2)>>2]|0;if((f|0)<3){if((f|0)!=0){j=24;i=d;return j|0}if((e|0)!=((c[b+(g<<9)+784>>2]|0)+(a<<1)|0)){j=24;i=d;return j|0}}j=48;i=d;return j|0}}}while(0);j=255;i=d;return j|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;f=i;g=c[a+4>>2]|0;d=c[b+(g<<9)+464>>2]|0;e=c[b+(g<<9)+468>>2]|0;a=c[b+(c[a+8>>2]<<9)+784>>2]|0;h=b+((g^1)<<3)+320|0;j=b+264|0;b=c[j>>2]&c[h>>2];h=c[j+4>>2]&c[h+4>>2];j=109600+(g<<9)+(d<<3)|0;if((b&c[j>>2]|0)==0?(h&c[j+4>>2]|0)==0:0){j=255;i=f;return j|0}j=109600+(g<<9)+(e<<3)|0;if((c[j>>2]&b|0)==0?(c[j+4>>2]&h|0)==0:0){j=255;i=f;return j|0}h=g*7|0;b=d>>3^h;g=e>>3^h;b=(b|0)<(g|0)?g:b;
+g=a&7;j=g-(d&7)|0;a:do{if(((((j|0)>-1?j:0-j|0)|0)<2?(j=g-(e&7)|0,(((j|0)>-1?j:0-j|0)|0)<2):0)?(a>>3^h|0)>(b|0):0){switch(b|0){case 2:case 1:{j=10;i=f;return j|0};case 4:{j=20;i=f;return j|0};case 5:{j=40;i=f;return j|0};case 3:{j=15;i=f;return j|0};default:{break a}}}}while(0);j=255;i=f;return j|0}function Hd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;d=i;g=c[a+8>>2]|0;e=c[b+(g<<9)+784>>2]|0;h=c[a+4>>2]|0;a=b+(h<<3)+320|0;j=b+264|0;f=c[j>>2]&c[a>>2];a=c[j+4>>2]&c[a+4>>2];b=c[b+(h<<9)+464>>2]|0;g=30624+(g<<6)+(e>>3<<3)|0;if((((f&~c[g>>2]|0)==0?(a&~c[g+4>>2]|0)==0:0)?(f&-16843010|0)==0&(a&-16843010|0)==0|(f&2139062143|0)==0&(a&2139062143|0)==0:0)?(j=(e&7)-(b&7)|0,(((j|0)>-1?j:0-j|0)|0)<2):0){j=0;i=d;return j|0}j=255;i=d;return j|0}function Id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;h=c[a+4>>2]|0;d=c[b+(h<<9)+464>>2]|0;g=c[b+(h<<9)+592>>2]|0;a=c[a+8>>2]|0;f=c[b+(a<<9)+592>>2]|0;k=c[b+(a<<9)+784>>2]|0;if((((k^d)&7|0)==0?(l=h*7|0,j=k>>3^l,(d>>3^l|0)<(j|0)):0)?(l=k^g,((l>>>3^l)&1|0)!=0|(j|0)<6):0){l=0;i=e;return l|0}l=f^g;if(((l>>>3^l)&1|0)!=0){if((h*7^d>>3|0)<5){l=0;i=e;return l|0}h=108576+(h<<9)+(d<<3)|0;g=c[h>>2]|0;h=c[h+4>>2]|0;k=b+(a<<3)+320|0;l=b+304|0;if(!((c[k>>2]&g&c[l>>2]|0)==0?(c[k+4>>2]&h&c[l+4>>2]|0)==0:0)){l=0;i=e;return l|0}k=b+256|0;j=28384+(f<<3)|0;l=28896+(f<<3)|0;l=(ea(c[j+4>>2]&c[k+4>>2],c[l+4>>2]|0)|0)^(ea(c[j>>2]&c[k>>2],c[l>>2]|0)|0);l=(c[29408+(f<<2)>>2]|0)+(l>>>(c[29664+(f<<2)>>2]|0)<<3)|0;if(!((c[l>>2]&g|0)==0?(c[l+4>>2]&h|0)==0:0)?(c[115744+(f<<8)+(d<<2)>>2]|0)>2:0){l=0;i=e;return l|0}}l=255;i=e;return l|0}function Jd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=i;l=c[a+4>>2]|0;d=c[b+(l<<9)+592>>2]|0;g=c[a+8>>2]|0;a=c[b+(g<<9)+592>>2]|0;p=a^d;if(((p>>>3^p)&1|0)==0){p=255;i=e;return p|0}j=c[b+(g<<9)+784>>2]|0;m=c[b+(l<<9)+464>>2]|0;n=c[b+(l<<9)+468>>2]|0;h=m>>3;f=n>>3;k=l*7|0;if((h^k|0)>(f^k|0)){q=n&7;o=m;n=q;p=m&7;m=h<<3|q}else{m=m&7;o=n;n=n&7;p=m;m=f<<3|m}l=o+((l|0)==0?8:-8)|0;n=p-n|0;n=(n|0)>-1?n:0-n|0;if((n|0)==0){if((((l^j)&7|0)==0?(k^j>>3|0)>=(k^l>>3|0):0)?(q=j^d,((q>>>3^q)&1|0)!=0):0){q=0;i=e;return q|0}q=255;i=e;return q|0}else if((n|0)==1){if((j|0)==(l|0)?(q=j^d,((q>>>3^q)&1|0)!=0):0){if((a|0)==(m|0)){q=0;i=e;return q|0}o=b+256|0;q=28384+(m<<3)|0;p=28896+(m<<3)|0;p=(ea(c[q+4>>2]&c[o+4>>2],c[p+4>>2]|0)|0)^(ea(c[q>>2]&c[o>>2],c[p>>2]|0)|0);p=(c[29408+(m<<2)>>2]|0)+(p>>>(c[29664+(m<<2)>>2]|0)<<3)|0;o=b+(g<<3)+320|0;q=b+280|0;if(!((c[o>>2]&c[p>>2]&c[q>>2]|0)==0?(c[o+4>>2]&c[p+4>>2]&c[q+4>>2]|0)==0:0)){q=0;i=e;return q|0}q=h-f|0;if((((q|0)>-1?q:0-q|0)|0)>1){q=0;i=e;return q|0}}if((j|0)==(m|0)?(q=j^d,((q>>>3^q)&1|0)!=0):0){if((a|0)==(l|0)){q=0;i=e;return q|0}o=b+256|0;q=28384+(l<<3)|0;p=28896+(l<<3)|0;p=(ea(c[q+4>>2]&c[o+4>>2],c[p+4>>2]|0)|0)^(ea(c[q>>2]&c[o>>2],c[p>>2]|0)|0);p=(c[29408+(l<<2)>>2]|0)+(p>>>(c[29664+(l<<2)>>2]|0)<<3)|0;o=b+(g<<3)+320|0;q=b+280|0;if(!((c[o>>2]&c[p>>2]&c[q>>2]|0)==0?(c[o+4>>2]&c[p+4>>2]&c[q+4>>2]|0)==0:0)){q=0;i=e;return q|0}}q=255;i=e;return q|0}else{q=255;i=e;return q|0}return 0}function Kd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;h=c[a+4>>2]|0;g=c[b+(h<<9)+464>>2]|0;f=c[b+(h<<9)+592>>2]|0;a=c[b+(c[a+8>>2]<<9)+784>>2]|0;if((((a^g)&7|0)==0?(b=h*7|0,d=a>>3^b,(g>>3^b|0)<(d|0)):0)?(b=a^f,((b>>>3^b)&1|0)!=0|(d|0)<6):0){b=0;i=e;return b|0}b=255;i=e;return b|0}function Ld(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;e=c[a+4>>2]|0;f=c[b+(e<<9)+464>>2]|0;g=(f&4|0)!=0;f=g?f^7:f;e=(e|0)==1;b=c[b+(c[a+8>>2]<<9)+784>>2]|0;b=g?b^7:b;if(((e?f^56:f)|0)==48?(c[130080+((e?b^56:b)<<2)>>2]|0)<2:0){g=0;i=d;return g|0}g=255;i=d;return g|0}function Md(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;f=c[a+4>>2]|0;e=c[b+(f<<9)+464>>2]|0;a=c[a+8>>2]|0;g=c[b+(a<<9)+592>>2]|0;f=108576+(f<<9)+(e<<3)|0;j=b+256|0;k=28384+(g<<3)|0;h=28896+(g<<3)|0;h=(ea(c[k+4>>2]&c[j+4>>2],c[h+4>>2]|0)|0)^(ea(c[k>>2]&c[j>>2],c[h>>2]|0)|0);g=(c[29408+(g<<2)>>2]|0)+(h>>>(c[29664+(g<<2)>>2]|0)<<3)|0;if((c[g>>2]&c[f>>2]|0)==0?(c[g+4>>2]&c[f+4>>2]|0)==0:0){k=255;i=d;return k|0}k=c[115744+(c[b+(a<<9)+784>>2]<<8)+(e<<2)>>2]|0;i=d;return k|0}function Nd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;g=c[a+4>>2]|0;f=c[b+(g<<9)+784>>2]|0;j=c[b+(g<<9)+464>>2]|0;k=(j&4|0)!=0;f=k?f^7:f;e=(g|0)==1;h=c[b+(c[a+8>>2]<<9)+784>>2]|0;h=k?h^7:h;a=k?j^7:j;a=e?a^56:a;if(!((a>>3|0)<4|(a&7|0)==0)){k=255;i=d;return k|0}k=$c(e?f^56:f,a,e?h^56:h,(g|0)!=(c[b+2212>>2]|0)&1)|0;k=k?255:0;i=d;return k|0}function Od(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e;d=a+4|0;g=c[d>>2]|0;do{if((g|0)!=0){j=b;h=c[j>>2]|0;j=c[j+4>>2]|0;while(1){k=g+16|0;l=c[k>>2]|0;k=c[k+4>>2]|0;if(j>>>0<k>>>0|(j|0)==(k|0)&h>>>0<l>>>0){k=c[g>>2]|0;if((k|0)==0){h=5;break}else{g=k;continue}}if(!(k>>>0<j>>>0|(k|0)==(j|0)&l>>>0<h>>>0)){h=9;break}k=g+4|0;l=c[k>>2]|0;if((l|0)==0){h=8;break}else{g=l}}if((h|0)==5){c[f>>2]=g;f=g;break}else if((h|0)==8){c[f>>2]=g;f=k;break}else if((h|0)==9){c[f>>2]=g;break}}else{g=a+4|0;c[f>>2]=g;f=g}}while(0);h=c[f>>2]|0;if((h|0)!=0){l=h;l=l+24|0;i=e;return l|0}h=Vs(32)|0;k=b;l=c[k+4>>2]|0;b=h+16|0;c[b>>2]=c[k>>2];c[b+4>>2]=l;c[h+24>>2]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=g;c[f>>2]=h;b=c[c[a>>2]>>2]|0;if((b|0)==0){b=h}else{c[a>>2]=b;b=c[f>>2]|0}_c(c[d>>2]|0,b);l=a+8|0;c[l>>2]=(c[l>>2]|0)+1;l=h;l=l+24|0;i=e;return l|0}function Pd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=i;i=i+2320|0;f=g+2296|0;e=g+2280|0;k=g+2268|0;l=g+2256|0;h=g+2244|0;j=g+2232|0;m=g;q=a[b>>0]|0;r=(q&1)==0;if(r){p=(q&255)>>>1}else{p=c[b+4>>2]|0}if(p>>>0>1){if(r){o=b+1|0}else{o=c[b+8>>2]|0}p=Et(o+1|0,75,p+-1|0)|0;if((p|0)!=0){s=p-o|0}else{s=-1}}else{s=-1}if(r){o=b+1|0;p=(q&255)>>>1}else{o=c[b+8>>2]|0;p=c[b+4>>2]|0}t=p-s|0;if(t>>>0<11){p=t<<1&255;a[f>>0]=p;u=f+1|0}else{p=t+16&-16;u=Vs(p)|0;c[f+8>>2]=u;p=p|1;c[f>>2]=p;c[f+4>>2]=t;p=p&255}Nt(u|0,o+s|0,t|0)|0;a[u+t>>0]=0;o=f+12|0;if(r){t=(q&255)>>>1}else{t=c[b+4>>2]|0}if(t>>>0>1){if(r){s=b+1|0}else{s=c[b+8>>2]|0}t=Et(s+1|0,75,t+-1|0)|0;if((t|0)!=0){s=t-s|0}else{s=-1}}else{s=-1}if(r){q=(q&255)>>>1;b=b+1|0}else{q=c[b+4>>2]|0;b=c[b+8>>2]|0}r=q>>>0<s>>>0?q:s;if(r>>>0<11){a[o>>0]=r<<1;q=o+1|0}else{u=r+16&-16;q=Vs(u)|0;c[f+20>>2]=q;c[o>>2]=u|1;c[f+16>>2]=r}Nt(q|0,b|0,r|0)|0;a[q+r>>0]=0;q=f+(d*12|0)|0;r=a[q>>0]|0;if((r&1)==0){b=q+1|0;d=q+((r&255)>>>1)+1|0;q=q+1|0}else{q=c[f+(d*12|0)+8>>2]|0;b=q;d=q+(c[f+(d*12|0)+4>>2]|0)|0}if((b|0)==(d|0)){b=f}else{while(1){a[q>>0]=ft(a[b>>0]|0)|0;b=b+1|0;if((b|0)==(d|0)){break}else{q=q+1|0}}b=f;p=a[f>>0]|0}if((p&1)==0){d=(p&255)>>>1}else{d=c[f+4>>2]|0}d=56-d&255;c[j+0>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;p=a[b>>0]|0;if((p&1)==0){p=(p&255)>>>1;q=f+1|0}else{p=c[f+4>>2]|0;q=c[f+8>>2]|0}if((p+1|0)>>>0<11){a[j>>0]=p<<1;b=j+1|0}else{u=p+17&-16;b=Vs(u)|0;c[j+8>>2]=b;c[j>>2]=u|1;c[j+4>>2]=p}Nt(b|0,q|0,p|0)|0;a[b+p>>0]=0;ik(j,d);c[h+0>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;d=a[j>>0]|0;if((d&1)==0){p=(d&255)>>>1;d=j+1|0}else{p=c[j+4>>2]|0;d=c[j+8>>2]|0}if((p+13|0)>>>0<11){a[h>>0]=p<<1;b=h+1|0}else{u=p+29&-16;b=Vs(u)|0;c[h+8>>2]=b;c[h>>2]=u|1;c[h+4>>2]=p}Nt(b|0,d|0,p|0)|0;a[b+p>>0]=0;jk(h,1001848,13)|0;c[l+0>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;d=a[h>>0]|0;q=(d&1)==0;if(q){d=(d&255)>>>1}else{d=c[h+4>>2]|0}b=a[o>>0]|0;p=(b&1)==0;if(p){b=(b&255)>>>1}else{b=c[f+16>>2]|0}if(q){q=h+1|0}else{q=c[h+8>>2]|0}r=b+d|0;if(r>>>0<11){a[l>>0]=d<<1;r=l+1|0}else{u=r+16&-16;r=Vs(u)|0;c[l+8>>2]=r;c[l>>2]=u|1;c[l+4>>2]=d}Nt(r|0,q|0,d|0)|0;a[r+d>>0]=0;if(p){d=o+1|0}else{d=c[f+20>>2]|0}jk(l,d,b)|0;o=a[o>>0]|0;if((o&1)==0){o=(o&255)>>>1}else{o=c[f+16>>2]|0}o=56-o&255;c[k+0>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;d=a[l>>0]|0;if((d&1)==0){p=(d&255)>>>1;b=l+1|0}else{p=c[l+4>>2]|0;b=c[l+8>>2]|0}if((p+1|0)>>>0<11){a[k>>0]=p<<1;d=k+1|0}else{u=p+17&-16;d=Vs(u)|0;c[k+8>>2]=d;c[k>>2]=u|1;c[k+4>>2]=p}Nt(d|0,b|0,p|0)|0;a[d+p>>0]=0;ik(k,o);c[e+0>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;o=a[k>>0]|0;do{if((o&1)==0){d=(o&255)>>>1;o=k+1|0;n=81}else{d=c[k+4>>2]|0;o=c[k+8>>2]|0;if(d>>>0<4294967285){n=81;break}a[e>>0]=d<<1;p=e+1|0}}while(0);if((n|0)==81){u=d+27&-16;p=Vs(u)|0;c[e+8>>2]=p;c[e>>2]=u|1;c[e+4>>2]=d}Nt(p|0,o|0,d|0)|0;a[p+d>>0]=0;jk(e,1001864,11)|0;if(!((a[k>>0]&1)==0)){Ys(c[k+8>>2]|0)}if(!((a[l>>0]&1)==0)){Ys(c[l+8>>2]|0)}if(!((a[h>>0]&1)==0)){Ys(c[h+8>>2]|0)}if(!((a[j>>0]&1)==0)){Ys(c[j+8>>2]|0)}Gg(m,e,0,0);h=(c[m+2220>>2]|0)+8|0;j=c[h>>2]|0;h=c[h+4>>2]|0;if(!((a[e>>0]&1)==0)){Ys(c[e+8>>2]|0)}if(!((a[f+12>>0]&1)==0)){Ys(c[f+20>>2]|0)}if((a[f>>0]&1)==0){I=h;i=g;return j|0}Ys(c[f+8>>2]|0);I=h;i=g;return j|0}function Qd(a){a=a|0;return}function Rd(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Sd(a){a=a|0;return c[a+4>>2]|0}function Td(a){a=a|0;return}function Ud(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Vd(a){a=a|0;return c[a+4>>2]|0}function Wd(a){a=a|0;return}function Xd(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Yd(a){a=a|0;return c[a+4>>2]|0}function Zd(a){a=a|0;return}function _d(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function $d(a){a=a|0;return c[a+4>>2]|0}function ae(a){a=a|0;return}function be(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function ce(a){a=a|0;return c[a+4>>2]|0}function de(a){a=a|0;return}function ee(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function fe(a){a=a|0;return c[a+4>>2]|0}function ge(a){a=a|0;return}function he(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function ie(a){a=a|0;return c[a+4>>2]|0}function je(a){a=a|0;return}function ke(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function le(a){a=a|0;return c[a+4>>2]|0}function me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e;d=a+4|0;g=c[d>>2]|0;do{if((g|0)!=0){j=b;h=c[j>>2]|0;j=c[j+4>>2]|0;while(1){k=g+16|0;l=c[k>>2]|0;k=c[k+4>>2]|0;if(j>>>0<k>>>0|(j|0)==(k|0)&h>>>0<l>>>0){k=c[g>>2]|0;if((k|0)==0){h=5;break}else{g=k;continue}}if(!(k>>>0<j>>>0|(k|0)==(j|0)&l>>>0<h>>>0)){h=9;break}k=g+4|0;l=c[k>>2]|0;if((l|0)==0){h=8;break}else{g=l}}if((h|0)==5){c[f>>2]=g;f=g;break}else if((h|0)==8){c[f>>2]=g;f=k;break}else if((h|0)==9){c[f>>2]=g;break}}else{g=a+4|0;c[f>>2]=g;f=g}}while(0);h=c[f>>2]|0;if((h|0)!=0){l=h;l=l+24|0;i=e;return l|0}h=Vs(32)|0;k=b;l=c[k+4>>2]|0;b=h+16|0;c[b>>2]=c[k>>2];c[b+4>>2]=l;c[h+24>>2]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=g;c[f>>2]=h;b=c[c[a>>2]>>2]|0;if((b|0)==0){b=h}else{c[a>>2]=b;b=c[f>>2]|0}_c(c[d>>2]|0,b);l=a+8|0;c[l>>2]=(c[l>>2]|0)+1;l=h;l=l+24|0;i=e;return l|0}function ne(a){a=a|0;return}function oe(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function pe(a){a=a|0;return c[a+4>>2]|0}function qe(a){a=a|0;return}function re(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function se(a){a=a|0;return c[a+4>>2]|0}function te(a){a=a|0;return}function ue(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function ve(a){a=a|0;return c[a+4>>2]|0}function we(a){a=a|0;return}function xe(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function ye(a){a=a|0;return c[a+4>>2]|0}function ze(a){a=a|0;return}function Ae(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Be(a){a=a|0;return c[a+4>>2]|0}function Ce(a){a=a|0;return}function De(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Ee(a){a=a|0;return c[a+4>>2]|0}function Fe(a){a=a|0;return}function Ge(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function He(a){a=a|0;return c[a+4>>2]|0}function Ie(a){a=a|0;return}function Je(a){a=a|0;var b=0;b=i;Ys(a);i=b;return}function Ke(a){a=a|0;return c[a+4>>2]|0}function Le(a,b){a=a|0;b=b|0;var d=0;d=i;if((b|0)==0){i=d;return}else{Le(a,c[b>>2]|0);Le(a,c[b+4>>2]|0);Ys(b);i=d;return}}function Me(a,b){a=a|0;b=b|0;var d=0;d=i;if((b|0)==0){i=d;return}else{Me(a,c[b>>2]|0);Me(a,c[b+4>>2]|0);Ys(b);i=d;return}}function xt(e,f,g,j,l){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,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,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;n=i;i=i+848|0;x=n+16|0;K=n+8|0;r=n+812|0;s=r;q=n+800|0;L=n+544|0;E=n+504|0;H=n;C=n+496|0;G=(e|0)!=0;_=E+40|0;D=_;E=E+39|0;J=H+4|0;p=q+12|0;q=q+11|0;w=p;v=w-s|0;t=-2-s|0;u=w+2|0;y=x+264|0;z=r+9|0;A=z;B=r+8|0;Ia=0;Ja=0;pa=0;Oa=0;La=0;a:while(1){do{if((pa|0)>-1){if((Oa|0)>(2147483647-pa|0)){c[(Eb()|0)>>2]=75;pa=-1;break}else{pa=Oa+pa|0;break}}}while(0);Ga=a[f>>0]|0;if(Ga<<24>>24==0){Ea=339;break}else{Fa=f}while(1){if(Ga<<24>>24==37){S=Fa;R=Fa;Ea=9;break}else if(Ga<<24>>24==0){ha=Fa;oa=Fa;break}_a=Fa+1|0;Ga=a[_a>>0]|0;Fa=_a}b:do{if((Ea|0)==9){while(1){Ea=0;if((a[S+1>>0]|0)!=37){ha=S;oa=R;break b}oa=R+1|0;ha=S+2|0;if((a[ha>>0]|0)==37){S=ha;R=oa}else{break}}}}while(0);Oa=oa-f|0;if(G){ut(f,Oa,e)|0}if((oa|0)!=(f|0)){Ya=Ja;_a=Ia;f=ha;Ja=Ya;Ia=_a;continue}Ha=ha+1|0;Ma=a[Ha>>0]|0;Ka=(Ma<<24>>24)+-48|0;if(Ka>>>0<10?(a[ha+2>>0]|0)==36:0){Ha=ha+3|0;Ma=a[Ha>>0]|0;Fa=1}else{Ka=-1;Fa=La}Ga=Ma<<24>>24;c:do{if((Ga+-32|0)>>>0<32){Pa=0;while(1){if((1<<Ga+-32&75913|0)==0){Ga=Ma;break c}Pa=1<<(Ma<<24>>24)+-32|Pa;Ha=Ha+1|0;Ma=a[Ha>>0]|0;Ga=Ma<<24>>24;if(!((Ga+-32|0)>>>0<32)){Ga=Ma;break}}}else{Ga=Ma;Pa=0}}while(0);do{if(Ga<<24>>24==42){Ga=Ha+1|0;Ma=(a[Ga>>0]|0)+-48|0;if(Ma>>>0<10?(a[Ha+2>>0]|0)==36:0){c[l+(Ma<<2)>>2]=10;Fa=1;Ma=Ha+3|0;Ha=c[j+((a[Ga>>0]|0)+-48<<3)>>2]|0}else{if((Fa|0)!=0){m=-1;Ea=357;break a}if(!G){Fa=0;Ha=0;break}Fa=c[g>>2]|0;Ha=c[Fa>>2]|0;c[g>>2]=Fa+4;Fa=0;Ma=Ga}if((Ha|0)<0){Ga=Ma;Pa=Pa|8192;Ha=0-Ha|0}else{Ga=Ma}}else{Ma=Ga<<24>>24;if((Ma+-48|0)>>>0<10){Ga=Ha;Ha=0;do{Ha=Ma+-48+(Ha*10|0)|0;Ga=Ga+1|0;Ma=a[Ga>>0]|0}while((Ma+-48|0)>>>0<10);if((Ha|0)<0){m=-1;Ea=357;break a}}else{Ga=Ha;Ha=0}}}while(0);d:do{if((a[Ga>>0]|0)==46){Ma=Ga+1|0;Na=a[Ma>>0]|0;if(!(Na<<24>>24==42)){Na=Na<<24>>24;if((Na+-48|0)>>>0<10){Ga=Ma;Ma=0}else{Ga=Ma;Ma=0;break}while(1){Ma=Na+-48+(Ma*10|0)|0;Ga=Ga+1|0;Na=a[Ga>>0]|0;if(!((Na+-48|0)>>>0<10)){break d}}}Ma=Ga+2|0;Na=(a[Ma>>0]|0)+-48|0;if(Na>>>0<10?(a[Ga+3>>0]|0)==36:0){c[l+(Na<<2)>>2]=10;Ga=Ga+4|0;Ma=c[j+((a[Ma>>0]|0)+-48<<3)>>2]|0;break}if((Fa|0)!=0){m=-1;Ea=357;break a}if(G){Ga=c[g>>2]|0;_a=c[Ga>>2]|0;c[g>>2]=Ga+4;Ga=Ma;Ma=_a}else{Ga=Ma;Ma=0}}else{Ma=-1}}while(0);Na=Ga;Qa=0;while(1){Ra=a[Na>>0]|0;Sa=(Ra<<24>>24)+-65|0;if(Sa>>>0>57){m=-1;Ea=357;break a}Ga=Na+1|0;Ta=a[1092096+(Qa*58|0)+Sa>>0]|0;Sa=Ta&255;if((Sa+-1|0)>>>0<8){Na=Ga;Qa=Sa}else{break}}if(Ta<<24>>24==0){m=-1;Ea=357;break}Ua=(Ka|0)>-1;e:do{if(Ta<<24>>24==19){if(Ua){m=-1;Ea=357;break a}if(!G){Ya=Ja;_a=Ia;f=Ga;La=Fa;Ja=Ya;Ia=_a;continue a}}else{f:do{if(Ua){c[l+(Ka<<2)>>2]=Sa;P=j+(Ka<<3)|0;M=c[P>>2]|0;P=c[P+4>>2]|0;Ea=64}else{if(!G){m=0;Ea=357;break a}if((Ta&255)>20){break e}do{switch(Sa|0){case 15:{N=c[g>>2]|0;O=c[N>>2]|0;c[g>>2]=N+4;N=O<<24>>24;O=(((O&255)<<24>>24|0)<0)<<31>>31;break f};case 11:{O=c[g>>2]|0;N=c[O>>2]|0;c[g>>2]=O+4;O=0;break f};case 14:{O=c[g>>2]|0;N=c[O>>2]|0;c[g>>2]=O+4;N=N&65535;O=0;break f};case 10:{N=c[g>>2]|0;O=c[N>>2]|0;c[g>>2]=N+4;N=O;O=((O|0)<0)<<31>>31;break f};case 16:{O=c[g>>2]|0;N=c[O>>2]|0;c[g>>2]=O+4;N=N&255;O=0;break f};case 12:{_a=c[g>>2]|0;O=_a;N=c[O>>2]|0;O=c[O+4>>2]|0;c[g>>2]=_a+8;break f};case 18:{M=c[g>>2]|0;c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>>2];$a=+h[k>>3];c[g>>2]=M+8;h[k>>3]=$a;M=c[k>>2]|0;P=c[k+4>>2]|0;Ea=64;break f};case 9:{O=c[g>>2]|0;N=c[O>>2]|0;c[g>>2]=O+4;O=Ia;break f};case 17:{N=c[g>>2]|0;c[k>>2]=c[N>>2];c[k+4>>2]=c[N+4>>2];$a=+h[k>>3];c[g>>2]=N+8;h[k>>3]=$a;N=c[k>>2]|0;O=c[k+4>>2]|0;break f};case 13:{N=c[g>>2]|0;O=c[N>>2]|0;c[g>>2]=N+4;N=O<<16>>16;O=(((O&65535)<<16>>16|0)<0)<<31>>31;break f};default:{N=Ja;O=Ia;break f}}}while(0)}}while(0);if((Ea|0)==64){Ea=0;Ja=M;if(G){N=Ja;O=P}else{Ia=P;f=Ga;La=Fa;continue a}}Ra=a[Na>>0]|0;Ja=N;Ia=O}}while(0);Na=Ra<<24>>24;if((Qa|0)!=0){Na=(Na&15|0)==3?Na&-33:Na}Ra=Pa&-65537;Ka=(Pa&8192|0)==0?Pa:Ra;g:do{switch(Na|0){case 117:{F=Ja;$=Ia;aa=0;ba=1092560;Ea=90;break};case 99:{a[E>>0]=Ja;ia=Ia;fa=Ja;ja=E;la=Ra;na=1;ka=0;ma=1092560;qa=_;break};case 109:{ca=Tb(c[(Eb()|0)>>2]|0)|0;Ea=100;break};case 112:{Y=Ka|8;Z=Ma>>>0>8?Ma:8;X=120;Ea=78;break};case 88:case 120:{Y=Ka;Z=Ma;X=Na;Ea=78;break};case 111:{ya=Ja;Da=(ya|0)==0&(Ia|0)==0;if(Da){Ca=_}else{Ca=_;xa=Ia;do{Ca=Ca+-1|0;a[Ca>>0]=ya&7|48;ya=Kt(ya|0,xa|0,3)|0;xa=I}while(!((ya|0)==0&(xa|0)==0))}if((Ka&8|0)==0){xa=Ja;ya=Ia;Ba=Ka;za=Ma;Aa=0;Da=1092560;Ea=95}else{xa=Ja;ya=Ia;Ba=Ka;za=Ma;Aa=Da&1^1;Da=Da?1092560:1092565|0;Ea=95}break};case 67:{c[H>>2]=Ja;c[J>>2]=0;da=H;T=H;U=-1;Ea=105;break};case 83:{if((Ma|0)==0){ra=Ja;sa=Ja;ta=0;Ea=111}else{da=Ja;T=Ja;U=Ma;Ea=105}break};case 105:case 100:{if((Ia|0)<0){F=Ht(0,0,Ja|0,Ia|0)|0;$=I;aa=1;ba=1092560;Ea=90;break g}if((Ka&2048|0)==0){ba=Ka&1;F=Ja;$=Ia;aa=ba;ba=(ba|0)==0?1092560:1092562|0;Ea=90}else{F=Ja;$=Ia;aa=1;ba=1092561|0;Ea=90}break};case 115:{ca=(Ja|0)==0?1092576:Ja;Ea=100;break};case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{c[k>>2]=Ja;c[k+4>>2]=Ia;Za=+h[k>>3];c[K>>2]=0;if((Ia|0)>=0){if((Ka&2048|0)==0){La=Ka&1;f=La;La=(La|0)==0?1092585|0:1092590|0}else{f=1;La=1092587|0}}else{Za=-Za;f=1;La=1092584}h[k>>3]=Za;_a=c[k+4>>2]&2146435072;if(!(_a>>>0<2146435072|(_a|0)==2146435072&0<0)){Ma=(Na&32|0)!=0;if(Za!=Za|0!=0){f=0;Oa=Ma?1092624:1092632}else{Oa=Ma?1092608:1092616}Na=f+3|0;Ma=(Na|0)<(Ha|0);if((Ka&8192|0)==0&Ma){Pa=Ha-Na|0;Lt(L|0,32,(Pa>>>0>256?256:Pa)|0)|0;if(Pa>>>0>255){do{ut(L,256,e)|0;Pa=Pa+-256|0}while(Pa>>>0>255)}ut(L,Pa,e)|0}ut(La,f,e)|0;ut(Oa,3,e)|0;if((Ka&73728|0)==8192&Ma){Ka=Ha-Na|0;Lt(L|0,32,(Ka>>>0>256?256:Ka)|0)|0;if(Ka>>>0>255){do{ut(L,256,e)|0;Ka=Ka+-256|0}while(Ka>>>0>255)}ut(L,Ka,e)|0}f=Ga;Oa=Ma?Ha:Na;La=Fa;continue a}Za=+mt(Za,K)*2;Pa=Za!=0;if(Pa){c[K>>2]=(c[K>>2]|0)+-1}Ra=Na|32;if((Ra|0)==97){Pa=Na&32;La=(Pa|0)==0?La:La+9|0;f=f|2;Oa=Ma>>>0>11?0:12-Ma|0;do{if((Oa|0)!=0){$a=8;do{Oa=Oa+-1|0;$a=$a*16}while((Oa|0)!=0);if((a[La>>0]|0)==45){Za=-($a+(-Za-$a));break}else{Za=Za+$a-$a;break}}}while(0);Qa=c[K>>2]|0;Qa=(Qa|0)<0?0-Qa|0:Qa;if((Qa|0)<0){Ra=p;Oa=Qa;Qa=((Qa|0)<0)<<31>>31;while(1){_a=Xt(Oa|0,Qa|0,10,0)|0;Ra=Ra+-1|0;a[Ra>>0]=_a|48;_a=Oa;Oa=Wt(Oa|0,Qa|0,10,0)|0;if(!(Qa>>>0>9|(Qa|0)==9&_a>>>0>4294967295)){break}else{Qa=I}}}else{Ra=p;Oa=Qa}if((Oa|0)!=0){while(1){Ra=Ra+-1|0;a[Ra>>0]=(Oa>>>0)%10|0|48;if(Oa>>>0<10){break}else{Oa=(Oa>>>0)/10|0}}}if((Ra|0)==(p|0)){a[q>>0]=48;Ra=q}a[Ra+-1>>0]=(c[K>>2]>>31&2)+43;Oa=Ra+-2|0;a[Oa>>0]=Na+15;Na=(Ka&8|0)==0;if((Ma|0)>0){if(Na){Qa=r;while(1){_a=~~Za;Na=Qa+1|0;a[Qa>>0]=d[1092640+_a>>0]|Pa;Za=(Za-+(_a|0))*16;if((Na-s|0)==1){a[Na>>0]=46;Na=Qa+2|0}if(!(Za!=0)){Pa=Na;break}else{Qa=Na}}}else{Qa=r;while(1){_a=~~Za;Na=Qa+1|0;a[Qa>>0]=d[1092640+_a>>0]|Pa;Za=(Za-+(_a|0))*16;if((Na-s|0)==1){a[Na>>0]=46;Na=Qa+2|0}if(!(Za!=0)){Pa=Na;break}else{Qa=Na}}}}else{if(Na){Qa=r;do{Na=~~Za;Ra=Qa+1|0;a[Qa>>0]=d[1092640+Na>>0]|Pa;Za=(Za-+(Na|0))*16;Na=Za!=0;if((Ra-s|0)==1&Na){a[Ra>>0]=46;Qa=Qa+2|0}else{Qa=Ra}}while(Na);Pa=Qa}else{Qa=r;while(1){_a=~~Za;Na=Qa+1|0;a[Qa>>0]=d[1092640+_a>>0]|Pa;Za=(Za-+(_a|0))*16;if((Na-s|0)==1){a[Na>>0]=46;Na=Qa+2|0}if(!(Za!=0)){Pa=Na;break}else{Qa=Na}}}}do{if((Ma|0)==0){Ea=174}else{if((t+Pa|0)>=(Ma|0)){Ea=174;break}Q=u+Ma-Oa|0}}while(0);if((Ea|0)==174){Ea=0;Q=v-Oa+Pa|0}Ma=Q+f|0;Na=Ka&73728;Ka=(Ma|0)<(Ha|0);if((Na|0)==0&Ka){Qa=Ha-Ma|0;Lt(L|0,32,(Qa>>>0>256?256:Qa)|0)|0;if(Qa>>>0>255){do{ut(L,256,e)|0;Qa=Qa+-256|0}while(Qa>>>0>255)}ut(L,Qa,e)|0}ut(La,f,e)|0;if((Na|0)==65536&Ka){La=Ha-Ma|0;Lt(L|0,48,(La>>>0>256?256:La)|0)|0;if(La>>>0>255){do{ut(L,256,e)|0;La=La+-256|0}while(La>>>0>255)}ut(L,La,e)|0}f=Pa-s|0;ut(r,f,e)|0;La=w-Oa|0;f=Q-La-f|0;if((f|0)>0){Lt(L|0,48,(f>>>0>256?256:f)|0)|0;if(f>>>0>255){do{ut(L,256,e)|0;f=f+-256|0}while(f>>>0>255)}ut(L,f,e)|0}ut(Oa,La,e)|0;if((Na|0)==8192&Ka){La=Ha-Ma|0;Lt(L|0,32,(La>>>0>256?256:La)|0)|0;if(La>>>0>255){do{ut(L,256,e)|0;La=La+-256|0}while(La>>>0>255)}ut(L,La,e)|0}f=Ga;Oa=Ka?Ha:Ma;La=Fa;continue a}Oa=(Ma|0)<0?6:Ma;if(Pa){Ma=(c[K>>2]|0)+-28|0;c[K>>2]=Ma;Za=Za*268435456}else{Ma=c[K>>2]|0}Ma=(Ma|0)<0?x:y;Pa=Ma;do{_a=~~Za>>>0;c[Pa>>2]=_a;Pa=Pa+4|0;Za=(Za-+(_a>>>0))*1e9}while(Za!=0);Va=c[K>>2]|0;if((Va|0)>0){Sa=Ma;while(1){Ta=(Va|0)>29?29:Va;Ua=Pa+-4|0;do{if(Ua>>>0<Sa>>>0){Qa=Sa;Pa=(c[Ua>>2]|0)==0&Pa>>>0>Sa>>>0?Ua:Pa}else{Qa=0;Va=Ua;do{Ya=Mt(c[Va>>2]|0,0,Ta|0)|0;Ya=Jt(Ya|0,I|0,Qa|0,0)|0;_a=I;Xa=Xt(Ya|0,_a|0,1e9,0)|0;c[Va>>2]=Xa;Qa=Wt(Ya|0,_a|0,1e9,0)|0;Va=Va+-4|0}while(!(Va>>>0<Sa>>>0));Pa=(c[Ua>>2]|0)==0&Pa>>>0>Sa>>>0?Ua:Pa;if((Qa|0)==0){Qa=Sa;break}_a=Sa+-4|0;c[_a>>2]=Qa;Qa=_a}}while(0);Va=(c[K>>2]|0)-Ta|0;c[K>>2]=Va;if((Va|0)>0){Sa=Qa}else{break}}}else{Qa=Ma}h:do{if((Va|0)<0){Sa=((Oa|0)/9|0)+2|0;if((Ra|0)==102){Ua=Ma;Ta=Ma+(Sa<<2)|0;while(1){Va=0-Va|0;Va=(Va|0)>9?9:Va;do{if(Qa>>>0<Pa>>>0){_a=(1<<Va)+-1|0;Xa=1e9>>>Va;Wa=0;Ya=Qa;do{ab=c[Ya>>2]|0;c[Ya>>2]=(ab>>>Va)+Wa;Wa=ea(ab&_a,Xa)|0;Ya=Ya+4|0}while(Ya>>>0<Pa>>>0);Qa=(c[Qa>>2]|0)==0?Qa+4|0:Qa;if((Wa|0)==0){break}c[Pa>>2]=Wa;Pa=Pa+4|0}else{Qa=(c[Qa>>2]|0)==0?Qa+4|0:Qa}}while(0);Pa=(Pa-Ua>>2|0)>(Sa|0)?Ta:Pa;Va=(c[K>>2]|0)+Va|0;c[K>>2]=Va;if((Va|0)>=0){break h}}}do{Ta=0-Va|0;Ta=(Ta|0)>9?9:Ta;do{if(Qa>>>0<Pa>>>0){Va=(1<<Ta)+-1|0;Xa=1e9>>>Ta;Ua=0;Wa=Qa;do{ab=c[Wa>>2]|0;c[Wa>>2]=(ab>>>Ta)+Ua;Ua=ea(ab&Va,Xa)|0;Wa=Wa+4|0}while(Wa>>>0<Pa>>>0);Qa=(c[Qa>>2]|0)==0?Qa+4|0:Qa;if((Ua|0)==0){break}c[Pa>>2]=Ua;Pa=Pa+4|0}else{Qa=(c[Qa>>2]|0)==0?Qa+4|0:Qa}}while(0);if((Pa-Qa>>2|0)>(Sa|0)){Pa=Qa+(Sa<<2)|0}Va=(c[K>>2]|0)+Ta|0;c[K>>2]=Va}while((Va|0)<0)}}while(0);Sa=Ma;do{if(Qa>>>0<Pa>>>0){Ua=(Sa-Qa>>2)*9|0;Ta=c[Qa>>2]|0;if(Ta>>>0<10){break}else{Va=10}do{Va=Va*10|0;Ua=Ua+1|0}while(!(Ta>>>0<Va>>>0))}else{Ua=0}}while(0);Ta=(Ra|0)==103;Ra=Oa-((Ra|0)!=102?Ua:0)+((Ta&(Oa|0)!=0)<<31>>31)|0;if((Ra|0)<(((Pa-Sa>>2)*9|0)+-9|0)){Xa=Ra+9216|0;Wa=(Xa|0)/9|0;Ra=Ma+(Wa+-1023<<2)|0;Xa=((Xa|0)%9|0)+1|0;if((Xa|0)<9){Va=10;do{Va=Va*10|0;Xa=Xa+1|0}while((Xa|0)!=9)}else{Va=10}Ya=c[Ra>>2]|0;Xa=(Ya>>>0)%(Va>>>0)|0;if((Xa|0)==0?(Ma+(Wa+-1022<<2)|0)==(Pa|0):0){ua=Qa;va=Ra;wa=Ua}else{Ea=232}do{if((Ea|0)==232){Ea=0;Za=(((Ya>>>0)/(Va>>>0)|0)&1|0)==0?9007199254740992:9007199254740994;ua=(Va|0)/2|0;do{if(Xa>>>0<ua>>>0){$a=.5}else{if((Xa|0)==(ua|0)?(Ma+(Wa+-1022<<2)|0)==(Pa|0):0){$a=1;break}$a=1.5}}while(0);do{if((f|0)!=0){if((a[La>>0]|0)!=45){break}Za=Za*-1;$a=$a*-1}}while(0);ua=Ya-Xa|0;c[Ra>>2]=ua;if(!(Za+$a!=Za)){ua=Qa;va=Ra;wa=Ua;break}ab=ua+Va|0;c[Ra>>2]=ab;if(ab>>>0>999999999){while(1){va=Ra+-4|0;c[Ra>>2]=0;ab=(c[va>>2]|0)+1|0;c[va>>2]=ab;if(ab>>>0>999999999){Ra=va}else{break}}}else{va=Ra}ua=va>>>0<Qa>>>0?va:Qa;wa=(Sa-ua>>2)*9|0;Qa=c[ua>>2]|0;if(Qa>>>0<10){break}else{Ra=10}do{Ra=Ra*10|0;wa=wa+1|0}while(!(Qa>>>0<Ra>>>0))}}while(0);ab=va+4|0;Pa=Pa>>>0>ab>>>0?ab:Pa;while(1){Qa=Pa+-4|0;if((c[Qa>>2]|0)==0&Pa>>>0>ua>>>0){Pa=Qa}else{Qa=ua;Ra=wa;break}}}else{Ra=Ua}Va=0-Ra|0;do{if(Ta){Oa=((Oa|0)==0&1)+Oa|0;if((Oa|0)>(Ra|0)&(Ra|0)>-5){Na=Na+-1|0;Oa=Oa+-1-Ra|0}else{Na=Na+-2|0;Oa=Oa+-1|0}if((Ka&8|0)!=0){break}do{if(Pa>>>0>Qa>>>0){Ta=c[Pa+-4>>2]|0;if((Ta|0)==0){Wa=9;break}if(((Ta>>>0)%10|0|0)==0){Ua=10;Wa=0}else{Wa=0;break}do{Ua=Ua*10|0;Wa=Wa+1|0}while(((Ta>>>0)%(Ua>>>0)|0|0)==0)}else{Wa=9}}while(0);Sa=((Pa-Sa>>2)*9|0)+-9|0;if((Na|32|0)==102){ab=Sa-Wa|0;ab=(ab|0)<0?0:ab;Oa=(Oa|0)<(ab|0)?Oa:ab;break}else{ab=Sa+Ra-Wa|0;ab=(ab|0)<0?0:ab;Oa=(Oa|0)<(ab|0)?Oa:ab;break}}}while(0);Ta=(Oa|0)!=0;if(Ta){Sa=1}else{Sa=(Ka&8|0)!=0}Sa=Sa&1;Ua=(Na|32|0)==102;if(Ua){Na=(Ra|0)>0?Ra:0;Va=0}else{Xa=(Ra|0)<0?Va:Ra;if((Xa|0)<0){Wa=p;Va=Xa;Xa=((Xa|0)<0)<<31>>31;while(1){ab=Xt(Va|0,Xa|0,10,0)|0;Wa=Wa+-1|0;a[Wa>>0]=ab|48;ab=Va;Va=Wt(Va|0,Xa|0,10,0)|0;if(!(Xa>>>0>9|(Xa|0)==9&ab>>>0>4294967295)){break}else{Xa=I}}}else{Wa=p;Va=Xa}if((Va|0)!=0){while(1){Wa=Wa+-1|0;a[Wa>>0]=(Va>>>0)%10|0|48;if(Va>>>0<10){break}else{Va=(Va>>>0)/10|0}}}if((w-Wa|0)<2){do{Wa=Wa+-1|0;a[Wa>>0]=48}while((w-Wa|0)<2)}a[Wa+-1>>0]=(Ra>>31&2)+43;Va=Wa+-2|0;a[Va>>0]=Na;Na=w-Va|0}Ra=f+1+Oa+Sa+Na|0;Sa=Ka&73728;Na=(Ra|0)<(Ha|0);if((Sa|0)==0&Na){Wa=Ha-Ra|0;Lt(L|0,32,(Wa>>>0>256?256:Wa)|0)|0;if(Wa>>>0>255){do{ut(L,256,e)|0;Wa=Wa+-256|0}while(Wa>>>0>255)}ut(L,Wa,e)|0}ut(La,f,e)|0;if((Sa|0)==65536&Na){La=Ha-Ra|0;Lt(L|0,48,(La>>>0>256?256:La)|0)|0;if(La>>>0>255){do{ut(L,256,e)|0;La=La+-256|0}while(La>>>0>255)}ut(L,La,e)|0}do{if(Ua){f=Qa>>>0>Ma>>>0?Ma:Qa;La=f;do{Ua=c[La>>2]|0;if((Ua|0)==0){Qa=z}else{Qa=z;while(1){Qa=Qa+-1|0;a[Qa>>0]=(Ua>>>0)%10|0|48;if(Ua>>>0<10){break}else{Ua=(Ua>>>0)/10|0}}}do{if((La|0)==(f|0)){if((Qa|0)!=(z|0)){break}a[B>>0]=48;Qa=B}else{if(!(Qa>>>0>r>>>0)){break}do{Qa=Qa+-1|0;a[Qa>>0]=48}while(Qa>>>0>r>>>0)}}while(0);ut(Qa,A-Qa|0,e)|0;La=La+4|0}while(!(La>>>0>Ma>>>0));if(!Ta?(Ka&8|0)==0:0){break}ut(1092656,1,e)|0;if(La>>>0<Pa>>>0&(Oa|0)>0){do{Ma=c[La>>2]|0;if((Ma|0)!=0){Ka=z;while(1){Ka=Ka+-1|0;a[Ka>>0]=(Ma>>>0)%10|0|48;if(Ma>>>0<10){break}else{Ma=(Ma>>>0)/10|0}}if(Ka>>>0>r>>>0){V=Ka;Ea=295}else{ga=Ka}}else{V=z;Ea=295}if((Ea|0)==295){while(1){Ea=0;ga=V+-1|0;a[ga>>0]=48;if(ga>>>0>r>>>0){V=ga}else{break}}}ut(ga,(Oa|0)>9?9:Oa,e)|0;La=La+4|0;Oa=Oa+-9|0}while(La>>>0<Pa>>>0&(Oa|0)>0)}if((Oa|0)<=0){break}Lt(L|0,48,(Oa>>>0>256?256:Oa)|0)|0;if(Oa>>>0>255){do{ut(L,256,e)|0;Oa=Oa+-256|0}while(Oa>>>0>255)}ut(L,Oa,e)|0}else{La=Pa>>>0>Qa>>>0?Pa:Qa+4|0;do{if((Oa|0)>-1){Ka=(Ka&8|0)!=0;Ma=Qa;do{Pa=c[Ma>>2]|0;if((Pa|0)!=0){f=z;while(1){f=f+-1|0;a[f>>0]=(Pa>>>0)%10|0|48;if(Pa>>>0<10){break}else{Pa=(Pa>>>0)/10|0}}if((f|0)!=(z|0)){W=f}else{Ea=306}}else{Ea=306}if((Ea|0)==306){Ea=0;a[B>>0]=48;W=B}do{if((Ma|0)==(Qa|0)){f=W+1|0;ut(W,1,e)|0;if(!((Oa|0)>0|Ka)){break}ut(1092656,1,e)|0}else{if(W>>>0>r>>>0){f=W}else{f=W;break}do{f=f+-1|0;a[f>>0]=48}while(f>>>0>r>>>0)}}while(0);ab=A-f|0;ut(f,(ab|0)<(Oa|0)?ab:Oa,e)|0;Oa=Oa-ab|0;Ma=Ma+4|0}while(Ma>>>0<La>>>0&(Oa|0)>-1);if((Oa|0)<=0){break}Lt(L|0,48,(Oa>>>0>256?256:Oa)|0)|0;if(Oa>>>0>255){do{ut(L,256,e)|0;Oa=Oa+-256|0}while(Oa>>>0>255)}ut(L,Oa,e)|0}}while(0);ut(Va,w-Va|0,e)|0}}while(0);if((Sa|0)==8192&Na){Ka=Ha-Ra|0;Lt(L|0,32,(Ka>>>0>256?256:Ka)|0)|0;if(Ka>>>0>255){do{ut(L,256,e)|0;Ka=Ka+-256|0}while(Ka>>>0>255)}ut(L,Ka,e)|0}f=Ga;Oa=Na?Ha:Ra;La=Fa;continue a};case 110:{switch(Qa|0){case 7:{f=Ja;c[f>>2]=pa;c[f+4>>2]=((pa|0)<0)<<31>>31;f=Ga;La=Fa;continue a};case 4:{a[Ja>>0]=pa;f=Ga;La=Fa;continue a};case 0:{c[Ja>>2]=pa;f=Ga;La=Fa;continue a};case 3:{b[Ja>>1]=pa;f=Ga;La=Fa;continue a};case 2:{f=Ja;c[f>>2]=pa;c[f+4>>2]=((pa|0)<0)<<31>>31;f=Ga;La=Fa;continue a};case 1:{c[Ja>>2]=pa;f=Ga;La=Fa;continue a};case 6:{c[Ja>>2]=pa;f=Ga;La=Fa;continue a};default:{f=Ga;La=Fa;continue a}}};default:{ia=Ia;fa=Ja;ja=f;la=Ka;na=Ma;ka=0;ma=1092560;qa=_}}}while(0);i:do{if((Ea|0)==78){za=Ja;xa=X&32;if(!((za|0)==0&(Ia|0)==0)){Ca=_;ya=Ia;do{Ca=Ca+-1|0;a[Ca>>0]=d[1092640+(za&15)>>0]|xa;za=Kt(za|0,ya|0,4)|0;ya=I}while(!((za|0)==0&(ya|0)==0));if((Y&8|0)==0){xa=Ja;ya=Ia;Ba=Y;za=Z;Aa=0;Da=1092560;Ea=95}else{xa=Ja;ya=Ia;Ba=Y;za=Z;Aa=2;Da=1092560+(X>>4)|0;Ea=95}}else{xa=Ja;ya=Ia;Ca=_;Ba=Y;za=Z;Aa=0;Da=1092560;Ea=95}}else if((Ea|0)==90){xa=F;if($>>>0>0|($|0)==0&xa>>>0>4294967295){Ca=_;ya=$;while(1){ab=Xt(xa|0,ya|0,10,0)|0;Ca=Ca+-1|0;a[Ca>>0]=ab|48;ab=xa;xa=Wt(xa|0,ya|0,10,0)|0;if(!(ya>>>0>9|(ya|0)==9&ab>>>0>4294967295)){break}else{ya=I}}}else{Ca=_}if((xa|0)==0){xa=F;ya=$;Ba=Ka;za=Ma;Aa=aa;Da=ba;Ea=95}else{while(1){Ca=Ca+-1|0;a[Ca>>0]=(xa>>>0)%10|0|48;if(xa>>>0<10){xa=F;ya=$;Ba=Ka;za=Ma;Aa=aa;Da=ba;Ea=95;break}else{xa=(xa>>>0)/10|0}}}}else if((Ea|0)==100){Ea=0;qa=Et(ca,0,Ma)|0;if((qa|0)==0){ia=Ia;fa=Ja;ja=ca;la=Ra;na=Ma;ka=0;ma=1092560;qa=ca+Ma|0;break}else{ia=Ia;fa=Ja;ja=ca;la=Ra;na=qa-ca|0;ka=0;ma=1092560;break}}else if((Ea|0)==105){ta=0;sa=0;ra=da;while(1){Ea=c[ra>>2]|0;if((Ea|0)==0){break}sa=pt(C,Ea)|0;if(!((sa|0)>-1)){m=-1;Ea=357;break a}Ea=sa+ta|0;if(sa>>>0>(U-ta|0)>>>0){ra=da;sa=T;Ea=111;break i}if(Ea>>>0<U>>>0){ta=Ea;ra=ra+4|0}else{ta=Ea;break}}if((sa|0)<0){m=-1;Ea=357;break a}else{ra=da;sa=T;Ea=111}}}while(0);if((Ea|0)==95){Ea=0;la=(za|0)>-1?Ba&-65537:Ba;fa=(xa|0)==0&(ya|0)==0;if(fa&(za|0)==0){ia=ya;fa=xa;ja=_;na=0;ka=Aa;ma=Da;qa=_}else{na=(fa&1)+(D-Ca)|0;ia=ya;fa=xa;ja=Ca;na=(za|0)>(na|0)?za:na;ka=Aa;ma=Da;qa=_}}else if((Ea|0)==111){Ea=0;Ja=Ka&73728;Ka=(ta|0)<(Ha|0);if((Ja|0)==0&Ka){La=Ha-ta|0;Lt(L|0,32,(La>>>0>256?256:La)|0)|0;if(La>>>0>255){do{ut(L,256,e)|0;La=La+-256|0}while(La>>>0>255)}ut(L,La,e)|0}j:do{if((ta|0)!=0){La=0;Ma=ra;while(1){f=c[Ma>>2]|0;if((f|0)==0){break j}f=pt(C,f)|0;La=f+La|0;if((La|0)>(ta|0)){break j}ut(C,f,e)|0;if(!(La>>>0<ta>>>0)){break}else{Ma=Ma+4|0}}}}while(0);if((Ja|0)==8192&Ka){Ja=Ha-ta|0;Lt(L|0,32,(Ja>>>0>256?256:Ja)|0)|0;if(Ja>>>0>255){do{ut(L,256,e)|0;Ja=Ja+-256|0}while(Ja>>>0>255)}ut(L,Ja,e)|0}Ja=sa;f=Ga;Oa=Ka?Ha:ta;La=Fa;continue}Ia=qa-ja|0;La=(na|0)<(Ia|0)?Ia:na;Ja=ka+La|0;Oa=(Ha|0)<(Ja|0)?Ja:Ha;Ha=la&73728;Ka=(Ja|0)<(Oa|0);if((Ha|0)==0&Ka){Ma=Oa-Ja|0;Lt(L|0,32,(Ma>>>0>256?256:Ma)|0)|0;if(Ma>>>0>255){do{ut(L,256,e)|0;Ma=Ma+-256|0}while(Ma>>>0>255)}ut(L,Ma,e)|0}ut(ma,ka,e)|0;if((Ha|0)==65536&Ka){Ma=Oa-Ja|0;Lt(L|0,48,(Ma>>>0>256?256:Ma)|0)|0;if(Ma>>>0>255){do{ut(L,256,e)|0;Ma=Ma+-256|0}while(Ma>>>0>255)}ut(L,Ma,e)|0}if((Ia|0)<(La|0)){La=La-Ia|0;Lt(L|0,48,(La>>>0>256?256:La)|0)|0;if(La>>>0>255){do{ut(L,256,e)|0;La=La+-256|0}while(La>>>0>255)}ut(L,La,e)|0}ut(ja,Ia,e)|0;if(!((Ha|0)==8192&Ka)){Ia=ia;Ja=fa;f=Ga;La=Fa;continue}Ha=Oa-Ja|0;Lt(L|0,32,(Ha>>>0>256?256:Ha)|0)|0;if(Ha>>>0>255){do{ut(L,256,e)|0;Ha=Ha+-256|0}while(Ha>>>0>255)}ut(L,Ha,e)|0;Ia=ia;Ja=fa;f=Ga;La=Fa}if((Ea|0)==339){if((e|0)!=0){ab=pa;i=n;return ab|0}if((La|0)==0){ab=0;i=n;return ab|0}else{p=1}while(1){q=c[l+(p<<2)>>2]|0;if((q|0)==0){o=p;break}r=j+(p<<3)|0;k:do{if(!(q>>>0>20)){do{switch(q|0){case 10:{ab=c[g>>2]|0;_a=c[ab>>2]|0;c[g>>2]=ab+4;ab=r;c[ab>>2]=_a;c[ab+4>>2]=((_a|0)<0)<<31>>31;break k};case 11:{ab=c[g>>2]|0;_a=c[ab>>2]|0;c[g>>2]=ab+4;ab=r;c[ab>>2]=_a;c[ab+4>>2]=0;break k};case 12:{ab=c[g>>2]|0;_a=ab;Ya=c[_a>>2]|0;_a=c[_a+4>>2]|0;c[g>>2]=ab+8;ab=r;c[ab>>2]=Ya;c[ab+4>>2]=_a;break k};case 13:{ab=c[g>>2]|0;_a=c[ab>>2]|0;c[g>>2]=ab+4;_a=(_a&65535)<<16>>16;ab=r;c[ab>>2]=_a;c[ab+4>>2]=((_a|0)<0)<<31>>31;break k};case 14:{ab=c[g>>2]|0;_a=c[ab>>2]|0;c[g>>2]=ab+4;ab=r;c[ab>>2]=_a&65535;c[ab+4>>2]=0;break k};case 15:{ab=c[g>>2]|0;_a=c[ab>>2]|0;c[g>>2]=ab+4;_a=(_a&255)<<24>>24;ab=r;c[ab>>2]=_a;c[ab+4>>2]=((_a|0)<0)<<31>>31;break k};case 16:{ab=c[g>>2]|0;_a=c[ab>>2]|0;c[g>>2]=ab+4;ab=r;c[ab>>2]=_a&255;c[ab+4>>2]=0;break k};case 17:{ab=c[g>>2]|0;c[k>>2]=c[ab>>2];c[k+4>>2]=c[ab+4>>2];$a=+h[k>>3];c[g>>2]=ab+8;h[r>>3]=$a;break k};case 18:{ab=c[g>>2]|0;c[k>>2]=c[ab>>2];c[k+4>>2]=c[ab+4>>2];$a=+h[k>>3];c[g>>2]=ab+8;h[r>>3]=$a;break k};case 9:{_a=c[g>>2]|0;ab=c[_a>>2]|0;c[g>>2]=_a+4;c[r>>2]=ab;break k};default:{break k}}}while(0)}}while(0);p=p+1|0;if((p|0)>=10){m=1;Ea=357;break}}if((Ea|0)==357){i=n;return m|0}while(1){if((c[l+(o<<2)>>2]|0)!=0){m=-1;Ea=357;break}o=o+1|0;if((o|0)>=10){m=1;Ea=357;break}}if((Ea|0)==357){i=n;return m|0}}else if((Ea|0)==357){i=n;return m|0}return 0}function yt(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;g=i;i=i+128|0;m=g+112|0;h=g;k=h+0|0;j=1092664|0;l=k+112|0;do{c[k>>2]=c[j>>2];k=k+4|0;j=j+4|0}while((k|0)<(l|0));if((d+-1|0)>>>0>2147483646){if((d|0)==0){d=1}else{c[(Eb()|0)>>2]=75;b=-1;i=g;return b|0}}else{m=b}b=-2-m|0;b=d>>>0>b>>>0?b:d;c[h+48>>2]=b;d=h+20|0;c[d>>2]=m;c[h+44>>2]=m;m=m+b|0;j=h+16|0;c[j>>2]=m;c[h+28>>2]=m;h=wt(h,e,f)|0;if((b|0)==0){b=h;i=g;return b|0}b=c[d>>2]|0;a[b+(((b|0)==(c[j>>2]|0))<<31>>31)>>0]=0;b=h;i=g;return b|0}function zt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;f=a+20|0;g=c[f>>2]|0;a=(c[a+16>>2]|0)-g|0;a=a>>>0>d>>>0?d:a;Nt(g|0,b|0,a|0)|0;c[f>>2]=(c[f>>2]|0)+a;i=e;return d|0}function At(b){b=b|0;var c=0,d=0,e=0,f=0,g=0;c=i;while(1){f=b+1|0;if((dt(a[b>>0]|0)|0)==0){break}else{b=f}}e=a[b>>0]|0;g=e<<24>>24;if((g|0)==45){e=1;d=5}else if((g|0)==43){e=0;d=5}else{f=e;e=0}if((d|0)==5){b=f;f=a[f>>0]|0}if((ct(f<<24>>24)|0)==0){b=0;f=(e|0)!=0;g=0-b|0;g=f?b:g;i=c;return g|0}else{d=0}do{d=(d*10|0)+48-(a[b>>0]|0)|0;b=b+1|0}while((ct(a[b>>0]|0)|0)!=0);b=(e|0)!=0;g=0-d|0;g=b?d:g;i=c;return g|0}function Bt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;d=i;i=i+112|0;e=d;h=e+0|0;g=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(g|0));g=e+4|0;c[g>>2]=a;h=e+8|0;c[h>>2]=-1;c[e+44>>2]=a;c[e+76>>2]=-1;jt(e,0);f=+ht(e,2,1);e=(c[g>>2]|0)-(c[h>>2]|0)+(c[e+108>>2]|0)|0;if((b|0)==0){i=d;return+f}if((e|0)!=0){a=a+e|0}c[b>>2]=a;i=d;return+f}function Ct(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+112|0;g=e;c[g>>2]=0;f=g+4|0;c[f>>2]=a;c[g+44>>2]=a;if((a|0)<0){c[g+8>>2]=-1}else{c[g+8>>2]=a+2147483647}c[g+76>>2]=-1;
+jt(g,0);d=gt(g,d,1,-1,-1)|0;h=I;if((b|0)==0){I=h;i=e;return d|0}c[b>>2]=a+((c[f>>2]|0)+(c[g+108>>2]|0)-(c[g+8>>2]|0));I=h;i=e;return d|0}function Dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+112|0;g=e;c[g>>2]=0;f=g+4|0;c[f>>2]=a;c[g+44>>2]=a;if((a|0)<0){c[g+8>>2]=-1}else{c[g+8>>2]=a+2147483647}c[g+76>>2]=-1;jt(g,0);d=gt(g,d,1,0,-2147483648)|0;h=I;if((b|0)==0){I=h;i=e;return d|0}c[b>>2]=a+((c[f>>2]|0)+(c[g+108>>2]|0)-(c[g+8>>2]|0));I=h;i=e;return d|0}function Et(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;g=d&255;j=(e|0)==0;a:do{if((b&3|0)==0|j){h=5}else{h=d&255;while(1){if((a[b>>0]|0)==h<<24>>24){h=6;break a}b=b+1|0;e=e+-1|0;j=(e|0)==0;if((b&3|0)==0|j){h=5;break}}}}while(0);if((h|0)==5){if(j){e=0}else{h=6}}b:do{if((h|0)==6){d=d&255;if(!((a[b>>0]|0)==d<<24>>24)){g=ea(g,16843009)|0;c:do{if(e>>>0>3){do{j=c[b>>2]^g;if(((j&-2139062144^-2139062144)&j+-16843009|0)!=0){break c}b=b+4|0;e=e+-4|0}while(e>>>0>3)}}while(0);if((e|0)==0){e=0}else{while(1){if((a[b>>0]|0)==d<<24>>24){break b}b=b+1|0;e=e+-1|0;if((e|0)==0){e=0;break}}}}}}while(0);i=f;return((e|0)!=0?b:0)|0}function Ft(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=i;a:do{if((d|0)==0){d=0}else{while(1){f=a[b>>0]|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24)){break}d=d+-1|0;if((d|0)==0){d=0;break a}else{b=b+1|0;c=c+1|0}}d=(f&255)-(g&255)|0}}while(0);i=e;return d|0}function Gt(){c[269920]=o;c[269962]=o;c[272704]=o;c[272936]=o}function Ht(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;b=b-d-(c>>>0>a>>>0|0)>>>0;return(I=b,a-c>>>0|0)|0}function It(b){b=b|0;var c=0;c=b;while(a[c>>0]|0){c=c+1|0}return c-b|0}function Jt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return(I=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function Kt(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}I=0;return b>>>c-32|0}function Lt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;i=b&3;h=d|d<<8|d<<16|d<<24;g=f&~3;if(i){i=b+4-i|0;while((b|0)<(i|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=h;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function Mt(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}I=a<<c-32;return 0}function Nt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return gb(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if((e|0)==0)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function Ot(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else{Nt(b,c,d)|0}return b|0}function Pt(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}I=(b|0)<0?-1:0;return b>>c-32|0}function Qt(b){b=b|0;var c=0;c=a[n+(b>>>24)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+16|0;return(a[n+(b&255)>>0]|0)+24|0}function Rt(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return(a[m+(b>>>24)>>0]|0)+24|0}function St(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;d=b&65535;c=ea(d,f)|0;e=a>>>16;d=(c>>>16)+(ea(d,e)|0)|0;b=b>>>16;a=ea(b,f)|0;return(I=(d>>>16)+(ea(b,e)|0)+(((d&65535)+a|0)>>>16)|0,d+a<<16|c&65535|0)|0}function Tt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=Ht(j^a,i^b,j,i)|0;g=I;b=f^j;a=e^i;a=Ht((Yt(h,g,Ht(f^c,e^d,f,e)|0,I,0)|0)^b,I^a,b,a)|0;return a|0}function Ut(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+8|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;b=Ht(h^a,g^b,h,g)|0;a=I;Yt(b,a,Ht(l^d,k^e,l,k)|0,I,j)|0;a=Ht(c[j>>2]^h,c[j+4>>2]^g,h,g)|0;b=I;i=f;return(I=b,a)|0}function Vt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;a=St(e,f)|0;c=I;return(I=(ea(b,f)|0)+(ea(d,e)|0)+c|c&0,a|0|0)|0}function Wt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=Yt(a,b,c,d,0)|0;return a|0}function Xt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+8|0;f=g|0;Yt(a,b,d,e,f)|0;i=g;return(I=c[f+4>>2]|0,c[f>>2]|0)|0}function Yt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=a;j=b;i=j;l=d;g=e;k=g;if((i|0)==0){g=(f|0)!=0;if((k|0)==0){if(g){c[f>>2]=(h>>>0)%(l>>>0);c[f+4>>2]=0}k=0;m=(h>>>0)/(l>>>0)>>>0;return(I=k,m)|0}else{if(!g){l=0;m=0;return(I=l,m)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;l=0;m=0;return(I=l,m)|0}}m=(k|0)==0;do{if((l|0)!=0){if(!m){k=(Qt(k|0)|0)-(Qt(i|0)|0)|0;if(k>>>0<=31){m=k+1|0;l=31-k|0;a=k-31>>31;j=m;b=h>>>(m>>>0)&a|i<<l;a=i>>>(m>>>0)&a;k=0;l=h<<l;break}if((f|0)==0){l=0;m=0;return(I=l,m)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;l=0;m=0;return(I=l,m)|0}k=l-1|0;if((k&l|0)!=0){l=(Qt(l|0)|0)+33-(Qt(i|0)|0)|0;p=64-l|0;m=32-l|0;n=m>>31;o=l-32|0;a=o>>31;j=l;b=m-1>>31&i>>>(o>>>0)|(i<<m|h>>>(l>>>0))&a;a=a&i>>>(l>>>0);k=h<<p&n;l=(i<<p|h>>>(o>>>0))&n|h<<m&l-33>>31;break}if((f|0)!=0){c[f>>2]=k&h;c[f+4>>2]=0}if((l|0)==1){o=j|b&0;p=a|0|0;return(I=o,p)|0}else{p=Rt(l|0)|0;o=i>>>(p>>>0)|0;p=i<<32-p|h>>>(p>>>0)|0;return(I=o,p)|0}}else{if(m){if((f|0)!=0){c[f>>2]=(i>>>0)%(l>>>0);c[f+4>>2]=0}o=0;p=(i>>>0)/(l>>>0)>>>0;return(I=o,p)|0}if((h|0)==0){if((f|0)!=0){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(k>>>0)}o=0;p=(i>>>0)/(k>>>0)>>>0;return(I=o,p)|0}l=k-1|0;if((l&k|0)==0){if((f|0)!=0){c[f>>2]=a|0;c[f+4>>2]=l&i|b&0}o=0;p=i>>>((Rt(k|0)|0)>>>0);return(I=o,p)|0}k=(Qt(k|0)|0)-(Qt(i|0)|0)|0;if(k>>>0<=30){a=k+1|0;l=31-k|0;j=a;b=i<<l|h>>>(a>>>0);a=i>>>(a>>>0);k=0;l=h<<l;break}if((f|0)==0){o=0;p=0;return(I=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return(I=o,p)|0}}while(0);if((j|0)==0){g=l;e=0;i=0}else{h=d|0|0;g=g|e&0;e=Jt(h,g,-1,-1)|0;d=I;i=0;do{m=l;l=k>>>31|l<<1;k=i|k<<1;m=b<<1|m>>>31|0;n=b>>>31|a<<1|0;Ht(e,d,m,n)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;b=Ht(m,n,o&h,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&g)|0;a=I;j=j-1|0}while((j|0)!=0);g=l;e=0}h=0;if((f|0)!=0){c[f>>2]=b;c[f+4>>2]=a}o=(k|0)>>>31|(g|h)<<1|(h<<1|k>>>31)&0|e;p=(k<<1|0>>>31)&-2|i;return(I=o,p)|0}function Zt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ac[a&31](b|0,c|0,d|0)|0}function _t(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;bc[a&63](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function $t(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;cc[a&3](b|0,c|0,d|0,e|0,f|0)}function au(a,b){a=a|0;b=b|0;dc[a&255](b|0)}function bu(a,b,c){a=a|0;b=b|0;c=c|0;ec[a&63](b|0,c|0)}function cu(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;fc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function du(a,b){a=a|0;b=b|0;return gc[a&127](b|0)|0}function eu(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;hc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function fu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ic[a&3](b|0,c|0,d|0)}function gu(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;jc[a&7](b|0,c|0,d|0,e|0,f|0,+g)}function hu(a){a=a|0;kc[a&1]()}function iu(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return lc[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function ju(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return mc[a&7](b|0,c|0,d|0,e|0)|0}function ku(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;nc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function lu(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;oc[a&31](b|0,c|0,d|0,e|0,f|0,g|0)}function mu(a,b,c){a=a|0;b=b|0;c=c|0;return pc[a&63](b|0,c|0)|0}function nu(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 qc[a&15](b|0,c|0,d|0,e|0,f|0)|0}function ou(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;rc[a&15](b|0,c|0,d|0,e|0)}function pu(a,b,c){a=a|0;b=b|0;c=c|0;fa(0);return 0}function qu(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;fa(1)}function ru(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;fa(2)}function su(a){a=a|0;fa(3)}function tu(a,b){a=a|0;b=b|0;fa(4)}function uu(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;fa(5)}function vu(a){a=a|0;fa(6);return 0}function wu(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;fa(7)}function xu(a,b,c){a=a|0;b=b|0;c=c|0;fa(8)}function yu(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;fa(9)}function zu(){fa(10)}function Au(){La()}function Bu(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;fa(11);return 0}function Cu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fa(12);return 0}function Du(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;fa(13)}function Eu(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;fa(14)}function Fu(a,b){a=a|0;b=b|0;fa(15);return 0}function Gu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;fa(16);return 0}function Hu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fa(17)}var ac=[pu,Rc,Lk,Pk,Gk,Uk,Zk,cj,bl,qj,Rj,Sj,Rl,Wl,zp,Ep,kq,mq,pq,Xp,aq,cq,fq,Es,zt,gd,hd,os,pu,pu,pu,pu];var bc=[qu,Zl,$l,bm,dm,fm,hm,jm,lm,nm,pm,rm,wm,ym,Am,Cm,Em,Gm,Im,Km,Mm,Om,Qm,cn,en,rn,tn,Cn,Dn,En,Fn,Gn,Pn,Qn,Rn,Sn,Tn,qp,wp,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu,qu];var cc=[ru,Ls,Ks,Js];var dc=[su,Gc,Kc,Lc,Mc,el,dl,gl,fl,Nc,Pc,Qd,Rd,Td,Ud,Wd,Xd,Zd,_d,ae,be,de,ee,ge,he,je,ke,ne,oe,qe,re,te,ue,we,xe,ze,Ae,Ce,De,Fe,Ge,Ie,Je,Se,Ve,Te,We,Ue,Xe,Ye,Ze,tf,vf,rf,xf,pf,zf,nf,Bf,lf,Df,Pf,Rf,Qf,Sf,ql,pl,sl,rl,Of,Tf,Lg,bh,ch,dh,Jg,eh,fh,gh,xh,yh,vh,Jh,Kh,rh,$h,_h,ai,qi,ri,ii,si,ti,hi,_i,$i,fj,gj,mj,nj,tj,uj,Gj,Fj,Lj,Kj,Nj,Oj,Xj,Wj,Ak,zk,Ek,Dk,Sk,Rk,ll,kl,nl,ml,Bl,Al,Dl,Cl,Jl,Il,yk,Kl,Hl,Ll,Nl,Ml,Up,Tl,Sl,Yl,Xl,vm,um,Zm,Ym,mn,ln,An,zn,Nn,Mn,Zn,Yn,ao,$n,fo,eo,qo,po,Bo,Ao,Mo,Lo,Xo,Wo,fp,ep,mp,lp,sp,rp,yp,xp,Dp,Cp,Mp,Lp,iq,hq,Hp,zq,er,dr,gr,fr,Ol,Tp,Wp,rq,Hq,Sq,br,cr,ws,vs,ys,Bs,zs,As,Cs,Ds,$s,_s,kf,mf,of,qf,sf,Nf,ck,ld,ph,Lh,ih,jh,kh,di,wi,Hi,Ji,Ki,Li,Mi,Gi,Zi,Vp,Or,Zo,Qs,Vr,Ur,Tr,Sr,Rr,Qr,qk,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su,su];var ec=[tu,Qc,Fk,aj,hj,oj,vj,Tk,io,jo,ko,lo,no,oo,to,uo,vo,wo,yo,zo,Eo,Fo,Go,Ho,Jo,Ko,Po,Qo,Ro,So,Uo,Vo,Bp,Gp,lr,nr,pr,mr,or,qr,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu,tu];var fc=[uu,Hn,Un,uu];var gc=[vu,Uc,Kk,Vc,Nk,Sd,Vd,Yd,$d,ce,fe,ie,le,pe,se,ve,ye,Be,Ee,He,Ke,Jk,af,wf,yf,Af,Cf,Ef,Uf,Vf,Wf,bj,Yk,_k,$k,Xk,ij,jj,pj,Mk,wj,xj,Hj,Mj,Fl,Bn,rr,tr,vr,Br,Dr,xr,zr,On,sr,ur,wr,Cr,Er,yr,Ar,go,ho,mo,ro,so,xo,Co,Do,Io,No,Oo,To,Dq,Eq,Gq,hr,jr,ir,kr,vq,wq,yq,Nq,Oq,Rq,Yq,Zq,ar,xs,at,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu,vu];var hc=[wu,np,tp,wu];var ic=[xu,Qj,Gl,xu];var jc=[yu,fn,jn,un,wn,yu,yu,yu];var kc=[zu,Au];var lc=[Bu,Aq,Bq,sq,tq,Iq,Kq,Tq,Vq,Bu,Bu,Bu,Bu,Bu,Bu,Bu];var mc=[Cu,oq,Yp,Zp,_p,eq,Cu,Cu];var nc=[Du,_n,bo,Yo,ap,gp,ip,Du];var oc=[Eu,Sc,_e,Hk,Vk,_m,$m,dn,kn,nn,on,sn,xn,Ap,Fp,Os,Ns,Ms,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu,Eu];var pc=[Fu,Wc,Xc,Gd,Jd,Kd,Id,Fd,Ed,Md,Ld,Ad,zd,yd,xd,wd,ud,Bd,vd,bf,cf,Nd,Hd,Dd,Cd,td,Ok,Xf,al,dj,kj,cl,rj,yj,Qk,jq,lq,nq,$p,bq,dq,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu,Fu];var qc=[Gu,Pl,Ul,qq,Cq,Fq,gq,uq,xq,Mq,Pq,Xq,_q,Gu,Gu,Gu];var rc=[Hu,Tc,$e,Ik,Wk,Ql,Vl,Fs,Gs,Hs,Hu,Hu,Hu,Hu,Hu,Hu];return{_i64Subtract:Ht,_free:Qs,_realloc:Ss,_i64Add:Jt,_memmove:Ot,_uci_command:hf,_init:gf,_strlen:It,_memset:Lt,_malloc:Ps,_set_book:jf,_memcpy:Nt,_bitshift64Lshr:Kt,_calloc:Rs,_bitshift64Shl:Mt,__GLOBAL__I_a:ff,__GLOBAL__I_a58:Ff,__GLOBAL__I_a78:Yf,__GLOBAL__I_a159:hh,__GLOBAL__I_a208:ci,__GLOBAL__I_a230:ui,__GLOBAL__I_a252:Bi,__GLOBAL__I_a304:Fi,__GLOBAL__I_a362:Wi,__GLOBAL__I_a457:Aj,runPostSets:Gt,stackAlloc:sc,stackSave:tc,stackRestore:uc,setThrew:vc,setTempRet0:yc,getTempRet0:zc,dynCall_iiii:Zt,dynCall_viiiiiii:_t,dynCall_viiiii:$t,dynCall_vi:au,dynCall_vii:bu,dynCall_viiiiiiiii:cu,dynCall_ii:du,dynCall_viiiiiid:eu,dynCall_viii:fu,dynCall_viiiiid:gu,dynCall_v:hu,dynCall_iiiiiiiii:iu,dynCall_iiiii:ju,dynCall_viiiiiiii:ku,dynCall_viiiiii:lu,dynCall_iii:mu,dynCall_iiiiii:nu,dynCall_viiii:ou}}({Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array},{abort:abort,assert:assert,asmPrintInt:asmPrintInt,asmPrintFloat:asmPrintFloat,min:Math_min,invoke_iiii:invoke_iiii,invoke_viiiiiii:invoke_viiiiiii,invoke_viiiii:invoke_viiiii,invoke_vi:invoke_vi,invoke_vii:invoke_vii,invoke_viiiiiiiii:invoke_viiiiiiiii,invoke_ii:invoke_ii,invoke_viiiiiid:invoke_viiiiiid,invoke_viii:invoke_viii,invoke_viiiiid:invoke_viiiiid,invoke_v:invoke_v,invoke_iiiiiiiii:invoke_iiiiiiiii,invoke_iiiii:invoke_iiiii,invoke_viiiiiiii:invoke_viiiiiiii,invoke_viiiiii:invoke_viiiiii,invoke_iii:invoke_iii,invoke_iiiiii:invoke_iiiiii,invoke_viiii:invoke_viiii,_fabs:_fabs,_pthread_cond_wait:_pthread_cond_wait,_exp:_exp,_llvm_pow_f64:_llvm_pow_f64,_send:_send,_fread:_fread,___ctype_b_loc:___ctype_b_loc,__ZSt9terminatev:__ZSt9terminatev,_fmod:_fmod,___cxa_pure_virtual:___cxa_pure_virtual,___cxa_guard_acquire:___cxa_guard_acquire,_lseek:_lseek,_open:_open,___cxa_is_number_type:___cxa_is_number_type,_ungetc:_ungetc,_catopen:_catopen,___cxa_atexit:___cxa_atexit,___cxa_allocate_exception:___cxa_allocate_exception,__ZSt18uncaught_exceptionv:__ZSt18uncaught_exceptionv,___ctype_toupper_loc:___ctype_toupper_loc,_fflush:_fflush,___cxa_guard_release:___cxa_guard_release,__addDays:__addDays,_pwrite:_pwrite,_strerror_r:_strerror_r,_strftime_l:_strftime_l,___setErrNo:___setErrNo,_sbrk:_sbrk,_uselocale:_uselocale,_catgets:_catgets,_newlocale:_newlocale,___cxa_begin_catch:___cxa_begin_catch,_emscripten_memcpy_big:_emscripten_memcpy_big,_fileno:_fileno,___resumeException:___resumeException,___cxa_find_matching_catch:___cxa_find_matching_catch,_sysconf:_sysconf,__reallyNegative:__reallyNegative,_close:_close,_strftime:_strftime,__arraySum:__arraySum,_fseeko:_fseeko,_read:_read,___ctype_tolower_loc:___ctype_tolower_loc,_fseek:_fseek,_pthread_mutex_unlock:_pthread_mutex_unlock,_time:_time,_pread:_pread,_ftell:_ftell,_mkport:_mkport,_fclose:_fclose,_log:_log,_getc:_getc,_write:_write,__isLeapYear:__isLeapYear,_fsync:_fsync,___errno_location:___errno_location,_recv:_recv,__ZNSt9exceptionD2Ev:__ZNSt9exceptionD2Ev,_fgetc:_fgetc,_copysign:_copysign,___cxa_does_inherit:___cxa_does_inherit,_freelocale:_freelocale,_pthread_cond_broadcast:_pthread_cond_broadcast,_copysignl:_copysignl,__exit:__exit,_abort:_abort,_catclose:_catclose,_fwrite:_fwrite,___cxa_throw:___cxa_throw,_pthread_mutex_lock:_pthread_mutex_lock,_strerror:_strerror,_ftello:_ftello,_atexit:_atexit,_fopen:_fopen,_exit:_exit,_gettimeofday:_gettimeofday,_emscripten_async_call:_emscripten_async_call,_fmodl:_fmodl,STACKTOP:STACKTOP,STACK_MAX:STACK_MAX,tempDoublePtr:tempDoublePtr,ABORT:ABORT,cttz_i8:cttz_i8,ctlz_i8:ctlz_i8,NaN:NaN,Infinity:Infinity,__ZTISt9exception:__ZTISt9exception,___dso_handle:___dso_handle,_stderr:_stderr,_stdin:_stdin,_stdout:_stdout},buffer);var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _free=Module["_free"]=asm["_free"];var _realloc=Module["_realloc"]=asm["_realloc"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _memmove=Module["_memmove"]=asm["_memmove"];var _uci_command=Module["_uci_command"]=asm["_uci_command"];var _init=Module["_init"]=asm["_init"];var _strlen=Module["_strlen"]=asm["_strlen"];var _memset=Module["_memset"]=asm["_memset"];var _malloc=Module["_malloc"]=asm["_malloc"];var _set_book=Module["_set_book"]=asm["_set_book"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _calloc=Module["_calloc"]=asm["_calloc"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var __GLOBAL__I_a=Module["__GLOBAL__I_a"]=asm["__GLOBAL__I_a"];var __GLOBAL__I_a58=Module["__GLOBAL__I_a58"]=asm["__GLOBAL__I_a58"];var __GLOBAL__I_a78=Module["__GLOBAL__I_a78"]=asm["__GLOBAL__I_a78"];var __GLOBAL__I_a159=Module["__GLOBAL__I_a159"]=asm["__GLOBAL__I_a159"];var __GLOBAL__I_a208=Module["__GLOBAL__I_a208"]=asm["__GLOBAL__I_a208"];var __GLOBAL__I_a230=Module["__GLOBAL__I_a230"]=asm["__GLOBAL__I_a230"];var __GLOBAL__I_a252=Module["__GLOBAL__I_a252"]=asm["__GLOBAL__I_a252"];var __GLOBAL__I_a304=Module["__GLOBAL__I_a304"]=asm["__GLOBAL__I_a304"];var __GLOBAL__I_a362=Module["__GLOBAL__I_a362"]=asm["__GLOBAL__I_a362"];var __GLOBAL__I_a457=Module["__GLOBAL__I_a457"]=asm["__GLOBAL__I_a457"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];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_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_viiiiiid=Module["dynCall_viiiiiid"]=asm["dynCall_viiiiiid"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiiiid=Module["dynCall_viiiiid"]=asm["dynCall_viiiiid"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];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.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];var i64Math=function(){var goog={math:{}};goog.math.Long=function(low,high){this.low_=low|0;this.high_=high|0};goog.math.Long.IntCache_={};goog.math.Long.fromInt=function(value){if(-128<=value&&value<128){var cachedObj=goog.math.Long.IntCache_[value];if(cachedObj){return cachedObj}}var obj=new goog.math.Long(value|0,value<0?-1:0);if(-128<=value&&value<128){goog.math.Long.IntCache_[value]=obj}return obj};goog.math.Long.fromNumber=function(value){if(isNaN(value)||!isFinite(value)){return goog.math.Long.ZERO}else if(value<=-goog.math.Long.TWO_PWR_63_DBL_){return goog.math.Long.MIN_VALUE}else if(value+1>=goog.math.Long.TWO_PWR_63_DBL_){return goog.math.Long.MAX_VALUE}else if(value<0){return goog.math.Long.fromNumber(-value).negate()}else{return new goog.math.Long(value%goog.math.Long.TWO_PWR_32_DBL_|0,value/goog.math.Long.TWO_PWR_32_DBL_|0)}};goog.math.Long.fromBits=function(lowBits,highBits){return new goog.math.Long(lowBits,highBits)};goog.math.Long.fromString=function(str,opt_radix){if(str.length==0){throw Error("number format error: empty string")}var radix=opt_radix||10;if(radix<2||36<radix){throw Error("radix out of range: "+radix)}if(str.charAt(0)=="-"){return goog.math.Long.fromString(str.substring(1),radix).negate()}else if(str.indexOf("-")>=0){throw Error('number format error: interior "-" character: '+str)}var radixToPower=goog.math.Long.fromNumber(Math.pow(radix,8));var result=goog.math.Long.ZERO;for(var i=0;i<str.length;i+=8){var size=Math.min(8,str.length-i);var value=parseInt(str.substring(i,i+size),radix);if(size<8){var power=goog.math.Long.fromNumber(Math.pow(radix,size));result=result.multiply(power).add(goog.math.Long.fromNumber(value))}else{result=result.multiply(radixToPower);result=result.add(goog.math.Long.fromNumber(value))}}return result};goog.math.Long.TWO_PWR_16_DBL_=1<<16;goog.math.Long.TWO_PWR_24_DBL_=1<<24;goog.math.Long.TWO_PWR_32_DBL_=goog.math.Long.TWO_PWR_16_DBL_*goog.math.Long.TWO_PWR_16_DBL_;goog.math.Long.TWO_PWR_31_DBL_=goog.math.Long.TWO_PWR_32_DBL_/2;goog.math.Long.TWO_PWR_48_DBL_=goog.math.Long.TWO_PWR_32_DBL_*goog.math.Long.TWO_PWR_16_DBL_;goog.math.Long.TWO_PWR_64_DBL_=goog.math.Long.TWO_PWR_32_DBL_*goog.math.Long.TWO_PWR_32_DBL_;goog.math.Long.TWO_PWR_63_DBL_=goog.math.Long.TWO_PWR_64_DBL_/2;goog.math.Long.ZERO=goog.math.Long.fromInt(0);goog.math.Long.ONE=goog.math.Long.fromInt(1);goog.math.Long.NEG_ONE=goog.math.Long.fromInt(-1);goog.math.Long.MAX_VALUE=goog.math.Long.fromBits(4294967295|0,2147483647|0);goog.math.Long.MIN_VALUE=goog.math.Long.fromBits(0,2147483648|0);goog.math.Long.TWO_PWR_24_=goog.math.Long.fromInt(1<<24);goog.math.Long.prototype.toInt=function(){return this.low_};goog.math.Long.prototype.toNumber=function(){return this.high_*goog.math.Long.TWO_PWR_32_DBL_+this.getLowBitsUnsigned()};goog.math.Long.prototype.toString=function(opt_radix){var radix=opt_radix||10;if(radix<2||36<radix){throw Error("radix out of range: "+radix)}if(this.isZero()){return"0"}if(this.isNegative()){if(this.equals(goog.math.Long.MIN_VALUE)){var radixLong=goog.math.Long.fromNumber(radix);var div=this.div(radixLong);var rem=div.multiply(radixLong).subtract(this);return div.toString(radix)+rem.toInt().toString(radix)}else{return"-"+this.negate().toString(radix)}}var radixToPower=goog.math.Long.fromNumber(Math.pow(radix,6));var rem=this;var result="";while(true){var remDiv=rem.div(radixToPower);var intval=rem.subtract(remDiv.multiply(radixToPower)).toInt();var digits=intval.toString(radix);rem=remDiv;if(rem.isZero()){return digits+result}else{while(digits.length<6){digits="0"+digits}result=""+digits+result}}};goog.math.Long.prototype.getHighBits=function(){return this.high_};goog.math.Long.prototype.getLowBits=function(){return this.low_};goog.math.Long.prototype.getLowBitsUnsigned=function(){return this.low_>=0?this.low_:goog.math.Long.TWO_PWR_32_DBL_+this.low_};goog.math.Long.prototype.getNumBitsAbs=function(){if(this.isNegative()){if(this.equals(goog.math.Long.MIN_VALUE)){return 64}else{return this.negate().getNumBitsAbs()}}else{var val=this.high_!=0?this.high_:this.low_;for(var bit=31;bit>0;bit--){if((val&1<<bit)!=0){break}}return this.high_!=0?bit+33:bit+1}};goog.math.Long.prototype.isZero=function(){return this.high_==0&&this.low_==0};goog.math.Long.prototype.isNegative=function(){return this.high_<0};goog.math.Long.prototype.isOdd=function(){return(this.low_&1)==1};goog.math.Long.prototype.equals=function(other){return this.high_==other.high_&&this.low_==other.low_};goog.math.Long.prototype.notEquals=function(other){return this.high_!=other.high_||this.low_!=other.low_};goog.math.Long.prototype.lessThan=function(other){return this.compare(other)<0};goog.math.Long.prototype.lessThanOrEqual=function(other){return this.compare(other)<=0};goog.math.Long.prototype.greaterThan=function(other){return this.compare(other)>0};goog.math.Long.prototype.greaterThanOrEqual=function(other){return this.compare(other)>=0};goog.math.Long.prototype.compare=function(other){if(this.equals(other)){return 0}var thisNeg=this.isNegative();var otherNeg=other.isNegative();if(thisNeg&&!otherNeg){return-1}if(!thisNeg&&otherNeg){return 1}if(this.subtract(other).isNegative()){return-1}else{return 1}};goog.math.Long.prototype.negate=function(){if(this.equals(goog.math.Long.MIN_VALUE)){return goog.math.Long.MIN_VALUE}else{return this.not().add(goog.math.Long.ONE)}};goog.math.Long.prototype.add=function(other){var a48=this.high_>>>16;var a32=this.high_&65535;var a16=this.low_>>>16;var a00=this.low_&65535;var b48=other.high_>>>16;var b32=other.high_&65535;var b16=other.low_>>>16;var b00=other.low_&65535;var c48=0,c32=0,c16=0,c00=0;c00+=a00+b00;c16+=c00>>>16;c00&=65535;c16+=a16+b16;c32+=c16>>>16;c16&=65535;c32+=a32+b32;c48+=c32>>>16;c32&=65535;c48+=a48+b48;c48&=65535;return goog.math.Long.fromBits(c16<<16|c00,c48<<16|c32)};goog.math.Long.prototype.subtract=function(other){return this.add(other.negate())};goog.math.Long.prototype.multiply=function(other){if(this.isZero()){return goog.math.Long.ZERO}else if(other.isZero()){return goog.math.Long.ZERO}if(this.equals(goog.math.Long.MIN_VALUE)){return other.isOdd()?goog.math.Long.MIN_VALUE:goog.math.Long.ZERO}else if(other.equals(goog.math.Long.MIN_VALUE)){return this.isOdd()?goog.math.Long.MIN_VALUE:goog.math.Long.ZERO}if(this.isNegative()){if(other.isNegative()){return this.negate().multiply(other.negate())}else{return this.negate().multiply(other).negate()}}else if(other.isNegative()){return this.multiply(other.negate()).negate()}if(this.lessThan(goog.math.Long.TWO_PWR_24_)&&other.lessThan(goog.math.Long.TWO_PWR_24_)){return goog.math.Long.fromNumber(this.toNumber()*other.toNumber())}var a48=this.high_>>>16;var a32=this.high_&65535;var a16=this.low_>>>16;var a00=this.low_&65535;var b48=other.high_>>>16;var b32=other.high_&65535;var b16=other.low_>>>16;var b00=other.low_&65535;var c48=0,c32=0,c16=0,c00=0;c00+=a00*b00;c16+=c00>>>16;c00&=65535;c16+=a16*b00;c32+=c16>>>16;c16&=65535;c16+=a00*b16;c32+=c16>>>16;c16&=65535;c32+=a32*b00;c48+=c32>>>16;c32&=65535;c32+=a16*b16;c48+=c32>>>16;c32&=65535;c32+=a00*b32;c48+=c32>>>16;c32&=65535;c48+=a48*b00+a32*b16+a16*b32+a00*b48;c48&=65535;return goog.math.Long.fromBits(c16<<16|c00,c48<<16|c32)};goog.math.Long.prototype.div=function(other){if(other.isZero()){throw Error("division by zero")}else if(this.isZero()){return goog.math.Long.ZERO}if(this.equals(goog.math.Long.MIN_VALUE)){if(other.equals(goog.math.Long.ONE)||other.equals(goog.math.Long.NEG_ONE)){return goog.math.Long.MIN_VALUE}else if(other.equals(goog.math.Long.MIN_VALUE)){return goog.math.Long.ONE}else{var halfThis=this.shiftRight(1);var approx=halfThis.div(other).shiftLeft(1);if(approx.equals(goog.math.Long.ZERO)){return other.isNegative()?goog.math.Long.ONE:goog.math.Long.NEG_ONE}else{var rem=this.subtract(other.multiply(approx));var result=approx.add(rem.div(other));return result}}}else if(other.equals(goog.math.Long.MIN_VALUE)){return goog.math.Long.ZERO}if(this.isNegative()){if(other.isNegative()){return this.negate().div(other.negate())}else{return this.negate().div(other).negate()}}else if(other.isNegative()){return this.div(other.negate()).negate()}var res=goog.math.Long.ZERO;var rem=this;while(rem.greaterThanOrEqual(other)){var approx=Math.max(1,Math.floor(rem.toNumber()/other.toNumber()));var log2=Math.ceil(Math.log(approx)/Math.LN2);var delta=log2<=48?1:Math.pow(2,log2-48);var approxRes=goog.math.Long.fromNumber(approx);var approxRem=approxRes.multiply(other);while(approxRem.isNegative()||approxRem.greaterThan(rem)){approx-=delta;approxRes=goog.math.Long.fromNumber(approx);approxRem=approxRes.multiply(other)}if(approxRes.isZero()){approxRes=goog.math.Long.ONE}res=res.add(approxRes);rem=rem.subtract(approxRem)}return res};goog.math.Long.prototype.modulo=function(other){return this.subtract(this.div(other).multiply(other))};goog.math.Long.prototype.not=function(){return goog.math.Long.fromBits(~this.low_,~this.high_)};goog.math.Long.prototype.and=function(other){return goog.math.Long.fromBits(this.low_&other.low_,this.high_&other.high_)};goog.math.Long.prototype.or=function(other){return goog.math.Long.fromBits(this.low_|other.low_,this.high_|other.high_)};goog.math.Long.prototype.xor=function(other){return goog.math.Long.fromBits(this.low_^other.low_,this.high_^other.high_)};goog.math.Long.prototype.shiftLeft=function(numBits){numBits&=63;if(numBits==0){return this}else{var low=this.low_;if(numBits<32){var high=this.high_;return goog.math.Long.fromBits(low<<numBits,high<<numBits|low>>>32-numBits)}else{return goog.math.Long.fromBits(0,low<<numBits-32)}}};goog.math.Long.prototype.shiftRight=function(numBits){numBits&=63;if(numBits==0){return this}else{var high=this.high_;if(numBits<32){var low=this.low_;return goog.math.Long.fromBits(low>>>numBits|high<<32-numBits,high>>numBits)}else{return goog.math.Long.fromBits(high>>numBits-32,high>=0?0:-1)}}};goog.math.Long.prototype.shiftRightUnsigned=function(numBits){numBits&=63;if(numBits==0){return this}else{var high=this.high_;if(numBits<32){var low=this.low_;return goog.math.Long.fromBits(low>>>numBits|high<<32-numBits,high>>>numBits)}else if(numBits==32){return goog.math.Long.fromBits(high,0)}else{return goog.math.Long.fromBits(high>>>numBits-32,0)}}};var navigator={appName:"Modern Browser"};var dbits;var canary=0xdeadbeefcafe;var j_lm=(canary&16777215)==15715070;function BigInteger(a,b,c){if(a!=null)if("number"==typeof a)this.fromNumber(a,b,c);else if(b==null&&"string"!=typeof a)this.fromString(a,256);else this.fromString(a,b)}function nbi(){return new BigInteger(null)}function am1(i,x,w,j,c,n){while(--n>=0){var v=x*this[i++]+w[j]+c;c=Math.floor(v/67108864);w[j++]=v&67108863}return c}function am2(i,x,w,j,c,n){var xl=x&32767,xh=x>>15;while(--n>=0){var l=this[i]&32767;var h=this[i++]>>15;var m=xh*l+h*xl;l=xl*l+((m&32767)<<15)+w[j]+(c&1073741823);c=(l>>>30)+(m>>>15)+xh*h+(c>>>30);w[j++]=l&1073741823}return c}function am3(i,x,w,j,c,n){var xl=x&16383,xh=x>>14;while(--n>=0){var l=this[i]&16383;var h=this[i++]>>14;var m=xh*l+h*xl;l=xl*l+((m&16383)<<14)+w[j]+c;c=(l>>28)+(m>>14)+xh*h;w[j++]=l&268435455}return c}if(j_lm&&navigator.appName=="Microsoft Internet Explorer"){BigInteger.prototype.am=am2;dbits=30}else if(j_lm&&navigator.appName!="Netscape"){BigInteger.prototype.am=am1;dbits=26}else{BigInteger.prototype.am=am3;dbits=28}BigInteger.prototype.DB=dbits;BigInteger.prototype.DM=(1<<dbits)-1;BigInteger.prototype.DV=1<<dbits;var BI_FP=52;BigInteger.prototype.FV=Math.pow(2,BI_FP);BigInteger.prototype.F1=BI_FP-dbits;BigInteger.prototype.F2=2*dbits-BI_FP;var BI_RM="0123456789abcdefghijklmnopqrstuvwxyz";var BI_RC=new Array;var rr,vv;rr="0".charCodeAt(0);for(vv=0;vv<=9;++vv)BI_RC[rr++]=vv;rr="a".charCodeAt(0);for(vv=10;vv<36;++vv)BI_RC[rr++]=vv;rr="A".charCodeAt(0);for(vv=10;vv<36;++vv)BI_RC[rr++]=vv;function int2char(n){return BI_RM.charAt(n)}function intAt(s,i){var c=BI_RC[s.charCodeAt(i)];return c==null?-1:c}function bnpCopyTo(r){for(var i=this.t-1;i>=0;--i)r[i]=this[i];r.t=this.t;r.s=this.s}function bnpFromInt(x){this.t=1;this.s=x<0?-1:0;if(x>0)this[0]=x;else if(x<-1)this[0]=x+DV;else this.t=0}function nbv(i){var r=nbi();r.fromInt(i);return r}function bnpFromString(s,b){var k;if(b==16)k=4;else if(b==8)k=3;else if(b==256)k=8;else if(b==2)k=1;else if(b==32)k=5;else if(b==4)k=2;else{this.fromRadix(s,b);return}this.t=0;this.s=0;var i=s.length,mi=false,sh=0;while(--i>=0){var x=k==8?s[i]&255:intAt(s,i);if(x<0){if(s.charAt(i)=="-")mi=true;continue}mi=false;if(sh==0)this[this.t++]=x;else if(sh+k>this.DB){this[this.t-1]|=(x&(1<<this.DB-sh)-1)<<sh;this[this.t++]=x>>this.DB-sh}else this[this.t-1]|=x<<sh;sh+=k;if(sh>=this.DB)sh-=this.DB}if(k==8&&(s[0]&128)!=0){this.s=-1;if(sh>0)this[this.t-1]|=(1<<this.DB-sh)-1<<sh}this.clamp();if(mi)BigInteger.ZERO.subTo(this,this)}function bnpClamp(){var c=this.s&this.DM;while(this.t>0&&this[this.t-1]==c)--this.t}function bnToString(b){if(this.s<0)return"-"+this.negate().toString(b);var k;if(b==16)k=4;else if(b==8)k=3;else if(b==2)k=1;else if(b==32)k=5;else if(b==4)k=2;else return this.toRadix(b);var km=(1<<k)-1,d,m=false,r="",i=this.t;var p=this.DB-i*this.DB%k;if(i-->0){if(p<this.DB&&(d=this[i]>>p)>0){m=true;r=int2char(d)}while(i>=0){if(p<k){d=(this[i]&(1<<p)-1)<<k-p;d|=this[--i]>>(p+=this.DB-k)}else{d=this[i]>>(p-=k)&km;if(p<=0){p+=this.DB;--i}}if(d>0)m=true;if(m)r+=int2char(d)}}return m?r:"0"}function bnNegate(){var r=nbi();BigInteger.ZERO.subTo(this,r);return r}function bnAbs(){return this.s<0?this.negate():this}function bnCompareTo(a){var r=this.s-a.s;if(r!=0)return r;var i=this.t;r=i-a.t;if(r!=0)return this.s<0?-r:r;while(--i>=0)if((r=this[i]-a[i])!=0)return r;return 0}function nbits(x){var r=1,t;if((t=x>>>16)!=0){x=t;r+=16}if((t=x>>8)!=0){x=t;r+=8}if((t=x>>4)!=0){x=t;r+=4}if((t=x>>2)!=0){x=t;r+=2}if((t=x>>1)!=0){x=t;r+=1}return r}function bnBitLength(){if(this.t<=0)return 0;return this.DB*(this.t-1)+nbits(this[this.t-1]^this.s&this.DM)}function bnpDLShiftTo(n,r){var i;for(i=this.t-1;i>=0;--i)r[i+n]=this[i];for(i=n-1;i>=0;--i)r[i]=0;r.t=this.t+n;r.s=this.s}function bnpDRShiftTo(n,r){for(var i=n;i<this.t;++i)r[i-n]=this[i];r.t=Math.max(this.t-n,0);r.s=this.s}function bnpLShiftTo(n,r){var bs=n%this.DB;
+var cbs=this.DB-bs;var bm=(1<<cbs)-1;var ds=Math.floor(n/this.DB),c=this.s<<bs&this.DM,i;for(i=this.t-1;i>=0;--i){r[i+ds+1]=this[i]>>cbs|c;c=(this[i]&bm)<<bs}for(i=ds-1;i>=0;--i)r[i]=0;r[ds]=c;r.t=this.t+ds+1;r.s=this.s;r.clamp()}function bnpRShiftTo(n,r){r.s=this.s;var ds=Math.floor(n/this.DB);if(ds>=this.t){r.t=0;return}var bs=n%this.DB;var cbs=this.DB-bs;var bm=(1<<bs)-1;r[0]=this[ds]>>bs;for(var i=ds+1;i<this.t;++i){r[i-ds-1]|=(this[i]&bm)<<cbs;r[i-ds]=this[i]>>bs}if(bs>0)r[this.t-ds-1]|=(this.s&bm)<<cbs;r.t=this.t-ds;r.clamp()}function bnpSubTo(a,r){var i=0,c=0,m=Math.min(a.t,this.t);while(i<m){c+=this[i]-a[i];r[i++]=c&this.DM;c>>=this.DB}if(a.t<this.t){c-=a.s;while(i<this.t){c+=this[i];r[i++]=c&this.DM;c>>=this.DB}c+=this.s}else{c+=this.s;while(i<a.t){c-=a[i];r[i++]=c&this.DM;c>>=this.DB}c-=a.s}r.s=c<0?-1:0;if(c<-1)r[i++]=this.DV+c;else if(c>0)r[i++]=c;r.t=i;r.clamp()}function bnpMultiplyTo(a,r){var x=this.abs(),y=a.abs();var i=x.t;r.t=i+y.t;while(--i>=0)r[i]=0;for(i=0;i<y.t;++i)r[i+x.t]=x.am(0,y[i],r,i,0,x.t);r.s=0;r.clamp();if(this.s!=a.s)BigInteger.ZERO.subTo(r,r)}function bnpSquareTo(r){var x=this.abs();var i=r.t=2*x.t;while(--i>=0)r[i]=0;for(i=0;i<x.t-1;++i){var c=x.am(i,x[i],r,2*i,0,1);if((r[i+x.t]+=x.am(i+1,2*x[i],r,2*i+1,c,x.t-i-1))>=x.DV){r[i+x.t]-=x.DV;r[i+x.t+1]=1}}if(r.t>0)r[r.t-1]+=x.am(i,x[i],r,2*i,0,1);r.s=0;r.clamp()}function bnpDivRemTo(m,q,r){var pm=m.abs();if(pm.t<=0)return;var pt=this.abs();if(pt.t<pm.t){if(q!=null)q.fromInt(0);if(r!=null)this.copyTo(r);return}if(r==null)r=nbi();var y=nbi(),ts=this.s,ms=m.s;var nsh=this.DB-nbits(pm[pm.t-1]);if(nsh>0){pm.lShiftTo(nsh,y);pt.lShiftTo(nsh,r)}else{pm.copyTo(y);pt.copyTo(r)}var ys=y.t;var y0=y[ys-1];if(y0==0)return;var yt=y0*(1<<this.F1)+(ys>1?y[ys-2]>>this.F2:0);var d1=this.FV/yt,d2=(1<<this.F1)/yt,e=1<<this.F2;var i=r.t,j=i-ys,t=q==null?nbi():q;y.dlShiftTo(j,t);if(r.compareTo(t)>=0){r[r.t++]=1;r.subTo(t,r)}BigInteger.ONE.dlShiftTo(ys,t);t.subTo(y,y);while(y.t<ys)y[y.t++]=0;while(--j>=0){var qd=r[--i]==y0?this.DM:Math.floor(r[i]*d1+(r[i-1]+e)*d2);if((r[i]+=y.am(0,qd,r,j,0,ys))<qd){y.dlShiftTo(j,t);r.subTo(t,r);while(r[i]<--qd)r.subTo(t,r)}}if(q!=null){r.drShiftTo(ys,q);if(ts!=ms)BigInteger.ZERO.subTo(q,q)}r.t=ys;r.clamp();if(nsh>0)r.rShiftTo(nsh,r);if(ts<0)BigInteger.ZERO.subTo(r,r)}function bnMod(a){var r=nbi();this.abs().divRemTo(a,null,r);if(this.s<0&&r.compareTo(BigInteger.ZERO)>0)a.subTo(r,r);return r}function Classic(m){this.m=m}function cConvert(x){if(x.s<0||x.compareTo(this.m)>=0)return x.mod(this.m);else return x}function cRevert(x){return x}function cReduce(x){x.divRemTo(this.m,null,x)}function cMulTo(x,y,r){x.multiplyTo(y,r);this.reduce(r)}function cSqrTo(x,r){x.squareTo(r);this.reduce(r)}Classic.prototype.convert=cConvert;Classic.prototype.revert=cRevert;Classic.prototype.reduce=cReduce;Classic.prototype.mulTo=cMulTo;Classic.prototype.sqrTo=cSqrTo;function bnpInvDigit(){if(this.t<1)return 0;var x=this[0];if((x&1)==0)return 0;var y=x&3;y=y*(2-(x&15)*y)&15;y=y*(2-(x&255)*y)&255;y=y*(2-((x&65535)*y&65535))&65535;y=y*(2-x*y%this.DV)%this.DV;return y>0?this.DV-y:-y}function Montgomery(m){this.m=m;this.mp=m.invDigit();this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<<m.DB-15)-1;this.mt2=2*m.t}function montConvert(x){var r=nbi();x.abs().dlShiftTo(this.m.t,r);r.divRemTo(this.m,null,r);if(x.s<0&&r.compareTo(BigInteger.ZERO)>0)this.m.subTo(r,r);return r}function montRevert(x){var r=nbi();x.copyTo(r);this.reduce(r);return r}function montReduce(x){while(x.t<=this.mt2)x[x.t++]=0;for(var i=0;i<this.m.t;++i){var j=x[i]&32767;var u0=j*this.mpl+((j*this.mph+(x[i]>>15)*this.mpl&this.um)<<15)&x.DM;j=i+this.m.t;x[j]+=this.m.am(0,u0,x,i,0,this.m.t);while(x[j]>=x.DV){x[j]-=x.DV;x[++j]++}}x.clamp();x.drShiftTo(this.m.t,x);if(x.compareTo(this.m)>=0)x.subTo(this.m,x)}function montSqrTo(x,r){x.squareTo(r);this.reduce(r)}function montMulTo(x,y,r){x.multiplyTo(y,r);this.reduce(r)}Montgomery.prototype.convert=montConvert;Montgomery.prototype.revert=montRevert;Montgomery.prototype.reduce=montReduce;Montgomery.prototype.mulTo=montMulTo;Montgomery.prototype.sqrTo=montSqrTo;function bnpIsEven(){return(this.t>0?this[0]&1:this.s)==0}function bnpExp(e,z){if(e>4294967295||e<1)return BigInteger.ONE;var r=nbi(),r2=nbi(),g=z.convert(this),i=nbits(e)-1;g.copyTo(r);while(--i>=0){z.sqrTo(r,r2);if((e&1<<i)>0)z.mulTo(r2,g,r);else{var t=r;r=r2;r2=t}}return z.revert(r)}function bnModPowInt(e,m){var z;if(e<256||m.isEven())z=new Classic(m);else z=new Montgomery(m);return this.exp(e,z)}BigInteger.prototype.copyTo=bnpCopyTo;BigInteger.prototype.fromInt=bnpFromInt;BigInteger.prototype.fromString=bnpFromString;BigInteger.prototype.clamp=bnpClamp;BigInteger.prototype.dlShiftTo=bnpDLShiftTo;BigInteger.prototype.drShiftTo=bnpDRShiftTo;BigInteger.prototype.lShiftTo=bnpLShiftTo;BigInteger.prototype.rShiftTo=bnpRShiftTo;BigInteger.prototype.subTo=bnpSubTo;BigInteger.prototype.multiplyTo=bnpMultiplyTo;BigInteger.prototype.squareTo=bnpSquareTo;BigInteger.prototype.divRemTo=bnpDivRemTo;BigInteger.prototype.invDigit=bnpInvDigit;BigInteger.prototype.isEven=bnpIsEven;BigInteger.prototype.exp=bnpExp;BigInteger.prototype.toString=bnToString;BigInteger.prototype.negate=bnNegate;BigInteger.prototype.abs=bnAbs;BigInteger.prototype.compareTo=bnCompareTo;BigInteger.prototype.bitLength=bnBitLength;BigInteger.prototype.mod=bnMod;BigInteger.prototype.modPowInt=bnModPowInt;BigInteger.ZERO=nbv(0);BigInteger.ONE=nbv(1);function bnpFromRadix(s,b){this.fromInt(0);if(b==null)b=10;var cs=this.chunkSize(b);var d=Math.pow(b,cs),mi=false,j=0,w=0;for(var i=0;i<s.length;++i){var x=intAt(s,i);if(x<0){if(s.charAt(i)=="-"&&this.signum()==0)mi=true;continue}w=b*w+x;if(++j>=cs){this.dMultiply(d);this.dAddOffset(w,0);j=0;w=0}}if(j>0){this.dMultiply(Math.pow(b,j));this.dAddOffset(w,0)}if(mi)BigInteger.ZERO.subTo(this,this)}function bnpChunkSize(r){return Math.floor(Math.LN2*this.DB/Math.log(r))}function bnSigNum(){if(this.s<0)return-1;else if(this.t<=0||this.t==1&&this[0]<=0)return 0;else return 1}function bnpDMultiply(n){this[this.t]=this.am(0,n-1,this,0,0,this.t);++this.t;this.clamp()}function bnpDAddOffset(n,w){if(n==0)return;while(this.t<=w)this[this.t++]=0;this[w]+=n;while(this[w]>=this.DV){this[w]-=this.DV;if(++w>=this.t)this[this.t++]=0;++this[w]}}function bnpToRadix(b){if(b==null)b=10;if(this.signum()==0||b<2||b>36)return"0";var cs=this.chunkSize(b);var a=Math.pow(b,cs);var d=nbv(a),y=nbi(),z=nbi(),r="";this.divRemTo(d,y,z);while(y.signum()>0){r=(a+z.intValue()).toString(b).substr(1)+r;y.divRemTo(d,y,z)}return z.intValue().toString(b)+r}function bnIntValue(){if(this.s<0){if(this.t==1)return this[0]-this.DV;else if(this.t==0)return-1}else if(this.t==1)return this[0];else if(this.t==0)return 0;return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]}function bnpAddTo(a,r){var i=0,c=0,m=Math.min(a.t,this.t);while(i<m){c+=this[i]+a[i];r[i++]=c&this.DM;c>>=this.DB}if(a.t<this.t){c+=a.s;while(i<this.t){c+=this[i];r[i++]=c&this.DM;c>>=this.DB}c+=this.s}else{c+=this.s;while(i<a.t){c+=a[i];r[i++]=c&this.DM;c>>=this.DB}c+=a.s}r.s=c<0?-1:0;if(c>0)r[i++]=c;else if(c<-1)r[i++]=this.DV+c;r.t=i;r.clamp()}BigInteger.prototype.fromRadix=bnpFromRadix;BigInteger.prototype.chunkSize=bnpChunkSize;BigInteger.prototype.signum=bnSigNum;BigInteger.prototype.dMultiply=bnpDMultiply;BigInteger.prototype.dAddOffset=bnpDAddOffset;BigInteger.prototype.toRadix=bnpToRadix;BigInteger.prototype.intValue=bnIntValue;BigInteger.prototype.addTo=bnpAddTo;var Wrapper={abs:function(l,h){var x=new goog.math.Long(l,h);var ret;if(x.isNegative()){ret=x.negate()}else{ret=x}HEAP32[tempDoublePtr>>2]=ret.low_;HEAP32[tempDoublePtr+4>>2]=ret.high_},ensureTemps:function(){if(Wrapper.ensuredTemps)return;Wrapper.ensuredTemps=true;Wrapper.two32=new BigInteger;Wrapper.two32.fromString("4294967296",10);Wrapper.two64=new BigInteger;Wrapper.two64.fromString("18446744073709551616",10);Wrapper.temp1=new BigInteger;Wrapper.temp2=new BigInteger},lh2bignum:function(l,h){var a=new BigInteger;a.fromString(h.toString(),10);var b=new BigInteger;a.multiplyTo(Wrapper.two32,b);var c=new BigInteger;c.fromString(l.toString(),10);var d=new BigInteger;c.addTo(b,d);return d},stringify:function(l,h,unsigned){var ret=new goog.math.Long(l,h).toString();if(unsigned&&ret[0]=="-"){Wrapper.ensureTemps();var bignum=new BigInteger;bignum.fromString(ret,10);ret=new BigInteger;Wrapper.two64.addTo(bignum,ret);ret=ret.toString(10)}return ret},fromString:function(str,base,min,max,unsigned){Wrapper.ensureTemps();var bignum=new BigInteger;bignum.fromString(str,base);var bigmin=new BigInteger;bigmin.fromString(min,10);var bigmax=new BigInteger;bigmax.fromString(max,10);if(unsigned&&bignum.compareTo(BigInteger.ZERO)<0){var temp=new BigInteger;bignum.addTo(Wrapper.two64,temp);bignum=temp}var error=false;if(bignum.compareTo(bigmin)<0){bignum=bigmin;error=true}else if(bignum.compareTo(bigmax)>0){bignum=bigmax;error=true}var ret=goog.math.Long.fromString(bignum.toString());HEAP32[tempDoublePtr>>2]=ret.low_;HEAP32[tempDoublePtr+4>>2]=ret.high_;if(error)throw"range error"}};return Wrapper}();if(memoryInitializer){if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,STATIC_BASE)}else{addRunDependency("memory initializer");Browser.asyncLoad(memoryInitializer,function(data){HEAPU8.set(data,STATIC_BASE);removeRunDependency("memory initializer")},function(data){throw"could not load memory initializer "+memoryInitializer})}}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"]&&shouldRunNow)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("/bin/this.program"),"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);initialStackTop=STACKTOP;try{var ret=Module["_main"](argc,argv,0);if(!Module["noExitRuntime"]){exit(ret)}}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){Module.printErr("run() called, but dependencies remain, so not running");return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;ensureInitRuntime();preMain();if(ENVIRONMENT_IS_WEB&&preloadStartTime!==null){Module.printErr("pre-main prep time: "+(Date.now()-preloadStartTime)+" ms")}if(Module["_main"]&&shouldRunNow){Module["callMain"](args)}postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);if(!ABORT)doRun()},1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status){ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;function abort(text){if(text){Module.print(text);Module.printErr(text)}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";throw"abort() at "+stackTrace()+extra}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();
\ No newline at end of file